• Stars
    star
    3,300
  • Rank 13,595 (Top 0.3 %)
  • Language
  • License
    Creative Commons ...
  • Created over 5 years ago
  • Updated 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

😎 A curated list of the best resources in the Nix community [maintainer=@cyntheticfox]

Awesome Nix Awesome NixOS

A curated list of the best resources in the Nix community.

Nix is a powerful package manager for Linux and other Unix systems that makes package management reliable and reproducible.

Please read the contribution guidelines before contributing.

Contents

Resources

Learning

  • Building a Rust service with Nix - An in-depth blog series about creating a Rust application with Nix.
  • How to Learn Nix - It's like a Let's Play, but for obscure software documentation.
  • Nix - A One Pager - A one page introduction to the Nix language.
  • Nix from First Principles: Flake Edition - A modern crash-course to using Nix features, Flakes, and developing with Nix.
  • Nix Notes - A collection of short notes about Nix, each contributing to the same virtual machine image.
  • Nix Pills - The best way to learn, with examples.
  • Nix Shorts - A collection of short notes about how to use Nix, updated for Nix Flakes.
  • nix.dev - An opinionated guide for developers about getting things done using the Nix ecosystem.
  • NixOS & Flakes Book - An unofficial and opinionated NixOS & Flakes book for beginners.
  • Tour of Nix - An online interactive tutorial on Nix language constructs.
  • Wombat's Book of Nix - A book-length introduction to Nix and flakes.
  • Zero to Nix - A flake-centric guide to Nix and its concepts created by Determinate Systems to quickly onboard beginners.

Discovery

  • Hound - Handily search across all or selected Nix-related repositories.
  • Nix Package Versions - Find all versions of a package that were available in a channel and the revision you can download it from.
  • Noogle - Nix API search engine allowing to search functions based on their types and other attributes.
  • Pkgs on Nix - A database with Nix packages at all versions, from all channels.
  • Home Manager Option Search - Search through all 2000+ Home Manager options and read how to use them.

Installation Media

  • nixos-generators - Take a NixOS config and build multiple different images types including VirtualBox VMs, Azure images, and installation ISOs.
  • nixos-infect - Replace a running non-NixOS Linux host with NixOS.
  • nixos-up - Super easy NixOS installer that can be used from the installation ISO.
  • nix-installer - Opinonated alternative to the official Nix install scripts.

Channel History

  • Channel History - Get historical git commits for Nix channels.
  • Nix Infra Status - Get the age and current git commit of each Nix channel.
  • Nix Review Tools Reports - Reports showing problematic dependencies (dependencies causing the most failed builds) for major Hydra jobsets.
  • Nixpkgs Bot - A Matrix bot to track when a Nixpkgs pull request reaches a relevant branch.
  • nixpkgs PR tracker - A tracker for whether a PR has made it into a channel yet.

Deployment Tools

  • bento - A KISS deployment tool to keep your NixOS fleet (servers & workstations) up to date.
  • Colmena - A simple, stateless NixOS deployment tool modeled after NixOps and morph.
  • deploy-rs - A simple multi-profile Nix-flake deploy tool.
  • krops - A lightweight toolkit to deploy NixOS systems, remotely or locally.
  • KubeNix - A Kubernetes resource builder using Nix.
  • KuberNix - Single-dependency Kubernetes clusters via Nix packages.
  • morph - A tool for managing existing NixOS hosts.
  • Nixery - A Docker-compatible container registry which builds images ad-hoc via Nix.
  • Nixinate - A Nix flake library to provide app outputs for managing existing NixOS hosts over SSH.
  • NixOps - The official Nix deployment tool, compatible with AWS, Hetzner, and more.
  • pushnix - Simple cli utility that pushes NixOS configuration and triggers a rebuild using ssh.
  • terraform-nixos - A set of Terraform modules designed to deploy NixOS.
  • terranix - Use Nix and the NixOS module system to write your Terraform code.

Virtualisation

  • nixos-shell - Simple headless VM configuration using Nix (similar to Vagrant).
  • extra-container - Run declarative NixOS containers from the command line.
  • microvm - NixOS-based MicroVMs.

Command-Line Tools

  • alejandra - An opinionated Nix code formatter optimized for speed and consistency.
  • comma - Quickly run any binary; wraps together nix run and nix-index.
  • deadnix - Scan Nix files for dead code.
  • manix - Find configuration options and function documentation for Nixpkgs, NixOS, and Home Manager.
  • nixfmt - A formatter for Nix code, intended to easily apply a uniform style.
  • nixpkgs-fmt - Nix code formatter for nixpkgs.
  • nixpkgs-hammering - An opinionated linter for Nixpkgs package expressions.
  • nix-alien - Run unpatched binaries on Nix/NixOS easily.
  • nix-diff - A tool to explain why two Nix derivations differ.
  • nix-du - Visualise which gc-roots to delete to free some space in your Nix store.
  • nix-index - Quickly locate Nix packages with specific files.
  • nix-init - Generate Nix packages from URLs with hash prefetching, dependency inference, license detection, and more.
  • nix-melt - A ranger-like flake.lock viewer.
  • nix-output-monitor - A tool to produce useful graphs and statistics when building derivations.
  • nix-prefetch - A universal tool for updating source checksums.
  • nix-tree - Interactively browse the dependency graph of Nix derivations.
  • nurl - Generate Nix fetcher calls from repository URLs.
  • nvd - Diff package versions between two store paths; it's especially useful for comparing NixOS generations on rebuild.
  • statix - A linter/fixer to check for and fix antipatterns in Nix code.

Development

  • Arion - Run docker-compose with help from Nix/NixOS.
  • cached-nix-shell - A nix-shell replacement that uses caching to open subsequent shells quickly.
  • Cachix - Hosted binary cache service; free for open-source projects.
  • Devbox - Instant, portable, and predictable development environments.
  • devshell - mkShell with extra bits and a toml config option to be able to onboard non-nix users.
  • dream2nix - A framework for automatically converting packages from other build systems to Nix.
  • flake.parts - Minimal Nix modules framework for Flakes: split your flakes into modules and get things done with community modules.
  • flake-utils - Pure Nix flake utility functions to help with writing flakes.
  • flake-utils-plus - A lightweight Nix library flake for painless NixOS flake configuration.
  • flox - Manage and share development environments, package projects, and publish artifacts anywhere.
  • gitignore.nix - The most feature-complete and easy-to-use .gitignore integration.
  • haumea - Filesystem-based module system for the Nix language similar to traditional programming languages, with support for file hierarchy and visibility.
  • lorri - A much better nix-shell for development that augments direnv.
  • namaka - Snapshot testing for Nix based on haumea.
  • nil - NIx Language server, an incremental analysis assistent for writing in Nix.
  • niv - Easy dependency management for Nix projects with package pinning.
  • nix-direnv - A fast loader and flake-compliant configuration for the direnv environment auto-loader.
  • nix-update - Update versions/source hashes of nix packages.
  • nixd - Nix language server, based on Nix libraries.
  • nixpkgs-review - The best tool to verify that a pull-request in Nixpkgs is building properly.
  • pre-commit-hooks.nix - Run linters/formatters at commit time and on your CI.
  • rnix-lsp - A syntax-checking language server for Nix.
  • robotnix - A declarative and reproducible build system for Android (AOSP) images.

DevOps

  • Makes - A Nix-based CI/CD pipeline framework for building, testing, and releasing projects in any language, from anywhere.
  • Standard - An opinionated Nix Flakes framework to keep Nix code in large projects organized, accompanied by a friendly CLI/TUI optized for DevOps scenarios.

Programming Languages

Arduino

  • nixduino - Nix-based tool to help build Arduino sketches.

Clojure

  • clj-nix - Nix helper functions for Clojure projects.

Crystal

  • crystal2nix - Convert shard.lock into Nix expressions.

Elm

  • elm2nix - Convert elm.json into Nix expressions.

Haskell

  • cabal2nix - Converts a Cabal file into a Nix build expression.
  • haskell-flake - A flake-parts Nix module for Haskell development.
  • haskell.nix - Alternative Haskell Infrastructure for Nixpkgs.
  • nix-haskell-mode - Automatic Haskell setup in Emacs.
  • nixkell - A Haskell project template using Nix and direnv.

Node.js

  • Napalm - Support for building npm packages in Nix with a lightweight npm registry.
  • node2nix - Generate Nix expression from a package.json (or package-lock.json) (to be stored as files).
  • npmlock2nix - Generate Nix expressions from a package-lock.json (in-memory), primarily for web projects.

OCaml

  • opam2nix - Generate Nix expressions from opam packages.

PHP

  • composer2nix - Generate Nix expressions to build composer packages.
  • composer-plugin-nixify - Composer plugin to help with Nix packaging.
  • composition-c4 - Support for building composer packages from a composer.lock (using IFD).
  • nix-phps - Flake containing old and unmaintained PHP versions (intended for CI use).
  • nix-shell - Nix shells for PHP development.

PureScript

  • Easy PureScript Nix - A project to easily use PureScript and other tools with Nix.
  • purs-nix - CLI and library combo designed for managing PureScript projects using Nix. It provides a Nix API that can be used within your projects, as well as a command-line interface for managing your development process.

Python

  • pip2nix - A repository-agnostic Python package generator tool.
  • poetry2nix - Build Python packages directly from Poetry's poetry.lock. No conversion step needed.

Ruby

  • Bundix - Generates a Nix expression for your Bundler-managed application.
  • ruby-nix - Generates reproducible ruby/bundler app environment with Nix.

Rust

  • cargo2nix - Granular caching, development shell, Nix & Rust integration.
  • crane - A Nix library for building Cargo projects with incremental artifact caching.
  • fenix - Rust toolchains and Rust analyzer nightly for nix.
  • naersk - Build Rust packages directly from Cargo.lock. No conversion step needed.
  • nix-cargo-integration - A library that allows easy and effortless integration for Cargo projects.
  • nixpkgs-mozilla - Mozilla's overlay with Rust toolchains and Firefox.
  • rust-nix-templater - Generates Nix build and development files for Rust projects.
  • rust-overlay - Pure and reproducible nix overlay of binary distributed Rust toolchains.

Scala

NixOS Modules

  • base16.nix - Flake way to theme programs in base16 colorschemes, mustache template support included.
  • Home Manager - Manage your user configuration just like NixOS.
  • musnix - Do real-time audio work in NixOS.
  • nixcloud-webservices - A Nixpkgs extension with a focus on ease of deployment of web-related technologies.
  • NixVim - A NeoVim distribution built with Nix modules and Nixpkgs.
  • Simple Nixos Mailserver - A complete mailserver, managed with NixOS modules.
  • Stylix - System-wide colorscheming and typography for NixOS.
  • nix-bitcoin - Modules and packages for Bitcoin nodes with higher-layer protocols with an emphasis on security.

NixOS Configuration Editors

Desktop apps

Webinterface

  • MyNixOS - Graphical editor for Nix flakes. Create and manage configurations and modules for NixOS and Nix home-manager. Rather a Nix generator than a Nix editor, because it does not allow to import Nix files.

Overlays

  • awesome-nix-hpc - High Performance Computing package sets.
  • chaotic-nyx - Daily bumped bleeding edge packages like mesa_git & others that aren't yet in Nixpkgs. Created by the makers of Chaotic-AUR.
  • nix-darwin - Manage macOS configuration just like on NixOS.
  • nixpkgs-firefox-darwin - Automatically updated Firefox binary packages for macOS.
  • nixpkgs-wayland - Bleeding-edge Wayland packages.
  • NUR - Nix User Repositories. The mother of all overlays, allowing access to user repositories and installing packages via attributes.

Community

More Repositories

1

home-manager

Manage a user environment using Nix [maintainer=@rycee]
Nix
6,972
star
2

nixvim

Configure Neovim with Nix! [maintainer=@GaetanLepage, @traxys, @mattsturgeon, @khaneliman]
Nix
1,579
star
3

nixos-anywhere

install nixos everywhere via ssh [maintainer=@numtide]
Shell
1,574
star
4

disko

Declarative disk partitioning and formatting using nix [maintainer=@Lassulus]
Nix
1,487
star
5

nixos-generators

Collection of image builders [maintainer=@Lassulus]
Nix
1,338
star
6

nix-on-droid

Nix-enabled environment for your Android device. [maintainers=@t184256,@Gerschtli]
Nix
1,281
star
7

NixOS-WSL

NixOS on WSL(2) [maintainer=@nzbr]
Nix
1,236
star
8

nix-direnv

A fast, persistent use_nix/use_flake implementation for direnv [maintainer=@Mic92 / @bbenne10]
Nix
1,170
star
9

impermanence

Modules to help you handle persistent state on systems with ephemeral root storage [maintainer=@talyz]
Nix
1,134
star
10

dream2nix

Simplified nix packaging for various programming language ecosystems [maintainer=@DavHau]
Nix
976
star
11

NUR

Nix User Repository: User contributed nix packages [maintainer=@Mic92]
Python
882
star
12

nix-init

Generate Nix packages from URLs with hash prefetching, dependency inference, license detection, and more [maintainer=@figsoda]
Rust
844
star
13

nixd

Nix language server, based on nix libraries [maintainer=@inclyc,@Aleksanaa]
C++
842
star
14

comma

Comma runs software without installing it. [maintainers=@Artturin,@burke,@DavHau]
Rust
831
star
15

nix-index

Quickly locate nix packages with specific files [maintainers=@bennofs @figsoda @raitobezarius]
Rust
817
star
16

poetry2nix

Convert poetry projects to nix automagically [maintainer=@adisbladis,@cpcloud]
Nix
812
star
17

lanzaboote

Secure Boot for NixOS [maintainers=@blitz @raitobezarius @nikstur]
Rust
798
star
18

naersk

Build Rust projects in Nix - no configuration, no code generation, no IFD, sandbox friendly.
Nix
730
star
19

rnix-lsp

WIP Language Server for Nix! [maintainer=@aaronjanse]
Rust
702
star
20

lorri

Your project’s nix-env [maintainer=@Profpatsch,@nyarly]
Rust
659
star
21

fenix

Rust toolchains and rust-analyzer nightly for Nix [maintainer=@figsoda]
Nix
651
star
22

nixGL

A wrapper tool for nix OpenGL application [maintainer=@guibou]
Nix
650
star
23

nix-bundle

Bundle Nix derivations to run anywhere!
Nix
645
star
24

robotnix

Build Android (AOSP) using Nix [maintainer=@danielfullmer,@Atemu]
Nix
612
star
25

plasma-manager

Manage KDE Plasma with Home Manager
Nix
575
star
26

nixpkgs-wayland

Automated, pre-built packages for Wayland (sway/wlroots) tools for NixOS. [maintainers=@colemickens, @Artturin]
Nix
511
star
27

nixpkgs-fmt

Nix code formatter for nixpkgs [maintainer=@zimbatm]
Rust
503
star
28

emacs-overlay

Bleeding edge emacs overlay [maintainer=@adisbladis]
Nix
484
star
29

nurl

Generate Nix fetcher calls from repository URLs [maintainer=@figsoda]
Rust
451
star
30

vulnix

Vulnerability (CVE) scanner for Nix/NixOS.
Python
447
star
31

nixpkgs-update

Updating nixpkgs packages since 2018
Haskell
415
star
32

nixos-vscode-server

Visual Studio Code Server support in NixOS
Nix
377
star
33

crate2nix

rebuild only changed crates in CI with crate2nix and nix
Nix
354
star
34

rnix-parser

A Nix parser written in Rust [maintainer=@oberblastmeister]
Nix
353
star
35

terraform-nixos

A set of Terraform modules that are designed to deploy NixOS [maintainer=@adrian-gierakowski]
HCL
328
star
36

neovim-nightly-overlay

[maintainer=@GaetanLepage, @willruggiano]
Nix
315
star
37

srvos

NixOS profiles for servers [maintainer=@numtide]
Nix
297
star
38

haumea

Filesystem-based module system for Nix [maintainer=@figsoda]
Nix
286
star
39

trustix

Trustix: Distributed trust and reproducibility tracking for binary caches [maintainer=@adisbladis]
Go
284
star
40

nixbox

NixOS Vagrant boxes [maintainer=@zimbatm]
HCL
276
star
41

vscode-nix-ide

Nix language support for VSCode editor [maintainer: @jnoortheen]
TypeScript
260
star
42

NixNG

A linux distribution based on Nix [maintainer=@MagicRB]
Nix
256
star
43

nix-user-chroot

Install & Run nix without root permissions [maintainer=@Mic92]
Rust
243
star
44

nix-index-database

Weekly updated nix-index database [maintainer=@Mic92]
Nix
237
star
45

dconf2nix

🐾 Convert dconf files (e.g. GNOME Shell) to Nix, as expected by Home Manager [maintainer=@jtojnar]
Nix
228
star
46

nix-emacs

A set of useful Emacs modes and functions for users of Nix and Nix OS.
Emacs Lisp
226
star
47

nix-zsh-completions

ZSH Completions for Nix
Shell
225
star
48

nix-melt

A ranger-like flake.lock viewer [maintainer=@figsoda]
Rust
219
star
49

gomod2nix

Convert applications using Go modules to Nix expressions [maintainer=@adisbladis]
Nix
216
star
50

kickstart-nix.nvim

❄️ A dead simple Nix flake template repository for Neovim derivations [maintainer=@mrcjkb]
Lua
194
star
51

noogle

https://noogle.dev - nix function exploring. [maintainer=@hsjobeki]
Nix
194
star
52

pypi2nix

Abandoned! Generate Nix expressions for Python packages
Python
189
star
53

pip2nix

Freeze pip-installable packages into Nix expressions [maintainer=@datakurre]
Python
171
star
54

todomvc-nix

Example on how to nixify a project [maintainer=@Rizary]
Nix
169
star
55

flakelight

Framework for simplifying flake setup [maintainer=@accelbread]
Nix
159
star
56

tree-sitter-nix

Nix grammar for tree-sitter [maintainer=@cstrahan]
JavaScript
158
star
57

nix-environments

Repository to maintain out-of-tree shell.nix files (maintainer=@mic92)
Nix
156
star
58

nix-eval-jobs

Parallel nix evaluator with a streamable json output [maintainers @Mic92, @adisbladis]
C++
140
star
59

docker-nixpkgs

docker images from nixpkgs [maintainer=@zimbatm]
Nix
137
star
60

nix-ld-rs

Run unpatched dynamic binaries on NixOS [maintainer=@zhaofengli @Mic92]
Rust
137
star
61

linuxkit-nix

An easy to use Linux builder for macOS [maintainer=@nicknovitski]
Nix
133
star
62

nix-vscode-extensions

Nix expressions for VSCode and OpenVSX extensions [maintainers: @deemp, @AmeerTaweel]
Haskell
132
star
63

npmlock2nix

nixify npm based packages [maintainer=@andir]
Nix
130
star
64

nixos-install-scripts

collection of one-shot scripts to install NixOS on various server hosters and other hardware. [maintainer=@happysalada]
Shell
127
star
65

nixago

Generate configuration files using Nix [maintainer=@jmgilman]
Nix
125
star
66

nixdoc

Tool to generate documentation for Nix library functions [maintainer=@infinisil]
Nix
124
star
67

yarn2nix

Generate nix expressions from a yarn.lock file [maintainer=???]
Nix
123
star
68

nixpkgs-lint

A fast semantic linter for Nix using tree-sitter 🌳 + ❄️. [maintainers=@Artturin,@siraben]
Rust
120
star
69

dns.nix

A Nix DSL for DNS zone files [maintainers=@raitobezarius @kirelagin @Tom-Hubrecht]
Nix
116
star
70

namaka

Snapshot testing for Nix based on haumea [maintainer=@figsoda]
Rust
106
star
71

nix-unstable-installer

A place to host Nix unstable releases [maintainer=@lilyinstarlight]
Ruby
105
star
72

go-nix

Elements of Nix re-implemented as Go libraries [maintainer=@flokli]
Go
102
star
73

wiki

Nixos wiki [maintainer=@samueldr]
102
star
74

pyproject.nix

A collection of Nix utilities to work with Python projects [maintainer=@adisbladis]
Nix
101
star
75

nur-combined

A repository of NUR that combines all repositories [maintainer=@Mic92]
Nix
92
star
76

napalm

Support for building npm packages in Nix and lightweight npm registry [maintainer @jtojnar]
Nix
91
star
77

nixos-images

Automatically build (netboot) images for NixOS [maintainer=@Mic92]
Nix
90
star
78

vgo2nix

Convert go.mod files to nixpkgs buildGoPackage compatible deps.nix files [maintainer=@adisbladis]
Nix
89
star
79

nixt

Simple unit-testing for Nix [maintainer=@Lord-Valen]
TypeScript
87
star
80

nur-packages-template

A template for NUR repositories: [maintainer=@fgaz]
Nix
84
star
81

pnpm2nix

Load pnpm lock files into nix :) [maintainer=@adisbladis]
Nix
81
star
82

mineflake

Declarative Minecraft server in NixOS [unmaintained]
Rust
75
star
83

nix-github-actions

A library to turn Nix Flake attribute sets into Github Actions matrices [maintainer=@adisbladis]
Nix
75
star
84

buildbot-nix

A nixos module to make buildbot a proper Nix-CI [maintainer=@Mic92]
Python
74
star
85

infra

nix-community infrastructure [maintainer=@Mic92]
Nix
74
star
86

nix-data-science

Standard set of packages and overlays for data-scientists [maintainer=@tbenst]
Nix
72
star
87

zon2nix

Convert the dependencies in `build.zig.zon` to a Nix expression [maintainer=@figsoda]
Zig
68
star
88

hydra-check

check hydra for the build status of a package [maintainer=@makefu,@Artturin]
Python
66
star
89

kde2nix

Provisional, experimental Plasma 6 (and friends) pre-release packaging [maintainer=@K900]
Nix
66
star
90

nixpkgs.lib

nixpkgs lib for cheap instantiation [maintainer=@github-action] (with initial help from @blaggacao)
Nix
66
star
91

ethereum.nix

Nix packages and NixOS modules for the Ethereum ecosystem. [maintainers=@aldoborrero,@brianmcgee,@selfuryon]
Nix
65
star
92

setup.nix

Nixpkgs based build tools for declarative Python packages [maintainer=@datakurre]
Nix
64
star
93

nix-installers

Nix installers for legacy distributions (rpm & deb & pacman) [maintainer=@adisbladis]
Nix
62
star
94

nix-unit

Unit testing for Nix code [maintainer=@adisbladis]
C++
60
star
95

nix4vscode

Rust
53
star
96

redoxpkgs

Cross-compile to Redox using Nix [maintainer=@aaronjanse]
Nix
52
star
97

nix-ts-mode

An Emacs major mode for editing Nix expressions, powered by tree-sitter [maintainer=@remi-gelinas]
Emacs Lisp
50
star
98

patsh

A command-line tool for patching shell scripts inspired by resholve [maintainer=@figsoda]
Rust
48
star
99

mavenix

Deterministic Maven builds using Nix [maintainer=@icetan]
Nix
45
star
100

nixpkgs-pytools

Tools for removing the tedious nature of creating nixpkgs derivations [maintainer=@costrouc]
Python
44
star