Recherche de site Web

Comment installer le gestionnaire de paquets Nix sur Linux


Nix est un gestionnaire de paquets puissant pour Linux qui offre des fonctionnalités telles que des installations fiables et des retours en arrière faciles. Dans ce tutoriel étape par étape, nous allons apprendre comment installer le gestionnaire de paquets Nix sur Linux.

Avec Nix, vous pouvez gérer facilement les installations de logiciels, les dépendances et les configurations. Son approche déclarative assure la stabilité et la reproductibilité, en faisant un choix approprié pour les développeurs et les administrateurs système.

Nix garantit que les paquets sont isolés les uns des autres, réduisant les conflits et facilitant la gestion des dépendances.

Vous pouvez installer Nix sur la plupart des distributions Linux pour gérer vos logiciels en parallèle avec le gestionnaire de paquets de votre système existant.

Ce guide vous montrera les étapes simples pour installer Nix et le faire fonctionner sur votre machine Linux.

À des fins de démonstration, je vais vous montrer les étapes pour installer Nix sur un système Ubuntu. Veuillez noter que les étapes d'installation suivantes sont les mêmes pour toutes les distributions Linux.

Commençons !

Installer le gestionnaire de paquets Nix

Installer le gestionnaire de paquets Nix sur Linux est un processus simple et direct.

Les développeurs de Nix recommandent une installation multi-utilisateur si votre plateforme le supporte.

1. Tout d'abord, téléchargez et exécutez le script d'installation de Nix depuis leur site web.

$ curl -L https://nixos.org/nix/install | sh

Cela exécutera le type d'installation par défaut pour votre plateforme.

  1. Installation multi-utilisateur - Linux avec systemd et sans SELinux et macOS.
  2. Installation pour un seul utilisateur - Linux sans systemd et avec SELinux.

En fonction de votre type de plateforme, l'une des installations démarrera. Comme mon système est Ubuntu 22.04 LTS, l'installateur a automatiquement basculé vers le type d'installation multi-utilisateur.

Vous pouvez également spécifier explicitement le type d'installation. Par exemple, pour indiquer explicitement à l'installateur d'effectuer une installation pour un seul utilisateur sur votre système, exécutez :

$ curl -L https://nixos.org/nix/install | sh -s -- --no-daemon

Pour indiquer explicitement à l'installateur d'effectuer une installation multi-utilisateur sur votre système :

$ curl -L https://nixos.org/nix/install | sh -s -- --daemon

Gardez un œil sur votre écran et suivez les instructions affichées à l'écran pour continuer.

2. Si l’installation multi-utilisateur est démarrée, vous verrez la sortie suivante. Si vous souhaitez voir la liste détaillée de ce que Nix fera sur votre système, tapez y et appuyez sur la touche ENTER. Si vous ne voulez pas voir la liste, tapez simplement n et appuyez sur ENTER.

Exemple de sortie :

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:05 --:--:--     0
100  4052  100  4052    0     0    637      0  0:00:06  0:00:06 --:--:-- 16273
downloading Nix 2.21.0 binary tarball for x86_64-linux from 'https://releases.nixos.org/nix/nix-2.21.0/nix-2.21.0-x86_64-linux.tar.xz' to '/tmp/nix-binary-tarball-unpack.SpybifSJck'...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 21.8M  100 21.8M    0     0  1998k      0  0:00:11  0:00:11 --:--:-- 1746k
Note: a multi-user installation is possible. See https://nixos.org/manual/nix/stable/installation/installing-binary.html#multi-user-installation
Switching to the Multi-user Installer
Welcome to the Multi-User Nix Installation

This installation tool will set up your computer with the Nix package
manager. This will happen in a few stages:

1. Make sure your computer doesn't already have Nix. If it does, I
   will show you instructions on how to clean up your old install.

2. Show you what I am going to install and where. Then I will ask
   if you are ready to continue.

3. Create the system users (uids [30001..30032]) and groups (gid 30000)
   that the Nix daemon uses to run builds. To create system users
   in a different range, exit and run this tool again with
   NIX_FIRST_BUILD_UID set.

4. Perform the basic installation of the Nix files daemon.

5. Configure your shell to import special Nix Profile files, so you
   can use Nix.

6. Start the Nix daemon.

Would you like to see a more detailed list of what I will do?
[y/n]

Bienvenue dans l'installation Nix multi-utilisateur

3. J'ai entré y pour voir ce que l'installateur ferait sur mon système. Le script de l'installateur a fourni la sortie ci-dessous. Si vous êtes d'accord avec les modifications qu'il prévoit de faire, tapez simplement y pour continuer.

I will:

 - make sure your computer doesn't already have Nix files
   (if it does, I will tell you how to clean them up.)
 - create local users (see the list above for the users I'll make)
 - create a local group (nixbld)
 - install Nix in to /nix
 - create a configuration file in /etc/nix
 - set up the "default profile" by creating some Nix-related files in
   /root
 - back up /etc/bash.bashrc to /etc/bash.bashrc.backup-before-nix
 - update /etc/bash.bashrc to include some Nix configuration
 - back up /etc/zsh/zshrc to /etc/zsh/zshrc.backup-before-nix
 - update /etc/zsh/zshrc to include some Nix configuration
 - load and start a service (at /etc/systemd/system/nix-daemon.service
   and /etc/systemd/system/nix-daemon.socket) for nix-daemon

Ready to continue?
[y/n]
Aucun changement du système

4. Maintenant, l'installateur demandera s'il peut utiliser sudo. Tapez y et appuyez sur la touche ENTREE pour lui permettre d'utiliser sudo et continuer.

---- let's talk about sudo -----------------------------------------------------
This script is going to call sudo a lot. Every time I do, it'll
output exactly what it'll do, and why.

Just like this:

---- sudo execution ------------------------------------------------------------
I am executing:

    $ sudo echo

to demonstrate how our sudo prompts look


This might look scary, but everything can be undone by running just a
few commands. I used to ask you to confirm each time sudo ran, but it
was too many times. Instead, I'll just ask you this one time:

Can I use sudo?
[y/n]

Autoriser Nix à utiliser sudo

5. L'installateur Nix vérifiera s'il existe une installation existante sur votre système. Encore une fois, tapez y pour continuer.

~~> Checking for artifacts of previous installs
Before I try to install, I'll check for signs Nix already is or has
been installed on this system.

---- Nix config report ---------------------------------------------------------
        Temp Dir:    /tmp/tmp.Q9lNrzTTJm
        Nix Root:    /nix
     Build Users:    32
  Build Group ID:    30000
Build Group Name:    nixbld

build users:
    Username:    UID
     nixbld1:    30001
     nixbld2:    30002
     nixbld3:    30003
     nixbld4:    30004
     nixbld5:    30005
     nixbld6:    30006
     nixbld7:    30007
     nixbld8:    30008
     nixbld9:    30009
     nixbld10:    30010
     nixbld11:    30011
     nixbld12:    30012
     nixbld13:    30013
     nixbld14:    30014
     nixbld15:    30015
     nixbld16:    30016
     nixbld17:    30017
     nixbld18:    30018
     nixbld19:    30019
     nixbld20:    30020
     nixbld21:    30021
     nixbld22:    30022
     nixbld23:    30023
     nixbld24:    30024
     nixbld25:    30025
     nixbld26:    30026
     nixbld27:    30027
     nixbld28:    30028
     nixbld29:    30029
     nixbld30:    30030
     nixbld31:    30031
     nixbld32:    30032

Ready to continue?
[y/n]

Vérifier l'installation existante de Nix

6. Entrez votre mot de passe sudo pour continuer :

~~> Setting up the build group nixbld

---- sudo execution ------------------------------------------------------------
I am executing:

    $ sudo groupadd -g 30000 --system nixbld

Create the Nix build group, nixbld

[sudo] password for ostechnix: 

7. Après une installation réussie de Nix, vous verrez le message suivant :

Alright! We're done!
Try it! Open a new terminal, and type:

  $ nix-shell -p nix-info --run "nix-info -m"

Thank you for using this installer. If you have any feedback or need
help, don't hesitate:

You can open an issue at
https://github.com/NixOS/nix/issues/new?labels=installer&template=installer.md

Or get in touch with the community: https://nixos.org/community

---- Reminders -----------------------------------------------------------------
[ 1 ]
Nix won't work in active shell sessions until you restart them.

Press enter/return to acknowledge.

L'installation de Nix est réussie

Félicitations ! Le gestionnaire de paquets Nix est installé avec succès sur Ubuntu. Déconnectez-vous de votre session actuelle et reconnectez-vous.

Si le mode d'installation pour un seul utilisateur est lancé, aucune question ne vous sera posée. L'installateur choisira automatiquement les paramètres optimaux et terminera l'installation automatiquement.

Une fois l'installation réussie, il vous sera demandé d'exécuter la commande suivante pour vous assurer que les variables d'environnement nécessaires sont configurées :

$ . /home/ostechnix/.nix-profile/etc/profile.d/nix.sh

Installation Nix pour un seul utilisateur

Sinon, vous pouvez vous déconnecter de la session en cours et vous reconnecter.

Vous pourriez vouloir placer ce fichier directement dans votre ~/.bashrc ou un emplacement similaire, afin que le gestionnaire de paquets Nix soit disponible dans tout shell nouvellement créé.

source $HOME/.nix-profile/etc/profile.d/nix.sh

Vérifier l'installation de Nix

Ouvrez une fenêtre Terminal et tapez la commande suivante pour vérifier si Nix a été correctement installé ou non :

$ nix-shell -p nix-info --run "nix-info -m"

Exemple de sortie :

[...]
 - system: `"x86_64-linux"`
 - host os: `Linux 6.2.0-39-generic, Ubuntu, 22.04.3 LTS (Jammy Jellyfish), nobuild`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.21.0`
 - channels(root): `"nixpkgs"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixpkgs`

Vérifier l'installation de Nix

Si vous voyez une sortie ressemblant à ceci, le gestionnaire de paquets Nix a été installé.

Si vous voulez vérifier uniquement la version installée, exécutez :

$ nix --version
nix (Nix) 2.21.0

Vous pouvez maintenant utiliser la commande nix-env pour gérer vos packages et environnements.

Commencer avec Nix

Commencer avec le gestionnaire de paquets Nix est simple. Nix offre une approche déclarative pour créer et gérer des paquets logiciels sur les systèmes Linux et Unix.

Consultez le guide suivant pour apprendre comment utiliser le gestionnaire de paquets Nix afin d'installer et de gérer des paquets sous Linux.

  • Commencer avec le gestionnaire de paquets Nix

Désinstaller Nix

Pour désinstaller le gestionnaire de paquets Nix, suivez ces étapes en fonction de votre type d'installation :

Utilisateur unique :

Ouvrez votre terminal et exécutez la commande suivante :

$ rm -rf /nix

Multi-utilisateur - Linux avec systemd :

Ouvrez votre terminal et exécutez les commandes suivantes une par une :

$ sudo systemctl stop nix-daemon.service
$ sudo systemctl disable nix-daemon.socket nix-daemon.service
$ sudo systemctl daemon-reload

Supprimer les fichiers créés par Nix :

$ sudo rm -rf /etc/nix /etc/profile.d/nix.sh /etc/tmpfiles.d/nix-daemon.conf /nix ~root/.nix-channels ~root/.nix-defexpr ~root/.nix-profile

Supprimer les utilisateurs de build et leur groupe :

for i in $(seq 1 32); do
  sudo userdel nixbld$i
done
sudo groupdel nixbld

De plus, vérifiez les références à Nix dans les fichiers suivants et supprimez-les si elles sont présentes :

/etc/bash.bashrc
/etc/bashrc
/etc/profile
/etc/zsh/zshrc
/etc/zshrc

Ces étapes désinstalleront complètement le gestionnaire de paquets Nix de votre système.

Conclusion

Dans ce guide, nous avons expliqué comment installer le gestionnaire de paquets Nix sur Ubuntu Linux. Même s'il a été testé sur un système Ubuntu, les étapes d'installation de Nix sont les mêmes pour d'autres systèmes Linux.

Avec le gestionnaire de paquets Nix installé sur votre système Linux, vous pouvez maintenant profiter de ses fonctionnalités puissantes.