From 4b8dd57a4792204ebc01a54423bf8ca999c24dca Mon Sep 17 00:00:00 2001 From: Jamie Falla Date: Fri, 6 Feb 2026 16:17:56 +0000 Subject: [PATCH] Add PyInstaller Hook to Collect Binaries --- setup.py | 6 ++++++ src/onepassword/pyinstaller_hooks/__init__.py | 5 +++++ src/onepassword/pyinstaller_hooks/hook-onepassword.py | 3 +++ 3 files changed, 14 insertions(+) create mode 100644 src/onepassword/pyinstaller_hooks/__init__.py create mode 100644 src/onepassword/pyinstaller_hooks/hook-onepassword.py diff --git a/setup.py b/setup.py index 9e4a7b7a..542f7d95 100644 --- a/setup.py +++ b/setup.py @@ -60,6 +60,11 @@ def get_shared_library_data_to_include(): license_files="LICENSE", package_dir={"": "src"}, python_requires=">=3.9", + entry_points={ + "pyinstaller40": [ + "hook-dirs = onepassword.pyinstaller_hooks:get_hook_dirs", + ], + }, classifiers=[ "Development Status :: 5 - Production/Stable", "Operating System :: MacOS", @@ -76,5 +81,6 @@ def get_shared_library_data_to_include(): package_data={"": get_shared_library_data_to_include()}, install_requires=[ "pydantic>=2.5", # Minimum Pydantic version to run the Python SDK + "pyinstaller>=6.18.0" ], ) diff --git a/src/onepassword/pyinstaller_hooks/__init__.py b/src/onepassword/pyinstaller_hooks/__init__.py new file mode 100644 index 00000000..1c52aadf --- /dev/null +++ b/src/onepassword/pyinstaller_hooks/__init__.py @@ -0,0 +1,5 @@ +import os + + +def get_hook_dirs(): + return [os.path.dirname(__file__)] diff --git a/src/onepassword/pyinstaller_hooks/hook-onepassword.py b/src/onepassword/pyinstaller_hooks/hook-onepassword.py new file mode 100644 index 00000000..0ba405d3 --- /dev/null +++ b/src/onepassword/pyinstaller_hooks/hook-onepassword.py @@ -0,0 +1,3 @@ +from PyInstaller.utils.hooks import collect_dynamic_libs + +binaries = collect_dynamic_libs("onepassword")