The Open Source Drop
ToolsExploreAlternativesThis Week
Subscribe
The Open Source Drop
ToolsExploreAlternativesThis Week
Subscribe
← All Categories

Package Managers

10 open source tools compared. Sorted by stars. Scroll down for our analysis.

By Erik Loyd, SaaS CEO and former COO/CFO of an AWS Premier Partner.

ToolStarsVelocityLanguageLicenseScore
uv

An extremely fast Python package and project manager, written in Rust.

88.5k+306/wkRustApache License 2.0100
Homebrew

The missing package manager for macOS

49.1k+101/wkRubyBSD 2-Clause "Simplified" License88
pnpm

Fast, disk-space efficient package manager

36.0k+85/wkTypeScriptMIT License88
nixpkgs

Nix Packages collection & NixOS

25.7k+85/wkNixMIT License88
Nix

Purely functional package manager

17.5k+33/wkC++GNU Lesser General Public License v2.183
winget-pkgs

The Microsoft community Windows Package Manager manifest repository

10.9k+48/wkPowerShellMIT License88
NUR

Nix User Repository: User contributed nix packages [maintainer=@Pandapip1]

1.9k+6/wkPythonMIT License72
bioconda-recipes

Conda recipes for the bioconda channel.

1.9k+6/wkShellMIT License76
macports-ports

The MacPorts ports tree

1.8k-TclBSD 3-Clause74
cabin

C/C++ package manager and build system, inspired by Cargo

1.5k-RustApache License 2.071

Stay ahead of the category

New tools and momentum shifts, every Wednesday.

Our Analysis

uv88.5k★

Uv replaces all of them. It's a single tool that handles Python version management, virtual environments, package installation, and project management. And it does it 10-100x faster than pip because it's written in Rust. Everything is free. No paid tier, no cloud, no account. Install it and it replaces pip, pip-tools, pyenv, virtualenv, and pipx in one binary. The speed difference isn't marginal. It's 'blink and it's done' versus 'go get coffee.' The catch: uv is now an OpenAI project. OpenAI announced it was acquiring Astral (the team behind uv and Ruff) in March 2026 and pledged to keep the open source tools free. Astral's paid play was always pyx, a private package registry, not the CLI, so uv itself stays free. Some edge cases with legacy packages that rely on setup.py quirks can still trip it up. But the Python community has clearly voted.

Homebrew49.1k★

One command installs almost anything: `brew install postgres`. It's the package manager that macOS should have shipped with. Homebrew manages 7,000+ formulae (command-line tools) and 5,000+ casks (GUI apps). It handles dependencies, updates, and cleanup. `brew update && brew upgrade` keeps everything current. It also works on Linux now, though its macOS dominance is where it shines. Completely free. BSD license. Funded by donations and corporate sponsors. Every Mac developer should install Homebrew within the first 10 minutes of setting up a new machine. There's no team-size consideration here. It's a personal tool. The only decision is whether to also use it for GUI apps (casks) or just CLI tools. The catch: Homebrew installs everything globally, which can conflict with project-specific version needs. For language runtimes, tools like nvm, pyenv, or asdf give you per-project versioning that Homebrew doesn't. And `brew upgrade` will happily update a database you weren't ready to migrate.

pnpm36.0k★

Pnpm fixes that. Instead of copying every dependency into every project, it stores one copy on your machine and links to it. Same npm packages, dramatically less disk space, and faster installs. Everything is free. There's no paid tier, no hosted service, no enterprise upsell. It's a drop-in replacement for npm: same commands, same package.json, just faster and leaner. Workspaces for monorepos are built in and work better than npm's. The catch: some older packages with hardcoded node_modules paths can break because pnpm uses symlinks instead of flat folders. Most modern packages work fine, but if you hit a compatibility issue, you'll be debugging symlink resolution. And your whole team needs to agree to switch; mixing npm and pnpm in the same project creates lockfile conflicts.

nixpkgs25.7k★

The largest collection of software packages in any package manager, over 100,000 packages, more than Debian, AUR, or Homebrew. If you've ever struggled with "works on my machine" problems, dependency conflicts, or reproducible builds, Nix (the package manager) and nixpkgs (this package collection) solve that by making every package build in isolation with its exact dependencies. Every package is built in a sandbox with only its declared dependencies available. No global state, no dependency conflicts, no breaking one thing by updating another. You can have Python 3.8 and 3.12 installed simultaneously without them interfering. Roll back any change instantly. Define your entire system configuration as code. Completely free under MIT. Community-maintained with major backing from Determinate Systems, Flox, and other companies building on the Nix ecosystem. Homebrew is the pragmatic alternative, less powerful but dramatically easier to use. Guix is the GNU alternative with a Scheme-based approach. If you just need reproducible dev environments, devenv or devbox abstract away Nix's complexity while using nixpkgs underneath. The catch: the learning curve is brutal. Nix has its own functional programming language for package definitions. The documentation has historically been fragmented and confusing (it's improving). Error messages are often cryptic. You'll spend hours learning before you save hours building. The community is passionate but has had governance growing pains.

Nix17.5k★

Nix is a package manager that makes builds reproducible, solving the 'works on my machine' problem caused by different system packages and library versions. Every package is built in isolation with its exact dependencies, so "works on my machine" becomes "works on every machine." It can also manage your entire operating system (NixOS) or just your development environments. Fully free under LGPL 2.1. Over 100,000 packages in Nixpkgs (one of the largest package repositories in existence). Use it to create development shells where every team member gets identical tool versions, build Docker images with precise dependencies, or manage server configurations declaratively. The catch: the learning curve is brutal. The Nix language is functional and unlike anything most developers have seen. Documentation is notoriously scattered across the official manual, wiki, and community blogs. You'll spend days figuring out what takes 5 minutes in other package managers. The payoff is real, but so is the investment. If reproducibility isn't a pain point for you, Nix is a solution looking for a problem.

winget-pkgs10.9k★

winget-pkgs is the community-maintained package repository behind Windows Package Manager (winget). It is to Windows what Homebrew's formulae repo is to macOS: the catalog of installable software. You run "winget install firefox" and this repo is where that manifest lives. Contributing a package means submitting a YAML manifest via pull request. Microsoft validates the installer (MSI, MSIX, EXE formats), runs automated checks, and merges it. The repo has thousands of packages and grows daily. If you maintain Windows software, getting your app into winget-pkgs is the easiest distribution channel Microsoft offers. For Windows developers, winget is now the default. It ships with Windows 11 and Windows 10 (recent builds). Chocolatey and Scoop still have larger catalogs and more flexibility for power users, but winget has the advantage of being built into the OS. Most teams will end up using winget for standard installs and Chocolatey or Scoop for the long tail. The catch: this is a manifest repo, not a tool you run. The value is indirect. And winget still lags behind Homebrew and apt in package count and community tooling. If you are on macOS or Linux, this is irrelevant to you.

NUR1.9k★

NUR is the community package overlay for Nix. If a package isn't in nixpkgs (the main Nix repository), NUR is where the community publishes it. No review process, no merge queue, just add your repo and it's available to every Nix user. Completely free, MIT licensed. Setup is one line in your Nix configuration. Point your flake or channel at NUR, and you get access to hundreds of user-contributed packages. There's nothing to host or maintain on your end. The NUR infrastructure runs as a GitHub-based build system that aggregates community repos. This is exclusively for Nix users. If you're already managing systems or dev environments with Nix and keep hitting missing packages in nixpkgs, NUR fills the gap without forking or maintaining your own overlay. The catch: no quality guarantees. Packages in NUR aren't reviewed like nixpkgs contributions. You're trusting individual maintainers. And if you're not already using Nix, NUR solves a problem you don't have.

bioconda-recipes1.9k★

Bioconda is a conda channel with 10,000+ pre-built packages for biological research software. Instead of compiling BLAST, SAMtools, or BWA from source and fighting with library versions, you type `conda install samtools` and it works. MIT license. This repo contains the recipes (build instructions) for every package in the Bioconda channel. It's community-maintained by hundreds of bioinformaticians who are tired of broken builds. Everything is free. Bioconda is a community project. No paid tier, no commercial version. Conda itself is free (use Miniforge to avoid Anaconda's commercial licensing complications). The catch: this is a niche tool for a niche field. If you're not doing bioinformatics, you don't need this. If you are, it's essentially mandatory. The alternative is spending days compiling tools from source and resolving C library conflicts. The conda solver can be slow for complex environments (use mamba instead of conda for faster solves). And some packages lag behind upstream releases by days or weeks.

macports-ports1.8k★

MacPorts is one of the original package managers for that. It compiles software from source (or uses prebuilt binaries when available) and installs it in /opt/local, keeping it separate from Apple's system files, on the ports tree repo (the actual packages), but MacPorts as a project has been running since 2002. Over 30,000 ports available. Tcl-based port definitions. BSD-style. Fully free. Community-maintained, no paid tier, no commercial entity behind it. The honest take: most Mac developers use Homebrew instead, and for good reason. Homebrew is easier to use, installs faster (prebuilt bottles for almost everything), and has a much larger community. MacPorts compiles from source more often, which means slower installs but more control over build options and variants. MacPorts still makes sense if you need precise control over compile-time options, if you work in scientific computing where specific library versions matter, or if you've been using it for 20 years and your workflow depends on it. The catch: the community is smaller, packages update slower than Homebrew, and most online tutorials assume Homebrew. If you're starting fresh on macOS, Homebrew is the pragmatic choice unless you have a specific reason for MacPorts.

cabin1.5k★

Cabin brings Cargo's sanity to C and C++. Written in Rust, it's an opinionated build system and package manager that uses declarative manifests and a predictable project layout, so a conventional C or C++ project builds and pulls dependencies without the usual CMake incantations. It's inspired by Cargo but diverges where C and C++ genuinely need it to. The appeal is the same reason Rust developers love Cargo: one clear manifest, a predictable model, less time lost to build configuration. For simple, package-oriented projects, that's a real quality-of-life jump. It's backed by MITOU and Anthropic's Claude for Open Source program, and has a solid commit history. Free under Apache 2.0, for anyone tired of hand-rolling build files. The catch is that it's pre-1.0 and deliberately constrained. Cabin is not a fully programmable build system, that's a design choice, not an oversight. It's great for straightforward projects and a poor fit for complex, custom builds where CMake or Meson's flexibility is the whole point. Know which kind of project you have before you adopt it.

The Open Source Drop

Open source tools worth knowing about.

hello@opensourcedrop.com
ToolsExploreAlternativesLicensesScoringSuggest a ToolAboutTerms

Buying guides

AI Agent FrameworksOpen Source Agent FrameworksOpen Source Claude Code & Codex SkillsOpen Source Agent Runtimes & SandboxesOpen Source Multi-Agent SystemsPython Developer ToolsLLM Inference ToolsDevOps & Infrastructure ToolsCLI ToolsOpen Source MCP ServersAll buying guides

The Open Source Drop provides informational summaries of open source tools and their licenses. This is not legal advice. Always review the full license text on each tool's repository before using it in your project. Product names and logos mentioned on this site are trademarks of their respective owners. The Open Source Drop is not affiliated with or endorsed by any proprietary software vendor. Terms of use.