Different ways to ship a desktop Python application
EDM is an environment manager, similar to conda. you can find related docs at http://docs.enthought.com/edm/#user-guide and installers at https://www.enthought.com/products/edm/installers/
EDM can be used to create package/data bundles, which allow installing and replicating environments without the need for an internet connection.
To be able to create a data bundle using edm, run
edm export -i -f env_name.bundle env_name
. The env_name.bundle
file can
now be used to replicate the env_name
EDM environment, without needing an
internet connection.
To be able to use the data bundle and create an EDM environment, run
edm envs import env_name_duplicate -f env_name.bundle
Note : A bundle file created on a Linux machine cannot be used on a Windows or MacOS machine. Unique bundle files for each OS need to be generated.
Requirement to use : EDM needs to be installed on the system
Please read http://docs.enthought.com/edm/user/cli.html for more.
Install constructor using conda install constructor
.
Create a yaml file containing information on the name of the installer and
the packages contained within the installer, what channels to looks for the
packages in and so on. See constructor/construct.yaml or
https://github.com/conda/constructor/tree/master/examples
for example yaml files.
cd into the directory containing the yaml file and simply run
$ constructor . --platform $PLATFORM
Note : OS-specific installers can only be created on said OS.
Requirement to use : Conda needs to be installed
also look at http://appimage.org/
also checkout superzippy - https://github.com/brownhead/superzippy omnibus - https://github.com/chef/omnibus nuitka - http://nuitka.net/pages/overview.html osnap - https://osnap.readthedocs.io/en/latest/ fpm - https://fpm.readthedocs.io/en/latest/ also checkout - https://snapcraft.io/