Applications: Difference between revisions
Minor rewording; dropped sensitive-and-outdated projects |
|||
Line 2: | Line 2: | ||
This article lists applications built for and with Nix; it constitutes a listing of what may be called the '''''Extended Nix Ecosystem''''' (see [[Nix Ecosystem]] for the Core Nix Ecosystem). | This article lists applications built for and with Nix; it constitutes a listing of what may be called the '''''Extended Nix Ecosystem''''' (see [[Nix Ecosystem]] for the Core Nix Ecosystem). | ||
== | == Non-NixOS Distributions == | ||
Various applications built on top of Nix: | Various applications built on top of Nix: | ||
Line 12: | Line 12: | ||
Projects which leverage Nix. | Projects which leverage Nix. | ||
* [https://github.com/styx-static/styx styx] - Static site generator in Nix expression language | * [https://github.com/styx-static/styx styx] - Static site generator in Nix expression language | ||
* [https://github.com/PapenfussLab/bionix bionix] - manage and execute bioinformatics pipelines | * [https://github.com/PapenfussLab/bionix bionix] - manage and execute bioinformatics pipelines | ||
* [https://nix-community.github.io/ethereum.nix/ ethereum.nix] - A collection of Nix packages and NixOS modules designed to make it easier to operate Ethereum related services and infrastructure | * [https://nix-community.github.io/ethereum.nix/ ethereum.nix] - A collection of Nix packages and NixOS modules designed to make it easier to operate Ethereum related services and infrastructure | ||
* [https://gitlab.com/simple-nixos-mailserver/nixos-mailserver nixos-mailserver] - A complete and Simple | * [https://gitlab.com/simple-nixos-mailserver/nixos-mailserver nixos-mailserver] - A complete and Simple NixOS Mailserver | ||
== Nix Platform == | == Nix Platform == | ||
Line 34: | Line 33: | ||
=== Flakes === | === Flakes === | ||
* [https://github.com/serokell/deploy-rs deploy-rs] - Nix flake deployment tool | * [https://github.com/serokell/deploy-rs deploy-rs] - Nix flake deployment tool | ||
* [https://github.com/gytis-ivaskevicius/flake-utils-plus flake-utils-plus] - Flake templates and helper library. Extension of below | * [https://github.com/gytis-ivaskevicius/flake-utils-plus flake-utils-plus] - Flake templates and helper library. Extension of below | ||
Line 102: | Line 100: | ||
* [https://github.com/zhaofengli/colmena colmena] - a NixOS deployment tool | * [https://github.com/zhaofengli/colmena colmena] - a NixOS deployment tool | ||
* [https://github.com/serokell/deploy-rs deploy-rs] - a simple multi-profile Nix-flake deploy tool | * [https://github.com/serokell/deploy-rs deploy-rs] - a simple multi-profile Nix-flake deploy tool | ||
* [https://github.com/pinpox/lollypops lollypops] - a parallel and | * [https://github.com/pinpox/lollypops lollypops] - a parallel and stateless NixOS deployment tool | ||
* [https://github.com/DBCDK/morph Morph] - a NixOS deployment tool | * [https://github.com/DBCDK/morph Morph] - a NixOS deployment tool | ||
* [https://github.com/Infinisil/nixus Nixus] - an experimental NixOS deployment tool | * [https://github.com/Infinisil/nixus Nixus] - an experimental NixOS deployment tool | ||
Line 121: | Line 119: | ||
* [https://github.com/orivej/go-nix go-nix] (go, parser & nix-compatible file hasher) | * [https://github.com/orivej/go-nix go-nix] (go, parser & nix-compatible file hasher) | ||
* [https://github.com/NixOS/nix-idea/tree/master/src/gen/java/org/nixos/idea/lang nix-idea] (java, parser) | * [https://github.com/NixOS/nix-idea/tree/master/src/gen/java/org/nixos/idea/lang nix-idea] (java, parser) | ||
== See also == | == See also == | ||
Revision as of 00:08, 5 April 2024
This article lists applications built for and with Nix; it constitutes a listing of what may be called the Extended Nix Ecosystem (see Nix Ecosystem for the Core Nix Ecosystem).
Non-NixOS Distributions
Various applications built on top of Nix:
- not-os - build a system firmware for embedded devices
Built with Nix
Projects which leverage Nix.
- styx - Static site generator in Nix expression language
- bionix - manage and execute bioinformatics pipelines
- ethereum.nix - A collection of Nix packages and NixOS modules designed to make it easier to operate Ethereum related services and infrastructure
- nixos-mailserver - A complete and Simple NixOS Mailserver
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
- deploy-rs - Nix flake deployment tool
- 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
- snowfall - Unified configuration for systems, packages, modules, shells, templates, and more with Nix Flakes.
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
- nvd - Nix/NixOS package version diff tool
Dependencies
- nix-visualize - Visualize the dependencies of a given package
- niv - Painless dependencies for Nix projects
Nix lang comprehension
- deadnix - Removes unused code from .nix files
- statix - Linter and suggestions for the nix programming language
- nil - Nix Language server, an incremental analysis assistant for writing in Nix.
- nixfmt - A formatter for Nix code
- nixpkgs-fmt - Nix code formatter for nixpkgs
Package maintenance
- nix-update - Swiss-knife for updating nix 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
- nix-search-cli - CLI for searching packages on search.nixos.org
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
- nh - a rewrite of nixos-rebuild featuring diffs with nvd and a tree of builds with nix-output-manager, as well as other quality of life features such as package searching.
Nix Operations
Operations tools for the Nix Ecosystem:
Official
- Hydra - Nix's official continuous integration and build system.
- NixOps - Nix's official (but unmaintained) 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
- lollypops - a parallel and stateless NixOS deployment tool
- Morph - a NixOS deployment tool
- Nixus - an experimental NixOS deployment tool
- 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
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
- awesome-nix
- Language-specific package helpers
- Alternative Package Sets
- Get inspiration from other peoples NixOS configuration
- NixOS Packages Search for searching through NixOS packages