Skip to main content

The quick and dirty Python packager for Windows

Project description

WinPackIt is the winpackit.py module, a Python script with no external dependency required. It will package your Python project into a stand-alone Windows distribution.

How does it work.

Python 3.5 introduced the embeddable package distribution on Windows: that is, an “almost complete” Python zipped in a single, non-installer file. While intended mainly for embedding purposes, the opposite is also possible: with some tinkering, one can make this package into a full-fledged self-contained Python environment ready to support a Python application.

Basically, that is what this script is for.

When you run WinPackIt,
  • it will download and unpack a Python embeddable package,

  • download and install Pip into it,

  • download and install any needed external dependency,

  • copy your project files,

  • optionally compile your file to .pyc,

  • leave a friendly install.bat file for the final user to run.

At this point, you may distribute the resulting “build” folder to the final users; all they have to do…
  • drop the folder anywhere on their Windows box,

  • open it and double-clic the install.bat file;

  • this in turn will produce Windows shortcut(s) to the entry-point(s) of your app to double-click, tailored for their machine.

Requirements.

You will need Python 3.6+ to run WinPackIt. No external dependency is required. On the target side, you can produce builds based on any Python 3.5+. You don’t have to match your own Python with the target Python.

Linux/Mac users.

The WinPackIt script runs on Linux too, of course. Except, the build process needs to run the target Python a few times in order to install external packages and compile .pyc files - and that will be impossible on Linux. Then again, if you need no external packages nor compiling, it should work as a charm. See docs for more details.

Usage.

  • pip install winpackit in your virtual environment, or even pipx install winpackit if your really like WinPackIt and would love to have it always at hand;

  • run python -m winpackit my_runner.py;

  • this will produce a my_runner.py runner file for WinPackIt: open it and customize to your liking;

  • run python my_runner.py;

  • this will produce a “build” folder of your project, as specified in the runner file settings, ready to be distributed to the final user.

See the doc file for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

WinPackIt-0.8.0.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

WinPackIt-0.8.0-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file WinPackIt-0.8.0.tar.gz.

File metadata

  • Download URL: WinPackIt-0.8.0.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.2

File hashes

Hashes for WinPackIt-0.8.0.tar.gz
Algorithm Hash digest
SHA256 fa124dd549585335701c617c27ae7214163c19c1952c99423e81572686117768
MD5 3045e1af3d83326b6c447b1f0934916b
BLAKE2b-256 6d7547b18e06269dcf16dbd94be7e769f425b73cdb7cda4c9996c9184055684d

See more details on using hashes here.

File details

Details for the file WinPackIt-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: WinPackIt-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.2

File hashes

Hashes for WinPackIt-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5d22da51c76db1099dd1045d2a10cdb61e740ec9728303ed7c9929a8ca4855e0
MD5 5fdd3c1dc73eded2d4f48a85349cd6bf
BLAKE2b-256 8a00727ed47d99ac26798639758bd98306553280592dc10e5b0bc345b93c95f2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page