Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

NixOS: Difference between revisions

From atl.wiki
(home manager description)
No edit summary
 
(14 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{DistributionInfobox
{{DistributionInfobox
| title       = NixOS Linux
| title           = NixOS
| image       = [[File:Nix snowflake.svg|thumb]]
| image           = [[File:Nix snowflake.svg|thumb|150px]]
| caption     =  
| caption         = The NixOS logo, a symbol of the Nix package manager
| releasestatus = Maintained
| releasestatus   = Actively maintained
| releasemodel = Varied depending on user configuration
| releasemodel     = Customizable based on user configuration
| packagemanager = [https://nixos.org Nix]
| packagemanager   = [https://nixos.org Nix package manager]
| defaultdesktops = Awesome, Enlightenment, Fluxbox, GNOME, [[i3]], [[IceWM]], [[KDE Plasma]], LXQt, Ratpoison, [[Xfce]]
| defaultdesktops = Enlightenment, GNOME, [[KDE Plasma]], LXQt, [[Xfce]], MATE, Pantheon, Cinnamon
| usagetype = Desktop, Server
| usagetype       = Desktop, Server
| architectures = i686, x86_64, aarch64
| architectures   = i686, x86_64, aarch64
| website = [https://nixos.org nixos.org]
| website         = [https://nixos.org nixos.org]
}}
}}
[[File:Nixos-desktop.jpg|thumb|NixOS desktop running GNOME 43.1 along with Neofetch.]]
[[File:Nixos-desktop.jpg|thumb|A NixOS desktop running GNOME 43.1 with Neofetch displayed.]]


'''NixOS''' is a [[Linux Distributions|Linux distribution]] built around the '''Nix''' [[Package Manager|package manager]], which provides atomic upgrades, rollbacks, and a declarative configuration model.<ref>https://nixos.org/manual/nixos/stable/index.html#sec-intro</ref> It was originally founded by Eelco Dolstra.<ref>https://edolstra.github.io/pubs/phd-thesis.pdf</ref>
 
'''NixOS''' is a [[Linux Distributions|Linux distribution]] built around the '''Nix''' [[Package Manager|package manager]], offering features such as atomic upgrades, rollbacks, and a declarative configuration model.<ref>https://nixos.org/manual/nixos/stable/index.html#sec-intro</ref> It was initially developed by Eelco Dolstra.<ref>https://edolstra.github.io/pubs/phd-thesis.pdf</ref>


=== Home Manager ===
=== Home Manager ===
Home Manager is a NixOS module for configuring user environments in /home, often integrated directly into NixOS to enable unified system and user-level rebuilds. It provides a broad range of options beyond standard NixOS configurations, allowing users to manage dotfiles, install and configure applications, and customize environment settings for a tailored, reproducible setup.  
Home Manager is a NixOS module for configuring user environments in <code>/home</code>, often integrated directly into NixOS to enable unified system and user-level rebuilds. It provides a broad range of options beyond standard NixOS configurations, allowing users to manage dotfiles, install and configure applications, and customize environment settings for a tailored, reproducible setup.
 
=== Flakes ===
'''[https://wiki.nixos.org/wiki/Flakes Nix Flakes]''' is an experimental feature of the Nix package manager aimed at simplifying dependency and configuration management, making builds more reproducible and shareable across environments.
 
* Flakes provide a standardized format for specifying dependencies, configurations, and sources, enabling easier integration and consistency across systems.
* Using Flakes, developers can define isolated and reproducible environments, ideal for both development and deployment.


=== Lix ===
=== Lix ===
[https://lix.systems Lix] is a community fork of Nix. It uses the meson build system, though the Lix team also plans to gradually introduce Rust to the source code.<ref name=":0">https://lix.systems/about/#why-lix</ref> There are also plans to improve the Nix language and make it into the Lix language, which is different but still generally syntactically compatible with the Nix language.<ref name=":0" />
[https://lix.systems Lix] is a community fork of Nix. It uses the Meson build system, though the Lix team also plans to gradually introduce Rust to the source code.<ref name=":0">https://lix.systems/about/#why-lix</ref> The project also aims to evolve the Nix language into the new Lix language—maintaining general syntactic compatibility with Nix but introducing refinements and new features.<ref name=":0" />
 


=== Controversy ===
=== Controversy ===


==== Anduril Sponsorship ====
==== Anduril Sponsorship ====
NixCon 2023, a community convention for nix, has received a sponsorship from Anduril, a military defense contractor based in the US. The event venue, TU Darmstadt, became aware of the sponsorship and asked for additional information from the Nix Foundation to determine if the sponsorship was in accordance with their policies. Following this, the Nix Foundation decided to rescind the Anduril sponsorship.<ref>https://discourse.nixos.org/t/nixcon-2023-sponsorship-situation-from-the-nixos-foundation/33583</ref>
NixCon 2023, a community conference dedicated to the Nix project, received a sponsorship from Anduril, a U.S.-based military defense contractor. Upon learning of the sponsorship, the event venue, TU Darmstadt, requested additional information from the Nix Foundation to assess whether the sponsorship aligned with its policies. In response, the Nix Foundation ultimately decided to withdraw Anduril's sponsorship.<ref>https://discourse.nixos.org/t/nixcon-2023-sponsorship-situation-from-the-nixos-foundation/33583</ref>


==== Change of Leadership ====
==== Change of Leadership ====
Following an open letter of criticism to the Nix Foundation demanding the resignation of Eelco Dolstra, he eventually resigned.<ref>https://save-nix-together.org</ref><ref name=":1">https://mastodon.delroth.net/@delroth/112450680035780629</ref> After the resignation, a new board was formed. Their first action was to unban a controversial user from the Nixpkgs contributor Zulip chat, which sparked controversy.<ref name=":1" />
Following an open letter criticizing the Nix Foundation and calling for the resignation of Eelco Dolstra, he eventually stepped down.<ref>https://save-nix-together.org</ref><ref name=":1">https://mastodon.delroth.net/@delroth/112450680035780629</ref> After his resignation, a new board was established. Their first action was to lift the ban on a controversial user from the Nixpkgs contributor Zulip chat, sparking further debate.<ref name=":1" />


=== Trivia ===
=== Trivia ===


* NixOS uses a purely functional package management approach, ensuring that package installations do not interfere with one another.
* NixOS employs a purely functional approach to package management, ensuring that package installations remain isolated from one another.
* The Nix package manager allows for reproducible builds, making it ideal for development environments.
* The Nix package manager supports reproducible builds, making it especially suited for consistent and reliable development environments.
<references />
<references />
[[Category:Linux Distributions]]
[[Category:Linux Distributions]]

Latest revision as of 22:58, 27 October 2024

NixOS

The NixOS logo, a symbol of the Nix package manager
Release Status Actively maintained
Release Model Customizable based on user configuration
Package Manager Nix package manager
Default Desktops Enlightenment, GNOME, KDE Plasma, LXQt, Xfce, MATE, Pantheon, Cinnamon
Usage Type Desktop, Server
Architectures i686, x86_64, aarch64
Website nixos.org
A NixOS desktop running GNOME 43.1 with Neofetch displayed.


NixOS is a Linux distribution built around the Nix package manager, offering features such as atomic upgrades, rollbacks, and a declarative configuration model.[1] It was initially developed by Eelco Dolstra.[2]

Home Manager

Home Manager is a NixOS module for configuring user environments in /home, often integrated directly into NixOS to enable unified system and user-level rebuilds. It provides a broad range of options beyond standard NixOS configurations, allowing users to manage dotfiles, install and configure applications, and customize environment settings for a tailored, reproducible setup.

Flakes

Nix Flakes is an experimental feature of the Nix package manager aimed at simplifying dependency and configuration management, making builds more reproducible and shareable across environments.

  • Flakes provide a standardized format for specifying dependencies, configurations, and sources, enabling easier integration and consistency across systems.
  • Using Flakes, developers can define isolated and reproducible environments, ideal for both development and deployment.

Lix

Lix is a community fork of Nix. It uses the Meson build system, though the Lix team also plans to gradually introduce Rust to the source code.[3] The project also aims to evolve the Nix language into the new Lix language—maintaining general syntactic compatibility with Nix but introducing refinements and new features.[3]


Controversy

Anduril Sponsorship

NixCon 2023, a community conference dedicated to the Nix project, received a sponsorship from Anduril, a U.S.-based military defense contractor. Upon learning of the sponsorship, the event venue, TU Darmstadt, requested additional information from the Nix Foundation to assess whether the sponsorship aligned with its policies. In response, the Nix Foundation ultimately decided to withdraw Anduril's sponsorship.[4]

Change of Leadership

Following an open letter criticizing the Nix Foundation and calling for the resignation of Eelco Dolstra, he eventually stepped down.[5][6] After his resignation, a new board was established. Their first action was to lift the ban on a controversial user from the Nixpkgs contributor Zulip chat, sparking further debate.[6]

Trivia

  • NixOS employs a purely functional approach to package management, ensuring that package installations remain isolated from one another.
  • The Nix package manager supports reproducible builds, making it especially suited for consistent and reliable development environments.