Skip to main content
pixi-pack is a tool that packages Pixi environments into compressed archives that can be shipped to target machines. The corresponding pixi-unpack tool recreates the environment without requiring Pixi, conda, or micromamba.

Installation

1

Install globally

Install both tools using Pixi’s global installation:
Or download pre-built binaries from the releases page.
2

Use with pixi exec

Alternatively, run without installation:
If you have pixi, pixi-pack, and pixi-unpack installed globally, you can also use the shorter commands pixi pack and pixi unpack.

Creating a Pack

Package an environment for distribution:
This creates an environment.tar file containing all conda packages required for the environment:

Unpacking an Environment

Extract and recreate the environment on the target system:
This creates:
  • ./env/ - The conda environment
  • activate.sh (or activate.bat on Windows) - Activation script

Cross-Platform Packs

Create packs for different platforms without running on that platform:
You can only unpack a pack on a system with the same platform it was created for.

Self-Extracting Binaries

Create standalone executables that unpack without requiring pixi-unpack:

Custom pixi-unpack Source

Specify a custom location for the pixi-unpack executable:
The produced executable is a shell script containing both the pixi-unpack binary and the packed environment.

Advanced Features

Inject Additional Packages

Add packages not specified in pixi.lock:
This is useful for including locally built packages while using the workspace’s lockfile.

PyPI Support

Pack PyPI wheel packages into your environment:
  • Only wheel packages are supported (not source distributions)
  • Use --ignore-pypi-non-wheel to skip source distributions
  • Pixi-pack cannot verify wheel compatibility with the target environment

Mirror and S3 Configuration

Use custom mirrors or S3 buckets:
config.toml
See the S3 documentation for more details.

Concurrency Control

Limit parallel downloads:
config.toml

Package Caching

Cache downloaded packages for faster subsequent operations:
Benefits:
  • Reuse packages across multiple packs
  • Reduce bandwidth usage
  • Speed up CI/CD pipelines
  • Handle large packages efficiently
The cache follows the conda channel structure, organizing packages by platform subdirectories.

Unpacking Without pixi-pack

If pixi-pack is unavailable on the target system, use conda or micromamba:
1

Extract the archive

2

Create the environment

The environment.yml and repodata.json files are only for this compatibility mode. pixi-unpack does not use them.
Both conda and mamba automatically install pip alongside Python, which differs from Pixi’s behavior. This can cause solver errors. Fix by either:
  • Adding pip to your pixi.lock: pixi add pip
  • Disabling pip auto-install: conda config --set add_pip_as_python_dependency false

Use Cases

Production Deployment

Package development environments for production deployment without internet access on target servers.

Air-Gapped Systems

Distribute software to air-gapped or restricted network environments.

Reproducibility

Ensure exact dependency versions across different machines and time periods.

CI/CD Optimization

Cache and reuse packages across pipeline runs to reduce build times.