Nix Installation Guide: Difference between revisions
Link to Nixcademy tutorial about installing Nix on macOS |
SummerTime (talk | contribs) Removed outdated and incorrect information, and updated it accordingly |
||
| Line 3: | Line 3: | ||
Please take a look at https://nixos.org/download.html first for basic installation instructions and read the relevant section in the Nix manual if you want to know more about how the install process works: https://nixos.org/manual/nix/stable/#ch-installing-binary. | Please take a look at https://nixos.org/download.html first for basic installation instructions and read the relevant section in the Nix manual if you want to know more about how the install process works: https://nixos.org/manual/nix/stable/#ch-installing-binary. | ||
== | == Installation == | ||
Nix package manager can be installed as either: | |||
* Multi User Installation (recommended) | |||
* Single User Installation | |||
=== Multi User Installation === | |||
<syntaxhighlight lang="console"> | |||
$ bash <(curl -L https://nixos.org/nix/install) --daemon | |||
</syntaxhighlight> | |||
< | === Single User Installation === | ||
$ | <syntaxhighlight lang="console"> | ||
$ bash <(curl -L https://nixos.org/nix/install) --no-daemon | |||
</ | </syntaxhighlight> | ||
=== Stable Nix === | |||
By default, the rolling Nix package manager will be installed using one of the above commands and thus the <code>nixpkgs-unstable</code> [[Channel Branches|channel]] will be used. | |||
Follow the below to switch to the stable channel:<syntaxhighlight lang="console"> | |||
$ sudo su | |||
$ nix-channel --remove nixpkgs | |||
$ nix-channel --add https://nixos.org/channel/nixos-25.11 nixpkgs | |||
$ nix-channel --update | |||
</syntaxhighlight>Then run the following command to verify that you are using the stable channel:<syntaxhighlight lang="console"> | |||
$ nix-shell -p nix-info --run "nix-info -m" | |||
</syntaxhighlight> | |||
==== Troubleshooting ==== | ==== Troubleshooting ==== | ||
| Line 37: | Line 44: | ||
enabled by default on Linux which requires user namespaces. | enabled by default on Linux which requires user namespaces. | ||
If possible enable them; the procedure depends on the distribution. In last resort, you can disable the sandbox: create the file <code>~/.config/nix/nix.conf</code> and include the line <code>sandbox = false</code>. | If possible enable them; the procedure depends on the distribution. In last resort, you can disable the sandbox: create the file <code>~/.config/nix/nix.conf</code> and include the line <code>sandbox = false</code>. | ||
== Nix store on an unusual filesystem == | == Nix store on an unusual filesystem == | ||
| Line 249: | Line 252: | ||
Restart the <code>nix-daemon.service</code> | Restart the <code>nix-daemon.service</code> | ||
Used source: https://blog.koch.ro/posts/2024-01-16-using-nix-package-manager-in-debian.html | Used source: https://blog.koch.ro/posts/2024-01-16-using-nix-package-manager-in-debian.html | ||
== Windows Subsystem for Linux (WSL) == | == Windows Subsystem for Linux (WSL) == | ||