Applications
From NixOS Wiki
Revision as of 11:24, 17 September 2023 by PatrickDaG (talk | contribs) (removed renamed Project/added deprecation warning)
This article lists applications built for and with Nix; it constitutes a listing of what may be called the Extended Nix Ecosystem.
Nix Derivatives
Various applications built on top of Nix:
- fractalide - Reusable Reproducible Composable Software
- not-os - build a system firmware for embedded devices
Built with Nix
Projects which leverage Nix.
- nix-bitcoin - Set of NixOS modules to install a bitcoin node with emphasis on security
- styx - Static site generator in Nix expression language
- bionix - manage and execute bioinformatics pipelines
Nix Platform
Projects which add support (e.g. for extra platforms or major capabilities) to Nix.
- nix-darwin - NixOS modules for Darwin
- musnix - real-time audio modules for NixOS
- nixGl - A wrapper to run OpenGL applications outside of NixOS
Nix Tooling
Various tools built for working with the Nix Ecosystem (e.g. enhancements or alternatives to core Nix tools).
General configuration
- home-manager - System for managing a user environment using Nix
Flakes
- dotfiles - Popular flake-based NixOS configuration template. Has hey management command
- deploy-rs - Nix flake deployment tool
digga - Flake utility library, based on flake-utils-plus(deprecated)- flake-utils-plus - Flake templates and helper library. Extension of below
- flake-utils - Set of flake-building utility functions
- flake-parts - Simplify Nix Flakes with the module system
Toolboxes
- nox - Tools to make Nix easier to use
- nix-update - Swiss army knife for updating nix packages
- nix-venient - A collection of convenient commands for working with nix/nixpkgs
Archives
- narfuse - FUSE filesystem for mounting Nix archive (NAR) files as a virtual Nix store
Clustering
- nix-delegate - Convenient utility for distributed Nix builds
Comparison
- nix-diff - Compare Nix derivations
- niff - Compare two Nix expressions to determine what attributes changes
Dependencies
- nix-visualize - Visualize the dependencies of a given package
- niv - Painless dependencies for Nix projects
Nix lang comprehension
- rnix-lsp - A language server which can provide in your text editor...
- Syntax checking, completion, renaming, go to definition, code formatting (with nixpkgs-fmt), etc.
- Supported in vim/neovim, Emacs, VSCode, Kakoune
- statix - Linter and suggestions for the nix programming language
- nixfmt - A formatter for Nix code
- nixpkgs-fmt - Nix code formatter for nixpkgs
- deadnix - Removes unused code from .nix files
- nil - Nix Language server, an incremental analysis assistent for writing in Nix.
Package maintenance
- nix-upgrade-scripts - Tools for Nixpkgs maintainers to upgrade packages
- nixpkgs-review - Review nixpkgs pull requests
Debugging
- dwarffs - Fetches DWARF debug info files for gdb automatically from cache.nixos.org
- nixseparatedebuginfod - Fetches debug symbols and source files for debuginfod-capables tools like gdb
Search
- nix-index - Quickly locate nix packages with specific files
- nix-du - Find which gc-roots take disk space in a nix store
- nix-info - Homebrew info querying for Nix
- userscan - Scans directories containing manually compiled programs and registers them with the Nix garbage collector
Shell
- nix-bash-completions - Bash completion for
nix*
commands - nixos-shell (Mic92) - Spawns lightweight nixos vms in a shell (like vagrant)
- nixos-shell (chrisfarms) - like nix-shell, but for NixOS modules. Buildable version can be found in this fork
- extra-container - Run declarative NixOS containers from the command line. Similar to nixos-shell (chrisfarms)
Other
- nix-bundle - package Nix attributes into single-file executables.
- nix-user-chroot - install Nix as an unpriviliged user on any system
Nix Operations
Operations tools for the Nix Ecosystem:
Official
- Hydra - Nix's official continuous integration and build system.
- NixOps - Nix's official tool for deploying to NixOS machines in a network or the cloud.
Deployment
- colmena - a NixOS deployment tool
- deploy-rs - a simple multi-profile Nix-flake deploy tool
- Morph - a NixOS deployment tool
- Nixus - an experimental NixOS deployment tool
- nixcloud-webservices - nixpkgs extension for web-related technologies
- Bento - a NixOS fleet manager supporting remote systems not up 24/7
Docker
Kubernetes
- kubenix - Kubernetes resource builder written in Nix
- nix-kubernetes - Kubernetes deployment manager written in nix
Microservices
- Disnix - a microservice architecture built with Nix.
- nixops-manager - NixOps wrapper for Git repositories
- krops - a stateless alternative to nixops with improved secret management.
- morph - a stateless alternative to nixops, deployment files mostly compatible to nixops's none backend
Alternative nix implementations & parser
- hnix (haskell, parser & evaluator)
- rnix (rust, parser)
- go-nix (go, parser & nix-compatible file hasher)
- nix-idea (java, parser)
See also
- Language-specific package helpers
- Alternative Package Sets
- Get inspiration from other peoples NixOS configuration
- NixOS Packages Search for searching through NixOS packages
- awesome-nix