Skip to main content

package python apps for deployment on different platforms

Project description

WhatAmIThinking-Bundler

Package python apps for deployment on different platforms

Table of Contents

Requirements

Requirements - Windows

Inno Setup is used on windows to build the installer. A .iss script is generated by this package, but that must be compiled and built into an inno setup installer and that requires the compiler be installed on your build system.

You may also need to add the program folder to your environment Path so the iscc program can be accessed from the shell.

Known Issues

Known Issues - Windows

Antivirus seems to sometimes lock up PE (exe) files, preventing them from being written to. If you do not have the power to exclude your build folder from the antivirus scans, the next best solutions are as follow:

  • Try using another machine or VM which is not running antivirus
  • Just let the program continue its attempts until it finally works. Increase the timeout, if needed, to give more time for attempts

Use Cases

Use Cases - Making an App Which Creates More Apps

Lets say you want to make a python app which allows users to generate their own apps using this package to build them.

  • Parent App: App which will generate the Child Apps
  • Child App: App being generated by the Parent App

Use Cases - Making an App Which Creates More Apps - Parent App Setup

To support this, the Parent App must set embed_python=True in BundleConfig when it is being built so all the necessary files are present when it tries to build apps itself. This is VERY slow, taking several minutes to complete the following:

  • Copies the current full python install from the system
  • Copies all site-packages from the current venv, if running in a venv

It is recommended to set bundle_mode="folder" for the Parent App due to the large resulting size as a result of embedding a full python interpreter and packages (several hundred megabytes).

It is also recommended to get a clean install of your system python prior to building the Parent App and to only install what you need into the venv for your project, if using one, or else into that system python, because everything will get copied into the Parent App.

Use Cases - Making an App Which Creates More Apps - Child App Setup

Nothing special needs to be done for the child app. Its build does not require any special flags or setup beyond what you would normally do if building directly from your DEV machine.

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

whatamithinking_bundler-1.2.0.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

whatamithinking_bundler-1.2.0-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file whatamithinking_bundler-1.2.0.tar.gz.

File metadata

  • Download URL: whatamithinking_bundler-1.2.0.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for whatamithinking_bundler-1.2.0.tar.gz
Algorithm Hash digest
SHA256 79e665cb30b0a32ba9d2d2cc0d57e8bbd68d9ab312482387c5bc068cd7cd78d9
MD5 04e9a65d9a682d3b6edbcb9317237590
BLAKE2b-256 75e999b9dee3497f012fb98bb0d9b767b20c366bd1d79cd0476b007fb6314d0f

See more details on using hashes here.

File details

Details for the file whatamithinking_bundler-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for whatamithinking_bundler-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aad52c71871233cefba183504ff96403e97fea003dee4590407c205a23115866
MD5 c4f865a7427a8e7873d9cad1e531c795
BLAKE2b-256 c56fb498e1c4ad0ee99634893e5101a43997d0885b198c6f44af586e9274be4e

See more details on using hashes here.

Supported by

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