Commit Graph

43 Commits

Author SHA1 Message Date
Florian Bruhin 4918e6d8ff macOS: Avoid deprecated file associations
Based on Chromium's Info.plist.

Fixes #7306, see #8416 for more possible improvements.
2024-12-09 16:41:24 +01:00
toofar ab7b079411 debug python imports
For windows I'm getting a "Module not found." error, which I suspect is
it not finding qutebrowser itself, but lets see.

ref: https://pyinstaller.org/en/stable/spec-files.html#giving-run-time-python-options
2023-10-28 10:44:55 +13:00
toofar 32470686ce macOS: switch to more suitable bundle ID
Trying to switch the bundle ID again and see if that makes things work.
Will need to check 5.15 too.

ref: https://github.com/qutebrowser/qutebrowser/pull/7803#issuecomment-1657106925
Closes: #5180
2023-08-12 13:36:50 +12:00
toofar c0d31d399d adjust pyinstaller data paths to match importlib_resources
Not that we are looking up resources via importlib_resources for
pyinstaller builds too we need to change where the data files are
installed to to match what importlib_resources is expecting.

There was a comment in the previous resource lookup special case
complaining about the data files being at the top level so it seems this
is a change for the better anyhow.

Observed paths:

    requested file: qutebrowser.app/Contents/Frameworks/qutebrowser/config/configdata.yml
    actual file   : qutebrowser.app/Contents/Frameworks/config/configdata.yml
2023-07-27 19:17:27 +12:00
Florian Bruhin ffc06e58d6 qt6: Switch most tooling/linting to Qt 6
Only mypy missing now...
2023-06-30 19:29:28 +02:00
Florian Bruhin c29419b86a Adjust PyInstaller hiddenimports
_QOpenGLFunctions_2_0 was added in 2df9508e44 but
doesn't seem to be needed anymore. PyQt 6 doesn't seem to need any hiddenimports
at all.
2022-08-23 18:31:41 +02:00
Florian Bruhin c0ffd6d327 scripts: Pass through Qt 6 to PyInstaller 2022-08-23 18:31:41 +02:00
kt programs c6f326b95b macOS: add MHTML file type to handled files 2022-07-10 22:21:38 +08:00
Florian Bruhin 46de10722c build-release: Move macOS Info.plist back to PyInstaller .spec
The patching was originally introduced back in 2017 in #3055, when
PyInstaller only supported very basic Info.plist operations.

This changed in 2018 (!) however, with PyInstaller 3.4:
https://pyinstaller.org/en/stable/CHANGES-3.html#id8
https://github.com/pyinstaller/pyinstaller/pull/3532

Thus, let's move this back to PyInstaller. This produces exactly the
same Info.plist as before.

Fixes #7251
2022-06-16 17:52:35 +02:00
Florian Bruhin 409a2990a8 Revert "Workaround PyInstaller 5.0 icon finding"
This reverts commit 07ce034983.

Should be fixed in PyInstaller 5.1 now.
2022-05-19 15:48:28 +02:00
Florian Bruhin 07ce034983 Workaround PyInstaller 5.0 icon finding
See https://github.com/pyinstaller/pyinstaller/issues/6759

Fixes #7132, see #7129
2022-04-19 15:51:59 +02:00
Jimmy 78043bc4f8 fix more moved icons/ references
For Makefile installs (broke while copying stuff over) and pyinstaller
installs (broke on launch).
2022-04-05 08:45:15 +12:00
Jimmy e9ed6456fd Load icons via importlib.resources
The PyQt resources system is gone in 6.2 and deprecated before that. This
should be the last usage of it.

Switches icons to be read with `utils.resources.read_file_binary()` in
`notification.py` (fallback desktop notification icon) and `app.py` (icon for
the desktop window).

importlib only loads resources under a package, so the icons are moved under
the `qutebrowser/` directory.

Closes: #6062
2022-04-04 18:03:54 +12:00
Florian Bruhin eeb26a6aa8 Revert "Remove pkg_resources special casing for PyInstaller"
This reverts commit 6bb2b082c9.

I guess storing package data in qutebrowser/ would be the proper way,
but this doesn't actually work on macOS - there, the executable name is
already "qutebrowser"...
2021-01-26 14:31:01 +01:00
Florian Bruhin 6bb2b082c9 Remove pkg_resources special casing for PyInstaller
See #4467
2021-01-26 11:13:41 +01:00
Florian Bruhin f50faee0ea Fix PYINSTALLER_DEBUG 2020-07-06 13:09:53 +02:00
Florian Bruhin ad645bba52 Add PYINSTALLER_DEBUG 2020-07-06 12:04:01 +02:00
Florian Bruhin bbf0937d77 pyinstaller: Use paths relative to .spec file
Looks like this changed in PyInstaller recently...
2019-03-20 07:22:43 +01:00
Florian Bruhin bb115afc1a Make sure we always yield full names 2018-12-10 12:37:58 +01:00
Florian Bruhin 15e9127fa0 Add components to pyinstaller hiddenimports 2018-12-10 12:37:58 +01:00
Florian Bruhin c3fec3c8aa pyinstaller: Re-add pdf.js bundling
Fixes #4291
2018-10-04 16:25:07 +02:00
bitraid 1e5b325ea5 Move file_version_info.txt to misc/ and add it to .gitignore 2018-05-03 15:50:18 +03:00
bitraid 8c16d81d89 Pyinstaller: add VERSIONINFO resource to Windows executables. 2018-04-20 17:48:51 +03:00
Florian Bruhin e35c91043e pyinstaller: Use '.' as path for git-commit-id
See #384
2018-04-08 20:46:43 +02:00
bitraid 68e3ad6cba Pyinstaller: don't use upx 2018-03-25 19:43:59 +03:00
Anton S 5350b948ea [review] gather plist params in one place 2017-10-05 01:13:23 +03:00
Florian Bruhin ff6df0c8ca Don't use utils.is_* in qutebrowser.spec
Looks like PyInstaller doesn't like that.
This partially reverts ef1c83862b.
2017-09-26 07:31:45 +02:00
Florian Bruhin ef1c83862b Use utils.is_* for platform checks everywhere 2017-09-20 11:10:24 +02:00
Florian Bruhin 1aa918bb86 Add configdata.yml to qutebrowser.spec for PyInstaller 2017-09-16 16:12:00 +02:00
Florian Bruhin 2df9508e44 Add PyQt5 OpenGL module to PyInstaller hiddenimports 2017-07-04 21:03:34 +02:00
Florian Bruhin 9c851293ac pyinstaller: Add PyQt5.QtOpenGL to hiddenimports 2017-06-09 21:50:52 +02:00
Florian Bruhin 75409966a7 pyinstaller: Exclude tkinter 2017-05-24 21:53:53 +02:00
Florian Bruhin c5957bc9d0 Exclude pdfjs from build packages for now
It only makes things bigger, and currently pdfjs doesn't work on QtWebEngine
anyways.
2017-05-17 11:42:58 +02:00
Florian Bruhin 26923baa4a Set NSSupportsAutomaticGraphicsSwitching in Info.plist
This should make it possible to use AirPlay with qutebrowser.
See https://bugreports.qt.io/browse/QTBUG-54053
2017-02-23 07:50:37 +01:00
Florian Bruhin 01344fbed7 Add a comment 2016-10-24 22:21:34 +02:00
Eric Drechsel 4dfe1c6ab6 Set the bundle identifier to a fake value to allow icu data to be found. 2016-10-24 10:17:39 -07:00
Florian Bruhin b065d8efcd pyinstaller: Set NSHighResolutionCapable = True
This means qutebrowser will show up correctly on HiDPI/Retina screens
without being pixelated.
2016-05-28 23:20:00 +02:00
Florian Bruhin 90fa2a50ce pyinstaller: Use qutebrowser/__main__.py
When we use qutebrowser.py, PyInstaller 3.2 gets confused
somehow (because of the name conflict with qutebrowser/ maybe?) and
doesn't do anything when running the bundled app.

With qutebrowser/__main__.py the generated filename is still correct and
it actually works.
2016-05-28 23:18:29 +02:00
Florian Bruhin bfb4f20510 pyinstaller: Build a single-executable app 2016-04-07 08:53:12 +02:00
Florian Bruhin 460f613fec pyinstaller: Set icon 2016-04-07 08:53:12 +02:00
Florian Bruhin 2f8ce31e1a pyinstaller: Add git-commit-id file 2016-04-07 08:53:12 +02:00
Florian Bruhin f24a721e55 pyinstaller: Include data files
This makes the following things work:

- Error pages
- Caret mode
- pdfjs
- :help
2016-04-07 08:53:12 +02:00
Florian Bruhin b505c65873 pyinstaller: Add basic qutebrowser.spec 2016-04-07 08:53:07 +02:00