C.W.K.
Stream
Lesson 01 of 05 · published

pixi — When You Want conda Without the Pain

~11 min · pixi, overview, python, rust

Level 0Newbie
0 XP0/55 lessons0/16 achievements
0/80 XP to next level80 XP to go0% complete

pixi is a next-generation package manager built on conda-forge by prefix.dev, written in Rust. It uses the same conda package repository as conda itself — so every conda-forge package is available — but with a workflow inspired by Cargo (Rust), npm (JS), and Poetry (Python). The result: conda's binary-package power with modern DX.

The improvements over conda are concrete:

  • 10x faster than conda for typical installs (Rust + parallel resolution).
  • Native lock file (pixi.lock) — true reproducibility without a separate conda-lock tool.
  • Project-local environments.pixi/ inside your project, not a central ~/conda/envs/. No conda activate needed.
  • Built-in task runner — define tasks in pixi.toml, run with pixi run <task>. Replaces Makefile or per-project shell wrappers.
  • PyPI integration via uv — pixi uses uv internally for PyPI resolution. The two tools are complementary: pixi for the binary stack, uv for the pure-Python deps.

pixi is best for: data science projects that need conda-forge binaries (PyTorch + CUDA, GDAL, ffmpeg, R interop); ML projects where reproducibility matters; scientific computing with mixed-language stacks. For pure-Python projects, plain uv is usually simpler.

Code

pixi vs conda — what's better·text
                       conda                  pixi
  Speed                Slow (libmamba helps)  10x faster (Rust)
  Lock file            None (use conda-lock)  pixi.lock (built in)
  Env location         ~/conda/envs/<name>    .pixi/ inside project
  Activation           conda activate <name>  Auto (no activate needed)
  Task runner          External (Make, etc.)  Built in (pixi.toml [tasks])
  PyPI                 Mix with pip carefully Native via uv
  Channels             conda-forge, defaults  conda-forge default
  Best for             Legacy / familiar      New data-science projects

External links

Exercise

Open https://pixi.sh and skim the docs. Notice how Cargo-shaped the CLI is — pixi add, pixi run, pixi.toml. If you've used Rust's Cargo or npm's package.json, the mental model transfers immediately. That's by design.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.