-
Notifications
You must be signed in to change notification settings - Fork 0
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
Bundle the _internal directory #5
Comments
Issue with the "single file approach" is that each and every time the application needs to be run, it unzips into a temporary directory and then runs it. A better solution is to instead use an application installer like NSIS to bundle the application in an executable installer and then install that. It will show up as a single executable installer, which once installed, has a fast start up time since it's not unzipping "on the fly" each time. It will also show up in the Windows start menu and can be uninstalled or even upgraded like any other standard windows application. See ansys/python-installer-qt-gui for how this is done. When I get free time (a challenge right now), I might be able to implement it. NSIS isn't perfect, but it's free and universally used. |
In MNE we have been using conda constructor (which uses menuinst and nsis) for this stuff. Napari also uses it. Might be better to try that first and improve it rather than go to NSIS directly. |
... if you want to see how it works, feel free to try an installer. You can do it without messing up any system stuff / other Python configurations. FWIW our installers are > 1 GB because we bundle a ton of neuroscience stuff beyond just MNE-Python to make it so people don't have to install stuff on their own. If you just wanted to bundle And if you want to start working toward this approach, you could follow https://github.com/mne-tools/mne-installers#development adapting the |
The current build ships an
_internal
directory along side the.exe
with a lot of DLLs. Is this needed? Can we bundle this in the.exe
to have a "single file executable"?The text was updated successfully, but these errors were encountered: