Difference between revisions of "Applications"
From NixOS Wiki
(add much more structure to document) |
|||
Line 6: | Line 6: | ||
* [https://github.com/fractalide/fractalide fractalide] - Reusable Reproducible Composable Software | * [https://github.com/fractalide/fractalide fractalide] - Reusable Reproducible Composable Software | ||
− | |||
− | |||
− | |||
− | |||
* [https://github.com/cleverca22/not-os not-os] - build a system firmware for embedded devices | * [https://github.com/cleverca22/not-os not-os] - build a system firmware for embedded devices | ||
+ | |||
+ | == Built with Nix == | ||
+ | |||
+ | Projects which leverage Nix. | ||
+ | |||
+ | * [https://github.com/nixbitcoin/nix-bitcoin/ nix-bitcoin] - Set of NixOS modules to install a bitcoin node with emphasis on security | ||
* [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/ | + | * [https://github.com/PapenfussLab/bionix bionix] - manage and execute bioinformatics pipelines |
− | * [https://github.com/ | + | |
− | * [https://github.com/ | + | == Nix Platform == |
+ | |||
+ | Projects which add support (e.g. for extra platforms or major capabilities) to Nix. | ||
+ | |||
+ | * [https://github.com/LnL7/nix-darwin nix-darwin] - NixOS modules for Darwin | ||
+ | * [https://github.com/musnix/musnix musnix] - real-time audio modules for NixOS | ||
+ | * [https://github.com/guibou/nixGL nixGl] - A wrapper to run OpenGL applications outside of NixOS | ||
+ | |||
+ | == Deployment == | ||
+ | |||
+ | Projects which focus on deployment cases for Nix. | ||
+ | |||
* [https://github.com/nixcloud/nixcloud-webservices nixcloud-webservices] - nixpkgs extension for web-related technologies | * [https://github.com/nixcloud/nixcloud-webservices nixcloud-webservices] - nixpkgs extension for web-related technologies | ||
− | |||
− | |||
− | |||
− | |||
== Nix Tooling == | == Nix Tooling == | ||
− | Various tools built for working with the Nix Ecosystem: | + | Various tools built for working with the Nix Ecosystem (e.g. enhancements or alternatives to core Nix tools). |
+ | |||
+ | === General configuration === | ||
+ | * [https://github.com/rycee/home-manager home-manager] - System for managing a user environment using Nix | ||
− | * [https://github.com/ | + | === Toolboxes === |
+ | * [https://github.com/madjar/nox nox] - Tools to make Nix easier to use | ||
* [https://github.com/Mic92/nix-update nix-update] - Swiss army knife for updating nix packages | * [https://github.com/Mic92/nix-update nix-update] - Swiss army knife for updating nix packages | ||
− | * [https://github.com/ | + | * [https://github.com/holidaycheck/nix-venient nix-venient] - A collection of convenient commands for working with nix/nixpkgs |
+ | |||
+ | === Archives === | ||
+ | * [https://github.com/taktoa/narfuse narfuse] - FUSE filesystem for mounting Nix archive (NAR) files as a virtual Nix store | ||
+ | |||
+ | === Clustering === | ||
+ | * [https://github.com/awakesecurity/nix-delegate nix-delegate] - Convenient utility for distributed Nix builds | ||
+ | |||
+ | === Comparison === | ||
* [https://github.com/Gabriel439/nix-diff nix-diff] - Compare Nix derivations | * [https://github.com/Gabriel439/nix-diff nix-diff] - Compare Nix derivations | ||
* [https://github.com/FRidh/niff niff] - Compare two Nix expressions to determine what attributes changes | * [https://github.com/FRidh/niff niff] - Compare two Nix expressions to determine what attributes changes | ||
+ | * [https://github.com/Mic92/nixpkgs-review nixpkgs-review] - Review nixpkgs pull requests | ||
+ | |||
+ | === Dependencies === | ||
+ | * [https://github.com/craigmbooth/nix-visualize nix-visualize] - Visualize the dependencies of a given package | ||
+ | * [https://github.com/nmattia/niv niv] - Painless dependencies for Nix projects | ||
+ | |||
+ | === Nix lang comprehension === | ||
+ | * [https://github.com/serokell/nixfmt nixfmt] - A formatter for Nix code | ||
+ | |||
+ | === Package maintenance === | ||
+ | * [https://github.com/peterhoeg/nix-upgrade-scripts nix-upgrade-scripts] - Tools for Nixpkgs maintainers to upgrade packages | ||
+ | |||
+ | === Search === | ||
* [https://github.com/bennofs/nix-index nix-index] - Quickly locate nix packages with specific files | * [https://github.com/bennofs/nix-index nix-index] - Quickly locate nix packages with specific files | ||
− | |||
* [https://github.com/symphorien/nix-du nix-du] - Find which gc-roots take disk space in a nix store | * [https://github.com/symphorien/nix-du nix-du] - Find which gc-roots take disk space in a nix store | ||
* [https://github.com/nix-hackers/nix-info nix-info] - Homebrew info querying for Nix | * [https://github.com/nix-hackers/nix-info nix-info] - Homebrew info querying for Nix | ||
− | * [https://github.com/ | + | * [https://github.com/flyingcircusio/userscan userscan] - Scans directories containing manually compiled programs and registers them with the Nix garbage collector |
− | + | ||
− | + | === Shell === | |
− | |||
− | |||
− | |||
− | |||
− | |||
* [https://github.com/hedning/nix-bash-completions nix-bash-completions] - Bash completion for <code>nix*</code> commands | * [https://github.com/hedning/nix-bash-completions nix-bash-completions] - Bash completion for <code>nix*</code> commands | ||
− | * [https://github.com/ | + | * [https://github.com/Mic92/nixos-shell nixos-shell (Mic92)] - Spawns lightweight nixos vms in a shell (like vagrant) |
− | * [https://github.com/ | + | * [https://github.com/chrisfarms/nixos-shell nixos-shell (chrisfarms)] - like nix-shell, but for NixOS modules. Buildable version can be found [https://github.com/wavewave/nixos-shell/tree/submodule in this fork] |
+ | * [https://github.com/erikarvstedt/extra-container extra-container] - Run declarative NixOS containers from the command line. Similar to nixos-shell (chrisfarms) | ||
+ | |||
+ | === Other === | ||
+ | * [https://github.com/matthewbauer/nix-bundle nix-bundle] - package Nix attributes into single-file executables. | ||
+ | * [https://github.com/lethalman/nix-user-chroot nix-user-chroot] - install Nix as an unpriviliged user on any system | ||
== Nix Operations == | == Nix Operations == | ||
Line 50: | Line 83: | ||
Operations tools for the Nix Ecosystem: | Operations tools for the Nix Ecosystem: | ||
+ | === Official === | ||
* [https://github.com/nixos/hydra Hydra] - Nix's official continuous integration and build system. | * [https://github.com/nixos/hydra Hydra] - Nix's official continuous integration and build system. | ||
+ | * [https://github.com/NixOS/nixops] - Nix's official tool for deploying to NixOS machines in a network or the cloud. | ||
+ | |||
+ | === Deployment === | ||
+ | * [https://github.com/serokell/deploy-rs deploy-rs] - a simple multi-profile Nix-flake deploy tool | ||
+ | * [https://github.com/TaktInc/hail Hail] - a service for pull-based continuous deployment. | ||
+ | * [https://github.com/DBCDK/morph Morph] - a NixOS deployment tool | ||
+ | |||
+ | === Docker === | ||
+ | * [https://github.com/hercules-ci/arion Arion] - configure Docker Compose with Nix modules | ||
+ | * [https://nixery.dev Nixery ] - ad-hoc container images from Nix | ||
+ | |||
+ | === Kubernetes === | ||
* [https://github.com/xtruder/kubenix kubenix] - Kubernetes resource builder written in Nix | * [https://github.com/xtruder/kubenix kubenix] - Kubernetes resource builder written in Nix | ||
* [https://github.com/xtruder/nix-kubernetes nix-kubernetes] - Kubernetes deployment manager written in nix | * [https://github.com/xtruder/nix-kubernetes nix-kubernetes] - Kubernetes deployment manager written in nix | ||
+ | |||
+ | === Microservices === | ||
* [https://github.com/svanderburg/disnix Disnix] - a microservice architecture built with Nix. | * [https://github.com/svanderburg/disnix Disnix] - a microservice architecture built with Nix. | ||
− | * [https://github.com/ | + | |
− | * [https:// | + | === NixOps related === |
− | + | * [https://github.com/grafted-in/nixops-manager nixops-manager] - NixOps wrapper for Git repositories | |
− | + | * [https://cgit.krebsco.de/krops/about/ krops] - a stateless alternative to nixops with improved secret management. | |
− | * [https://github.com/ | + | * [https://github.com/DBCDK/morph morph] - a stateless alternative to nixops, deployment files mostly compatible to nixops's none backend |
== Alternative nix implementations & parser == | == Alternative nix implementations & parser == |
Revision as of 04:43, 20 September 2021
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
Deployment
Projects which focus on deployment cases for Nix.
- nixcloud-webservices - nixpkgs extension for web-related technologies
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
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
- nixpkgs-review - Review nixpkgs pull requests
Dependencies
- nix-visualize - Visualize the dependencies of a given package
- niv - Painless dependencies for Nix projects
Nix lang comprehension
- nixfmt - A formatter for Nix code
Package maintenance
- nix-upgrade-scripts - Tools for Nixpkgs maintainers to upgrade packages
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.
- [1] - Nix's official tool for deploying to NixOS machines in a network or the cloud.
Deployment
- deploy-rs - a simple multi-profile Nix-flake deploy tool
- Hail - a service for pull-based continuous deployment.
- Morph - a NixOS deployment tool
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