-
-
Notifications
You must be signed in to change notification settings - Fork 125
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes to MacOS build #1340
Changes to MacOS build #1340
Conversation
4e13416
to
076866f
Compare
076866f
to
0e529fd
Compare
There are some issues with the app bundle. For one, it's 176 MB. A lot of that is because there is both a "python3.1" and "python3.10" folder in Resources/lib. That seems wrong to me. Any ideas? Also, can you test the artifacts? |
Ok, tested the app bundle on my macOS VM, and it ran just fine. Couldn't get the DMG one to work though, just got a window with an icon that did nothing. Maybe I'm doing something wrong. |
I ran the conda command in an Ubuntu VM, and it does indeed create a "python3.1", but as a symlink to "python3.10" I guess the safest would be to preserve symlinks in the build too. |
This is correct, I'm not sure why it's done this way but it's probably preferable to preserve it. I'll test the dmg here shortly |
The size of the app bundle is sadly not something that can be worked around. the bundle contains all the libs (python, qt, enchant, etc) it needs to run with the assumption that it can not pull anything from the system. This is the design of app bundles and why they work (for the most part) universally across mac os versions. |
It didn't work, so I've now tried to remove it. As far as I can figure out, it's a backwards compatibility thing for older conda versions. I bet they treated the Python version as a number, where 3.10 becomes 3.1. See: conda/conda#11423 (comment)
Great. I noticed that it isn't always built properly though. Same error as mentioned here: create-dmg/create-dmg#74 |
Oh, it can definitely be worked around. I reduced the size of the windows package quite a lot by deleting components of Qt not needed by novelWriter. It actually only needs core, widgets and svg. I got it down to just over 100 MB, which is good enough for now. |
True enough, there is a reason I was pruning the web-engine after all. so long as your aware of what your pruning and why it can be cut down a bit further. |
All of the QtQuick/QML stuff can be pruned too, so can the database and other bits. But it's a lot of stuff to loop through and remove. I do it here for Windows: Lines 1291 to 1324 in 8273fcc
I may just make a Qt cleanup function in |
Just tested the dmg from the last packaging action on my ventura VM. 91MB, seems to work fine. ^-^ |
Excellent. Then I'll merge this. I'm trying to find a way to properly run the workflow. Unfortunately GitHub doesn't have a |
Hah, I cracked it. I managed to get the By the way, my solution to the texlive/qt-linguist issue was to build the assets on a Linux runner first, and then download those into the MacOS runner for making the packages. Edit: The problem with the run on tag approach is that when I get to apply the tag, the release is complete and merged, so if there is an issue with the build here, it's too late to fix. I need to run the build on the main or patch branch after the release PR has been merged, but before I tag it. |
Smart! Glad I was able to help out with this. I'm sure there are at least some users looking forward to a proper bundle release. Now you just need flatpak and you'll be effectively everywhere (i've been personally useing my flatpak build both on my desktop and to get it on my older laptop) |
Summary:
This is a continuation of #1276 by @Ryex
Related Issue(s):
Reviewer's Checklist: