Skip to main content

Frigobar

Distribute Python apps to Windows machines without freezing them.

Basic usage

frigobar my_app.py

This will create a frigobar folder, with a my_app.bat file in it. Run it to run your app. And since you already opened it, grab a beer!

Installation

pip install frigobar

Options

frigobar --help

Rationale

A common technique to distribute Python apps is to "freeze" them using tools like PyInstaller or cx_Freeze. These freezers create a standalone executable that contains your app and all its dependencies. This is a workable solution, but it has two main drawbacks:

  1. The resulting frozen app is often huge. It's not uncommon to see a simple app taking MBs of space.
  2. Because dependence resolution is hard, the frozen app may contain more or less dependencies than it needs. Less dependencies lead to dread "working-app-that-stop-working-when-you-freeze-it" situations. Unnecessary dependencies lead to bloated apps.

Frigobar avoids those problems by postponing the download of the Python interpreter and all the app's dependencies to the first time the user runs the app, making the app the smallest it can be. Frigobar also doesn't try to be smart about dependencies and will only download the ones explicitly listed in a requirements.txt file. This a closer experience to what a developer does when he runs the app in his own machine, which hopefully will lead to less surprises to users.

Release files for frigobar 1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for frigobar 1
File Size Uploaded
frigobar-1.tar.gz 7.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for frigobar 1
File Interpreter ABI Platform
frigobar-1-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 14.6 kB

Release files / frigobar-1.tar.gz

Download URL frigobar-1.tar.gz
Size 7.1 kB
Tags Source
SHA-256 checksum
How to use checksums
d25f9e772ca345ce537b2cbc45e4a2d3e75da208e12eacc329674a9fa77b34b3
BLAKE2b-256 checksum
How to use checksums
ee1ff03ee6e48499c55a3476078581672ced810a9745db767c68c26b2930a478
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Release files / frigobar-1-py2.py3-none-any.whl

Download URL frigobar-1-py2.py3-none-any.whl
Size 7.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
14505ef139f6899275a1725a7b1bc46453a0f2e29481defdde39391096cb0e4c
BLAKE2b-256 checksum
How to use checksums
dcc393ac4f5a4c2f12e9c356903b1bd16a1ae831429045afe7d51ca836ab9268
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.4

Release history Release notifications | RSS feed

14

2 release files

13

2 release files

12

2 release files

11

2 release files

10

2 release files

9

2 release files

8

2 release files

7

2 release files

6

2 release files

5

2 release files

4

2 release files

3

2 release files

2

2 release files

This release

1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page