Applications: Difference between revisions

Haruki7049 (talk | contribs)
Prepared the page for translation
Haruki7049 (talk | contribs)
Marked this version for translation
Line 1: Line 1:
<languages/>
<languages/>
<translate>
<translate>
<!--T:1-->
This article lists applications built for and with Nix; it constitutes a listing of what may be called the '''''Extended Nix Ecosystem''''' (see [[Special:MyLanguage/Nix Ecosystem|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 [[Special:MyLanguage/Nix Ecosystem|Nix Ecosystem]] for the Core Nix Ecosystem).


<!--T:2-->
If you are looking for Linux software/applications you should look at [[:Category:Software|Software]] or its sub-article [[:Category:Software|Applications]].
If you are looking for Linux software/applications you should look at [[:Category:Software|Software]] or its sub-article [[:Category:Software|Applications]].


== Non-NixOS Distributions ==
== Non-NixOS Distributions == <!--T:3-->


<!--T:4-->
Various applications built on top of Nix:
Various applications built on top of Nix:


<!--T:5-->
* [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 ==
== Built with Nix == <!--T:6-->


<!--T:7-->
Projects which leverage Nix.
Projects which leverage Nix.


<!--T:8-->
* [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
Line 20: Line 26:
* [https://gitlab.com/simple-nixos-mailserver/nixos-mailserver nixos-mailserver] - A complete and Simple NixOS Mailserver
* [https://gitlab.com/simple-nixos-mailserver/nixos-mailserver nixos-mailserver] - A complete and Simple NixOS Mailserver


== Nix Platform ==
== Nix Platform == <!--T:9-->


<!--T:10-->
Projects which add support (e.g. for extra platforms or major capabilities) to Nix.
Projects which add support (e.g. for extra platforms or major capabilities) to Nix.


<!--T:11-->
* [https://github.com/LnL7/nix-darwin nix-darwin] - NixOS modules for Darwin
* [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/musnix/musnix musnix] - real-time audio modules for NixOS
* [https://github.com/guibou/nixGL nixGl] - A wrapper to run OpenGL applications outside of NixOS
* [https://github.com/guibou/nixGL nixGl] - A wrapper to run OpenGL applications outside of NixOS


== Nix Tooling ==
== Nix Tooling == <!--T:12-->


<!--T:13-->
Various tools built for working with the Nix Ecosystem (e.g. enhancements or alternatives to core Nix tools).
Various tools built for working with the Nix Ecosystem (e.g. enhancements or alternatives to core Nix tools).


=== General configuration ===
=== General configuration === <!--T:14-->


<!--T:15-->
* [https://github.com/rycee/home-manager home-manager] - System for managing a user environment using Nix
* [https://github.com/rycee/home-manager home-manager] - System for managing a user environment using Nix
* [https://github.com/pjones/plasma-manager plasma-manager] - manage KDE Plasma with Home-manager
* [https://github.com/pjones/plasma-manager plasma-manager] - manage KDE Plasma with Home-manager


== About ==
== About == <!--T:16-->


=== Flakes ===
=== Flakes === <!--T:17-->


<!--T:18-->
* [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 47: Line 58:
* [https://snowfall.org/ snowfall] - Unified configuration for systems, packages, modules, shells, templates, and more with Nix Flakes.  
* [https://snowfall.org/ snowfall] - Unified configuration for systems, packages, modules, shells, templates, and more with Nix Flakes.  


=== Archives ===
=== Archives === <!--T:19-->


<!--T:20-->
* [https://github.com/taktoa/narfuse narfuse] - FUSE filesystem for mounting Nix archive (NAR) files as a virtual Nix store
* [https://github.com/taktoa/narfuse narfuse] - FUSE filesystem for mounting Nix archive (NAR) files as a virtual Nix store


=== Clustering ===
=== Clustering === <!--T:21-->


<!--T:22-->
* [https://github.com/awakesecurity/nix-delegate nix-delegate] - Convenient utility for distributed Nix builds
* [https://github.com/awakesecurity/nix-delegate nix-delegate] - Convenient utility for distributed Nix builds


=== Comparison ===
=== Comparison === <!--T:23-->


<!--T:24-->
* [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://gitlab.com/khumba/nvd nvd] - Nix/NixOS package version diff tool
* [https://gitlab.com/khumba/nvd nvd] - Nix/NixOS package version diff tool


=== Dependencies ===
=== Dependencies === <!--T:25-->


<!--T:26-->
* [https://github.com/craigmbooth/nix-visualize nix-visualize] - Visualize the dependencies of a given package
* [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
* [https://github.com/nmattia/niv niv] - Painless dependencies for Nix projects


=== Nix lang comprehension ===
=== Nix lang comprehension === <!--T:27-->


<!--T:28-->
* [https://github.com/astro/deadnix deadnix] - Removes unused code from .nix files
* [https://github.com/astro/deadnix deadnix] - Removes unused code from .nix files


<!--T:29-->
* [https://github.com/nerdypepper/statix statix] - Linter and suggestions for the nix programming language
* [https://github.com/nerdypepper/statix statix] - Linter and suggestions for the nix programming language
* [https://github.com/oxalica/nil nil] - Nix Language server, an incremental analysis assistant for writing in Nix.
* [https://github.com/oxalica/nil nil] - Nix Language server, an incremental analysis assistant for writing in Nix.
Line 75: Line 92:
* [https://github.com/nix-community/nixpkgs-fmt nixpkgs-fmt] - Nix code formatter for nixpkgs
* [https://github.com/nix-community/nixpkgs-fmt nixpkgs-fmt] - Nix code formatter for nixpkgs


=== Package maintenance ===
=== Package maintenance === <!--T:30-->


<!--T:31-->
* [https://github.com/Mic92/nix-update/ nix-update] - Swiss-knife for updating nix packages.  
* [https://github.com/Mic92/nix-update/ nix-update] - Swiss-knife for updating nix packages.  
* [https://github.com/Mic92/nixpkgs-review nixpkgs-review] - Review nixpkgs pull requests
* [https://github.com/Mic92/nixpkgs-review nixpkgs-review] - Review nixpkgs pull requests


=== Debugging ===
=== Debugging === <!--T:32-->


<!--T:33-->
* [https://github.com/edolstra/dwarffs dwarffs] - Fetches DWARF debug info files for gdb automatically from cache.nixos.org
* [https://github.com/edolstra/dwarffs dwarffs] - Fetches DWARF debug info files for gdb automatically from cache.nixos.org
* [https://github.com/symphorien/nixseparatedebuginfod nixseparatedebuginfod] - Fetches debug symbols and source files for debuginfod-capables tools like gdb
* [https://github.com/symphorien/nixseparatedebuginfod nixseparatedebuginfod] - Fetches debug symbols and source files for debuginfod-capables tools like gdb


=== Search ===
=== Search === <!--T:34-->


<!--T:35-->
* [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
Line 93: Line 113:
* [https://github.com/peterldowns/nix-search-cli nix-search-cli] - CLI for searching packages on search.nixos.org
* [https://github.com/peterldowns/nix-search-cli nix-search-cli] - CLI for searching packages on search.nixos.org


=== Shell ===
=== Shell === <!--T:36-->


<!--T:37-->
* [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/Mic92/nixos-shell nixos-shell (Mic92)] - Spawns lightweight nixos vms in a shell (like vagrant)
* [https://github.com/Mic92/nixos-shell nixos-shell (Mic92)] - Spawns lightweight nixos vms in a shell (like vagrant)
Line 100: Line 121:
* [https://github.com/erikarvstedt/extra-container extra-container] - Run declarative NixOS containers from the command line. Similar to nixos-shell (chrisfarms)
* [https://github.com/erikarvstedt/extra-container extra-container] - Run declarative NixOS containers from the command line. Similar to nixos-shell (chrisfarms)


=== Other ===
=== Other === <!--T:38-->


<!--T:39-->
* [https://github.com/matthewbauer/nix-bundle nix-bundle] - package Nix attributes into single-file executables.
* [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
* [https://github.com/lethalman/nix-user-chroot nix-user-chroot] - install Nix as an unpriviliged user on any system
* [https://github.com/ViperML/nh 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.
* [https://github.com/ViperML/nh 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 ==
== Nix Operations == <!--T:40-->


<!--T:41-->
Operations tools for the Nix Ecosystem:
Operations tools for the Nix Ecosystem:


=== Official ===
=== Official === <!--T:42-->


<!--T:43-->
* [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 NixOps] - Nix's official (but unmaintained) tool for deploying to NixOS machines in a network or the cloud.
* [https://github.com/NixOS/nixops NixOps] - Nix's official (but unmaintained) tool for deploying to NixOS machines in a network or the cloud.


=== Deployment ===
=== Deployment === <!--T:44-->


<!--T:45-->
* [https://github.com/rapenne-s/bento Bento] - a NixOS fleet manager supporting remote systems not up 24/7
* [https://github.com/rapenne-s/bento Bento] - a NixOS fleet manager supporting remote systems not up 24/7


<!--T:46-->
* [https://github.com/zhaofengli/colmena colmena] - a NixOS deployment tool
* [https://github.com/zhaofengli/colmena colmena] - a NixOS deployment tool
* comin - A deployment tool to continuously pull from Git repositories.
* comin - A deployment tool to continuously pull from Git repositories.
* [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


<!--T:47-->
* [[Special:MyLanguage/krops|krops]] - a lightweight toolkit to deploy NixOS systems, remotely or locally
* [[Special:MyLanguage/krops|krops]] - a lightweight toolkit to deploy NixOS systems, remotely or locally
* [https://github.com/pinpox/lollypops lollypops] - a parallel and stateless NixOS deployment tool
* [https://github.com/pinpox/lollypops lollypops] - a parallel and stateless NixOS deployment tool
Line 131: Line 158:
* [https://github.com/Infinisil/nixus Nixus] - an experimental NixOS deployment tool
* [https://github.com/Infinisil/nixus Nixus] - an experimental NixOS deployment tool


=== Docker ===
=== Docker === <!--T:48-->


<!--T:49-->
* [https://github.com/hercules-ci/arion Arion] - configure Docker Compose with Nix modules
* [https://github.com/hercules-ci/arion Arion] - configure Docker Compose with Nix modules
* [https://nixery.dev Nixery ] - ad-hoc container images from Nix
* [https://nixery.dev Nixery ] - ad-hoc container images from Nix


=== Kubernetes ===
=== Kubernetes === <!--T:50-->


<!--T:51-->
* [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


== Alternative nix implementations & parser ==
== Alternative nix implementations & parser == <!--T:52-->


<!--T:53-->
* [https://github.com/jwiegley/hnix hnix] (haskell, parser & evaluator)
* [https://github.com/jwiegley/hnix hnix] (haskell, parser & evaluator)
* [https://github.com/nix-community/rnix-parser rnix] (rust, parser)
* [https://github.com/nix-community/rnix-parser rnix] (rust, parser)
Line 148: Line 178:
* [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)


== Additional inofficial ecosystem ==
== Additional inofficial ecosystem == <!--T:54-->


<!--T:55-->
None of the services are required to use Nix. None of these services are affiliated with the [[Special:MyLanguage/NixOS Foundation|NixOS Foundation]].
None of the services are required to use Nix. None of these services are affiliated with the [[Special:MyLanguage/NixOS Foundation|NixOS Foundation]].


<!--T:56-->
; [https://cachix.org Cachix]: binary caches as a service. Free for public caches, subscription for private token-protected caches.
; [https://cachix.org Cachix]: binary caches as a service. Free for public caches, subscription for private token-protected caches.
; [https://hercules-ci.com Hercules CI]: simplify your CI setup with stateless build agents. Free for open source, per-user subscription for private repositories.
; [https://hercules-ci.com Hercules CI]: simplify your CI setup with stateless build agents. Free for open source, per-user subscription for private repositories.
Line 157: Line 189:
; [https://nixbuild.net/ nixbuild.net]: remote Nix builders as a service for x86_64 and AArch64. Pay-per-use.
; [https://nixbuild.net/ nixbuild.net]: remote Nix builders as a service for x86_64 and AArch64. Pay-per-use.


== See also ==
== See also == <!--T:57-->


<!--T:58-->
* [https://github.com/nix-community/awesome-nix awesome-nix]
* [https://github.com/nix-community/awesome-nix awesome-nix]
* [[Special:MyLanguage/Language-specific package helpers|Language-specific package helpers]]
* [[Special:MyLanguage/Language-specific package helpers|Language-specific package helpers]]