Difference between revisions of "Nixpkgs"

From NixOS Wiki
Jump to: navigation, search
m (use nixos:latest template)
m (remove section accidentally added to wrong page)
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
'''Nixpkgs''' is the largest repository of [[Nix]] packages and [[NixOS]] modules. The repository is [https://github.com/nixos/nixpkgs hosted on GitHub] and maintained by the community, with official backing from the [https://nixos.org NixOS Foundation].
 
'''Nixpkgs''' is the largest repository of [[Nix]] packages and [[NixOS]] modules. The repository is [https://github.com/nixos/nixpkgs hosted on GitHub] and maintained by the community, with official backing from the [https://nixos.org NixOS Foundation].
 +
 +
As highlighted in [https://nixos.org/blog/announcements.html#21.05  the announcement] of the NixOS 21.05 release, ''"NixOS is already known as [https://repology.org/repositories/statistics/newest the most up to date distribution] and is [https://repology.org/repositories/statistics/total in the top three by total number of packages]."'' This is thanks to the community's continued dedication to making Nixpkgs the preeminent Linux package repository.
  
 
== Subpages ==
 
== Subpages ==
 +
 
There are a number of articles especially related to working with <tt>nixpkgs</tt>:
 
There are a number of articles especially related to working with <tt>nixpkgs</tt>:
 
{{Special:PrefixIndex/{{FULLPAGENAME}}/ |hideredirects=1 |stripprefix=1}}
 
{{Special:PrefixIndex/{{FULLPAGENAME}}/ |hideredirects=1 |stripprefix=1}}
  
 
== Channels ==
 
== Channels ==
 +
 
{{main|Nix Channels}}
 
{{main|Nix Channels}}
  
Line 19: Line 23:
  
 
== Alternatives ==
 
== Alternatives ==
 +
 
Due to the fact that nixpkgs is ''only'' a nix expression it is possible to extend or replace the logic with your own sources.
 
Due to the fact that nixpkgs is ''only'' a nix expression it is possible to extend or replace the logic with your own sources.
 
In fact, there are a number of extensions as well as complete replacements for '''Nixpkgs''', see the [[Alternative Package Sets]] article.
 
In fact, there are a number of extensions as well as complete replacements for '''Nixpkgs''', see the [[Alternative Package Sets]] article.
  
 
+
[[Category:Pedias]]
[[Category:Discussion]]
 
 
[[Category:Nixpkgs]]
 
[[Category:Nixpkgs]]
 +
[[Category:Nix]]
 +
[[Category:Software]]

Latest revision as of 06:55, 20 September 2021

Nixpkgs is the largest repository of Nix packages and NixOS modules. The repository is hosted on GitHub and maintained by the community, with official backing from the NixOS Foundation.

As highlighted in the announcement of the NixOS 21.05 release, "NixOS is already known as the most up to date distribution and is in the top three by total number of packages." This is thanks to the community's continued dedication to making Nixpkgs the preeminent Linux package repository.

Subpages

There are a number of articles especially related to working with nixpkgs:

Channels

Main article: Nix Channels

The packages and modules hosted on Nixpkgs are sorted in various channels intended for various use-cases, and in practice are differentiated by the level of testing updates must pass on the official nixos.org hydra instance and the number of updates propagated to the channel.

For Nix users, nixpkgs-unstable is the bleeding-edge, where packages pass only basic build tests and are upgraded continuously.

For NixOS users, nixos-unstable is the bleeding-edge, where packages pass build tests and integration tests on a VM, and are tested from the perspective of being an operative system (this means things like the X server, KDE, various servers, and lower level details like installing bootloaders and runnning the nixos installation steps are also tested).

Both Nix and NixOS users can use stable channels - the latest being nixos-23.11 - to receive only conservative updates for fixing critical bugs and security vulnerabilities.

For more information on channels and how to select the appropriate channel for your purposes, see the Nix Channels article.

Alternatives

Due to the fact that nixpkgs is only a nix expression it is possible to extend or replace the logic with your own sources. In fact, there are a number of extensions as well as complete replacements for Nixpkgs, see the Alternative Package Sets article.