emfreeze
Emfreeze is a command line tool for Windows to freeze a virtual environment as a standalone package. Contrary to cx_freeze or PyInstaller, emfreeze produces no additional executables. Instead it packs your scripts and dependencys together with the according python embeddable package. Therefore it is not good for standalone Python applications but ideal for an embedded use of Python inside another application. The main benefit is that the chance of implications with anti-virus software is reduced, because your freezed package only contains signed and commonly known executables.
Warning: Emfreeze does not hide your source code in any way. The most it will do is to compile your python entry points to pyc files, which can be easily decompiled.
Installation
pip install emfreeze
Usage
Inside of your virtual environment execute the emfreeze over the command line.
emfreeze
Emfreeze will download the according Python runtime and copys it along with your python entry points, site-packages and any directory beside the Include and the Scripts directory in the dist directory.
Additional arguments
usage: emfreeze [-h] [-d PATH] [--embeddable-package PATH] [-c] [--post-build-script PATH]
Emfreeze freezes a python virtual environment together with the python embeddable package, to make it easy to embed it into other software without creating executables.
optional arguments:
-h, --help show this help message and exit
-d PATH, --dist-path PATH
Set the path of the final build
--embeddable-package PATH
Path of a compatible python embeddable package zip file, if emfreeze should not download it
-c, --compile Compile your toplevel scripts
--post-build-script PATH
Path of a executable script (e.g. Batch-Script) which executes inside your newly build package.
Requirements and Troubleshooting
Emfreeze works obviously only with Python versions which have an embeddable package version. If this is an issue or if you experience other issues related to the embeddable package Python distribution, you can replace the runtime via the --embeddable-package argument. Just download a different distribution and zip it.
Licensing
Emfreeze is MIT licensed. But since there is no part of emfreeze inside your distributed build, you don't have to worry about that. Keep in mind that Python and your dependencys have their own licenses, so please keep that in mind.
Metadata
Release files for emfreeze 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| emfreeze-0.2.2.tar.gz | 4.7 kB | Without provenance | Details for emfreeze-0.2.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| emfreeze-0.2.2-py3-none-any.whl | Python 3 | none | any | Details for emfreeze-0.2.2-py3-none-any.whl |
Total release size: 10.7 kB
Release files / emfreeze-0.2.2.tar.gz
| Download URL | emfreeze-0.2.2.tar.gz |
|---|---|
| Size | 4.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5a5bc42122400ddac7450eb6f5d1fe4abef0d846751c3eb0a65372e325a4705b
|
|
BLAKE2b-256 checksum How to use checksums |
1b145344ff32091a9f3f48db14fb7cde7a36fa3a4a0316197b75f62e59d3d95c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.0
|
Release files / emfreeze-0.2.2-py3-none-any.whl
| Download URL | emfreeze-0.2.2-py3-none-any.whl |
|---|---|
| Size | 6.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d5ef575a1936febb41d7b3c7b0566af55c4131fae8008870557a4fa93586f4fd
|
|
BLAKE2b-256 checksum How to use checksums |
07f5c961483282ec11aa78994207ee6ddc90edc357e7f6529bb74b0f77d3fdb5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.0
|
Security for emfreeze 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.