Skip to content

Instantly share code, notes, and snippets.

@adisbladis
Created June 30, 2026 06:04
Show Gist options
  • Select an option

  • Save adisbladis/7b02bb7fc5bd8101e972cd7f54552b36 to your computer and use it in GitHub Desktop.

Select an option

Save adisbladis/7b02bb7fc5bd8101e972cd7f54552b36 to your computer and use it in GitHub Desktop.
Nix development shell for contributing to uv
let
rust-overlay = builtins.fetchGit {
url = "https://github.com/oxalica/rust-overlay.git";
};
uv-pythons = pkgs.callPackage (import (builtins.fetchGit {
url = "https://github.com/pyproject-nix/uv-python.nix.git";
}) { }) { };
pkgs = import <nixpkgs> {
overlays = [
(import rust-overlay)
];
};
inherit (pkgs) lib;
pythons = [
uv-pythons."cpython-3.14"
uv-pythons."cpython-3.13"
uv-pythons."cpython-3.12"
uv-pythons."cpython-3.11"
uv-pythons."cpython-3.10"
uv-pythons."cpython-3.9"
uv-pythons."cpython-3.8"
];
in
pkgs.mkShell {
packages = pythons ++ [
pkgs.rustc
pkgs.cargo
pkgs.cargo-insta
pkgs.cmake
pkgs.pkg-config
pkgs.uv
pkgs.ruff
pkgs.nodejs
pkgs.rustfmt
pkgs.clippy
# pkgs.stdenv.cc.cc
# pkgs.stdenv.cc.libc
pkgs.jemalloc
];
hardeningDisable = [ "fortify" ];
# Too coarse, breaks stuff.
# env.LD_LIBRARY_PATH = lib.makeLibraryPath pkgs.pythonManylinuxPackages.manylinux1;
env.LD_LIBRARY_PATH = lib.makeLibraryPath [
pkgs.stdenv.cc.cc.lib
];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment