Skip to main content
File added late

1 file was added to this release more than 14 days after its initial publication. Inspect the release files before installing.

Frigobar

Distribute Python scripts to Windows machines without freezing them.

Basic usage

frigobar my_script.py

This will create a frigobar folder, with a my_script.bat file in it. Run it to run your app.

Installation

pip install frigobar

Options

> frigobar --help
usage: cli.py [-h] [-r REQUIREMENTS_FILE] [-p PYTHON_VERSION] [-t TIMESTAMP] [--copy-directory] script-path [target-directory]

Distribute Python scripts to Windows machines without freezing them. The resulting distribution will be put in a folder that can be copied to any Windows machine. Users should run "<script_name>.bat" to run the
script. All the dependencies, including a standalone build of Python, will be downloaded on the first run.

positional arguments:
  script-path           Path to the script to distribute.
  target-directory      Folder where the distribution will be put. Defaults to 'frigobar'.

options:
  -h, --help            show this help message and exit
  -r REQUIREMENTS_FILE, --requirements-file REQUIREMENTS_FILE
                        Path to a requirements file that lists the dependencies of the script. Defaults to'requirements.txt'.
  -p PYTHON_VERSION, --python-version PYTHON_VERSION, --python PYTHON_VERSION
                        Python version, in X.Y.Z format, that the distribution should use. The version must be available on https://github.com/astral-sh/python-build-standalone/releases. Defaults to 3.13.11.
  -t TIMESTAMP, --timestamp TIMESTAMP
                        Release timestamp (YYYYMMDD format) for the Python build. Check https://github.com/astral-sh/python-build-standalone/releases for available dates. Defaults to 20251205.
  --copy-directory      Copy the contents of the script directory to the distribution.

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 5

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

File added late

1 file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release files before installing.

Source distribution (sdist)

Source distribution for frigobar 5
File Size Uploaded
frigobar-5.tar.gz 7.3 kB Details

Built distribution (wheel)

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

Total release size: 14.9 kB

Release files / frigobar-5.tar.gz

File added late

This file was uploaded more than 14 days after the first file in this release.

While project maintainers occasionally add legitimate files to an existing release, late additions can also indicate a security compromise.

We recommend inspecting the release file before installing.

Download URL frigobar-5.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
f332aa622e79dfe91e4605249734a8b7425581e246f4d0909f55b54473a83f94
BLAKE2b-256 checksum
How to use checksums
3e29fa97734b67cdfbf705001793ce54ac3826bf8c08df402ef5c4ad9743ae6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

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

Download URL frigobar-5-py2.py3-none-any.whl
Size 7.6 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
7cf0982bebd2e842181e9e48d25b50d87bb48081fd4baeac18185f0ece3c63e3
BLAKE2b-256 checksum
How to use checksums
fa7d4d84e72159a9902508b6dd33fbfd9f01c4d12fbe65dd18cdb65998fc89c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

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

This release

5 This release

2 release files

4

2 release files

3

2 release files

2

2 release files

1

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