From 08162cbfeb9c56849611911a2d34e0f22bf72629 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Mon, 1 Nov 2021 09:48:34 +0100 Subject: Bring back PyInstaller resource handling Seems to be still needed, at least on macOS --- qutebrowser/utils/resources.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/qutebrowser/utils/resources.py b/qutebrowser/utils/resources.py index cd6284f7f..f561d6747 100644 --- a/qutebrowser/utils/resources.py +++ b/qutebrowser/utils/resources.py @@ -40,6 +40,12 @@ def _path(filename: str) -> pathlib.Path: """Get a pathlib.Path object for a resource.""" assert not posixpath.isabs(filename), filename assert os.path.pardir not in filename.split(posixpath.sep), filename + + if hasattr(sys, 'frozen'): + # For PyInstaller, where we can't store resource files in a qutebrowser/ folder + # because the executable is already named "qutebrowser" (at least on macOS). + return pathlib.Path(sys.executable).parent / filename + return importlib_resources.files(qutebrowser) / filename @contextlib.contextmanager -- cgit v1.2.3-54-g00ecf