> Tous les forums > Forum Linux
 NixOS - pour testeurs
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Ikewdu_
  Posté le 04/03/2025 @ 11:15 
Aller en bas de la page 
Astucien

Salut,

Je déroge à un des mes principes (qui est de ne jamais présenter de distribution pour testeurs) tant celle-ci me semble digne d'intérêt...

Quelqu'un s'est-il déjà amusé à installer la distribution NixOS, qui, comme son nom l'indique, est basée sur le langage NIX ? Perso, je trouve que c'est un OVNI dans l'univers Linux. et si c'est un peu déroutant lors des premiers essais (car tout s'installe et se paramètre quasiment en lignes de commandes au sein d'un seul et unique fichier de configuration), on peut obtenir une distribution très personnalisée, transportable, et au final, assez sympa. C'est réputé très stable et plutôt réactif. Et surtout, on peut l'installer "à vie" sur une machine physique. Ça me semble parfait pour se monter un serveur maison.

Voici une machine créée sur Virtualbox depuis l’Iso Nixos version minimale pour n’ajouter que l'environnement graphique Mate (mon préféré, mais que je peux abandonner pour un autre à ma convenance (ou rien du tout) dès que ça me chante sans avoir besoin de virer une kyrielle de dépendances)...

J'ai planté le système une paire de fois, en injectant des morceaux de code hasardeux, et à chaque fois, j'ai pu le récupérer.

Gaffe tout de même : la distro est présentée comme étant plutôt réservée aux utilisateurs confirmés ( même si une Arch me semble encore plus ardue). En tout cas, usage de la doc officielle incontournable. On trouve aussi quelques tutos en ligne, qui permettent de gagner du temps et de ne pas trop galérer.

Seul bémol, l’occupation du disque gonfle vite si on ne supprime pas de temps en temps les snapshots les plus anciens.



Modifié par Ikewdu_ le 04/03/2025 12:52
Publicité
enigma7
 Posté le 04/03/2025 à 17:26 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Je ne connais pas la distrib et je n'ai pas de place en ce moment pour la tester. J'ai été voir sur distrowatch, ce n'est pas un rolling release et chaque version a une durée de vie assez courte. Comment dans ce cas on incrémente, je suppose que tu as installé la dernière version ?

https://distrowatch.com/table.php?distribution=nixos

Ikewdu_
 Posté le 04/03/2025 à 17:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Ça fonctionne différemment. C'est ce qui est intéressant.

Les notions de LTS et de rolling release ne s'appliquent plus vraiment avec NixOS. En fait, c'est l'Iso qui évolue tous les 6 mois avec un noyau LTS, mais une fois qu'on a installé, on n'est plus concerné.

Tout est actualisable par paramétrage (manuel ou automatique) dans le fichier de configuration, du noyau à l'interface en passant par les applications. Si un nouveau noyau est disponible, on saisit la commande adéquate, et hop, on met à jour. Idem pour l'environnement de bureau, etc.

Si ça par malheur ça plante, on choisit le Snapshot précédent et on repart sur une base propre.

Je suis assez bluffé. Après, je n'en suis pas encore au stade de l'installer sur un vrai PC. Il faudra que je teste, que je voie comment se gèrent les imprimantes, et autres. Je n'en suis qu'au stade de la découverte. Trois vidéos assez courtes qui en parlent bien :

Installation : https://m.youtube.com/watch?v=zFUuG7UWlLU&pp=ygUFbml4b3M%3D

Config : https://m.youtube.com/watch?v=oWoeDrucqd0&t=787s

Le bilan après 2 ans : https://m.youtube.com/watch?v=G2zj0p9erjQ&t=129s



Modifié par Ikewdu_ le 04/03/2025 17:49
enigma7
 Posté le 04/03/2025 à 18:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Maître astucien

Ah d'accord, c'est pas comme avec Fedora ou on fait une dist upgrade tous les 6 mois (ça fonctionne très bien sur ma tour depuis 9 releases et ça upgrade également les paquets RPM fusion sans broncher)

Ikewdu_
 Posté le 04/03/2025 à 19:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien
enigma7 a écrit :

Ah d'accord, c'est pas comme avec Fedora ou on fait une dist upgrade tous les 6 mois (ça fonctionne très bien sur ma tour depuis 9 releases et ça upgrade également les paquets RPM fusion sans broncher)

C'est totalement inattendu... Pas de fstab, un GRUB non proposé par défaut, un fichier spécifique pour le hardware, et une personnalisation quasi de A à Z. On peut meme virer de l'environnement graphique ce qu'on ne veut pas. Moi, c'est mon rêve... 50% de ce qu'inclut un environnement graphique ne me sert à rien.

Ikewdu_
 Posté le 22/04/2026 à 09:22 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Hello,

Comme annoncé, plusieurs petites questions adressées à ceux qui ont insisté sur cet OS.

1. J’avais noté qu’un des bémols sur cette distribution résidait dans les mises à niveau qui engendraient des erreurs souvent liées aux applications et aux paquets qui évoluent et qu’il fallait corriger manuellement. Ce problème existe-t-il toujours ?

2. Idem pour l’occupation de disques que je trouvais assez rédhibitoire si on ne supprimait des couches régulièrement.

3. Quelqu’un a-t-il testé une installation en Legacy/mbr ? Perso, j’ai abouti à un écran noir sur un Packard Bell que j’avais sous la main au début de l’installation .Donc, échec.

J’en profite pour ajouter ceci, qui me semble très utile :

R136a1 a écrit :

skale a écrit :

J'ai été surpris au début sans sauvegarde possible ni gestionnaire de paquet classique ou de mise à jour.

Salut

il n'y a pas besoin de sauvegarde sous NixOS puisqu'ils y a les générations. Ce sont des images du système qui sont immuables, on ne peut pas les modifier. Elles permettent de revenir en arrière à tout moment.

Une génération est générée à chaque fois que le système prend en compte les modifs des fichiers du répertoire /etc/nixos qui contient les fichiers de configuration du système (configuration.nix et hardware-configuration.nix) et personnels (qui doivent sous la forme blabla.nix avec une syntaxe précise).

Après avoir modifié ces fichiers on lance la commande sudo nixos-rebuild switch qui va générer une nouvelle génération sur laquelle on boot en redémarrant.

Les générations sont aussi générées à chaque update et chaque upgrade de NixOS. On peut évidemment supprimer des générations quand elles commencent à s'accumuler.

la commande nixos-rebuild list-generations t'indique le nombre de générations qu'il y a (tu les vois aussi au boot et dans /nix/var/nix/profiles).

Sinon, ce n'est pas recommandé d'installer les paquets avec la commande nix-env, il ne faut pas non plus être root :

Warning: Using nix-env permanently modifies a local profile of installed packages. This must be updated and maintained by the user in the same way as with a traditional package manager, foregoing many of the benefits that make Nix uniquely powerful. Using nix-shell or a NixOS configuration is recommended instead.

nix-shell permet de tester un paquet avant de l'installer avec le fichier configuration.nix

Pour trouver les noms des paquets à inscrire dans configuration.nix, il faut aller sur https://search.nixos.org/packages

Il y est aussi indiqué pour chaque paquet des dépôts la méthode d'installation (nix-shell, configuration.nix ou nix-env qui n'est donc pas recommandé).

Pour info, il y a deux Wiki, un officiel et un communautaire :

https://wiki.nixos.org/wiki/NixOS_Wiki

https://nixos.wiki/wiki/Main_Page



Modifié par Ikewdu_ le 22/04/2026 09:35
Gaby-Jo
 Posté le 22/04/2026 à 11:08 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour à tous,

Pour ceux qui souhaitent découvrir NixOS, 5 vidéos sur cette distribution :

https://www.youtube.com/watch?v=tOZkd2Yuds0&list=PLjAHiXDnp3Jnhi6TKd3XipJEkqLyNNdGK

R136a1
 Posté le 23/04/2026 à 13:24 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Ikewdu_ a écrit :

Hello,

Comme annoncé, plusieurs petites questions adressées à ceux qui ont insisté sur cet OS.

1. J’avais noté qu’un des bémols sur cette distribution résidait dans les mises à niveau qui engendraient des erreurs souvent liées aux applications et aux paquets qui évoluent et qu’il fallait corriger manuellement. Ce problème existe-t-il toujours ?

2. Idem pour l’occupation de disques que je trouvais assez rédhibitoire si on ne supprimait des couches régulièrement.

3. Quelqu’un a-t-il testé une installation en Legacy/mbr ? Perso, j’ai abouti à un écran noir sur un Packard Bell que j’avais sous la main au début de l’installation .Donc, échec.

Salut

1- j'ai fait 2 mises à niveau (changement de canal) depuis que je l'ai en VM et c'est toujours passé comme une lettre à la poste. Idem pour les updates. Le dernier il y a 2 jours m'a fait passer au kernel 7 d'ailleurs. mais comme indiqué, je fais tourner Nix dans une VM et je n'ai donc pas du tout le même nombre de paquets et de services que sur ma Debian utilisée au quotidien par exemple.

2- Oui pour l'occupation disque, les générations peuvent très vite saturer la partition si on en supprime pas régulièrement. Perso je garde la courante et la précédente, donc 2 générations, pas plus. La première fois que je l'ai installée, comme d'hab avec mes VM j'avais paramétré un disque virtuel de 20Go seulement. A la 4ème génération, c'était terminé. Le build de la 5ème génération s'est terminé par une erreur suite au manque de place parce qu'en plus j'avais modifié configuration.nix pour ajouter un swapfile... Je ne pouvais même plus supprimer les anciennes générations et au reboot j'étais bloqué sur un tache qui ne finissait pas. Obligé de tout réinstaller, sans sauvegarde de mon fichier configuration, j’étais vert...

3- Perso non pas installé en dur. Je pense le faire ce week end, te dirai comment ça c'est passé pour moi. Skale l'a fait et a priori ça c'est bien passé pour lui.



Modifié par R136a1 le 23/04/2026 14:26
R136a1
 Posté le 23/04/2026 à 13:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

skale a écrit :

J'ai vu que si tu as de la place sur le disque, il est possible de télécharger/installer les paquets nix et nixpkgs sur une autre distribution Linux pour utiliser la session nixos.

Il me semble que R136a1 en avait parlé.

Salut

Ah ? Me souviens pas d'en avoir parlé... Mais c'est possible oui. On trouve sur le site officiel les instructions pour installer le gestionnaire de paquet Nix sur une autre distribution (sur Windows et MacOS aussi visiblement). Je l'ai jamais fait par contre.

https://nixos.org/download/#nix-install-linux



Modifié par R136a1 le 23/04/2026 13:53
skale
 Posté le 23/04/2026 à 14:21 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Il me semblait et je ne retrouve pas les infos.

skale
 Posté le 24/04/2026 à 10:36 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Pour le nettoyage de Nixos qui peut accumuler les générations comme par exemple pour mon installation.

nixos-rebuild list-generations
Generation Build-date NixOS version Kernel Configuration Revision Specialisation Current
3 2026-04-22 12:56:23 25.11.9476.e07580dae397 6.12.82 Unknown [] True
2 2026-04-21 23:57:15 25.11.9418.c7f47036d3df 6.12.81 Unknown [] False
1 2026-04-18 12:31:55 25.11.9214.7e495b747b51 6.12.81 Unknown [] False

Et j'ai vu/utilisé cette commande permettant d'automatiser le nettoyage des vieux fichiers.

sudo nix-collect-garbage -d
[sudo] Mot de passe de nixus :
removing old generations of profile /nix/var/nix/profiles/system
removing profile version 1
removing profile version 2
removing old generations of profile /nix/var/nix/profiles/per-user/root/profile
removing profile version 1
removing old generations of profile /nix/var/nix/profiles/per-user/root/channels
removing profile version 1
removing profile version 2
removing profile version 3
removing old generations of profile /nix/var/nix/profiles/per-user/root/profile
removing old generations of profile /nix/var/nix/profiles/per-user/root/channels
finding garbage collector roots...
removing stale link from '/nix/var/nix/gcroots/auto/a18wlg3m9bml0w484p40spmgr2sm25jr' to '/tmp/calamares-root-ufu7dj5m/tmp.HcHwVkFc9u/system'
removing stale link from '/nix/var/nix/gcroots/auto/lpisgbhz4y8jkxxv6skw9b6frad5l6aj' to '/nix/var/nix/profiles/per-user/root/channels-3-link'
removing stale link from '/nix/var/nix/gcroots/auto/y0ggb2001x9liginqhv3zxi1cqh22h0n' to '/tmp/nix-build-1707-3871087998/result'
removing stale link from '/nix/var/nix/gcroots/auto/lzjbmb2ry0z7lma2fvpqprb12921pnb5' to '/nix/var/nix/profiles/per-user/root/profile-1-link'
removing stale link from '/nix/var/nix/gcroots/auto/6arrqmzhixm20ssb7qj8rvfyann06zmd' to '/tmp/nix-build-1690-2156615917/result'
.....

La liste est longue et à la fin

deleting '/nix/store/75y9j6d9ssj9qp91dzhidgsgxxx8snq5-ipv6-privacy-extensions.rules'
deleting '/nix/store/yvpnsw1jav0hqpx7api6r6d9ajbfka5y-gcc.patch-salted-55s3g2rfgr8g.drv'
deleting '/nix/store/rdjqyd708nrkz7s6r3d36ba7z7wnyym3-source.drv'
deleting '/nix/store/gypik9rv50qmw9z9yw6yyl40b6yjxd18-submodule-leave-git-deep-source-salted-5hdnwpny21nc.drv'
deleting '/nix/store/6bg9vfjgccx7ppsmrj7y22173yx4h5i2-setup-hook.sh'
deleting unused links...
note: currently hard linking saves -0.00 MiB
1177 store paths deleted, 3071.48 MiB freed

3 Go de gagné pour retrouver une base saine et fonctionnelle et voici le reste des générations

nixos-rebuild list-generations
Generation Build-date NixOS version Kernel Configuration Revision Specialisation Current
3 2026-04-22 12:56:23 25.11.9476.e07580dae397 6.12.82 Unknown [] True



Modifié par skale le 24/04/2026 10:39
R136a1
 Posté le 24/04/2026 à 11:15 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Salut

attention, la commande nix-collect-garbage -d supprime toutes les générations sauf la dernière. C'est pas très sécure...

Du coup il y a la commande suivante qui permet de ne garder que les x dernières générations. Exemple ici les 2 dernières :

sudo nix-env -p /nix/var/nix/profiles/system --delete-generations +2

Sinon, on peut aussi supprimer les générations vieilles de plus de x jours. Exemple ici, vieilles de plus de 30 jours :

sudo nix-collect-garbage --delete-older-than 30d

Et on peut automatiser ça avec un timer systemd en ajoutant le bloc suivant au fichier configuration.nix :

nix.settings.auto-optimise-store = true;
nix.gc.automatic = true;
nix.gc.dates = "weekly";
nix.gc.options = "--delete-older-than 30d";

Et on valide avec sudo nixos-rebuild switch

Le timer va s’exécuter une fois par semaine et supprimer les générations de plus d'un mois.

skale
 Posté le 24/04/2026 à 12:38 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Merci pour l'info R136a1 et je vais utiliser la ligne pour n'en garder que 2 générations étant limité en capacité et je préfère prévoir.

Il me reste 14 Go.

Je teste la stabilité pour le moment.

R136a1
 Posté le 25/04/2026 à 13:46 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Salut

j'ai installé NixOS en dur sur mon portable. Du coup je me suis rendu compte d'un truc.

Avec la commande nixos-rebuild switch il n'y a pas besoin de rebooter pour être sur la nouvelle génération, on l'est directement (cf l'argument switch). Si par contre on veut que les modifs de la configuration ne s'appliquent qu'au reboot, on utilise la commande nixos-rebuild boot

Sinon, tout est ok pour moi, tout est reconnu out of box. Il n'y a que pour la limitation du niveau de charge de la batterie que je galère (pas de batterie en VM). Je dois créer et activer un service systemd pour mon Asus mais sous Nix c'est évidemment pas du tout comme sous les autres distros... Ça se passe aussi dans le fichier configuration.nix mais pour le moment je n'y arrive pas.

Si l'un de vous sait comment adapter mon service à Nix, je suis preneur. Sinon de toute façon je vais poser la question sur un forum Nix.

Voila le contenu du service :

[Unit]
Description=Set the battery charge threshold
After=multi-user.target
StartLimitBurst=0

[Service]
Type=oneshot
Restart=on-failure
ExecStart=/bin/bash -c 'echo 80 > /sys/class/power_supply/BAT0/charge_control_end_threshold'

[Install]
WantedBy=multi-user.target



Modifié par R136a1 le 25/04/2026 13:56
skale
 Posté le 25/04/2026 à 14:51 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Le service tlp non ?

https://github.com/NixOS/nixpkgs/issues/368451

Je suis sur secteur.



Modifié par skale le 25/04/2026 14:53
R136a1
 Posté le 26/04/2026 à 12:47 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci pour la suggestion skale

Je verrai avec TLP si je trouve pas le moyen d'activer mon service.

R136a1
 Posté le 26/04/2026 à 18:07 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

C'est bon, j'ai trouvé.

Mon erreur venait du chemin que j'indiquais vers l’exécutable de bash. Sous NixOS nos fichiers bin ne sont pas dans /bin mais dans /run/current-system/sw/bin

Je vous mets mon service systemd en exemple de la forme du bloc à insérer dans le fichier configuration.nix, ça peut toujours servir :

systemd.services.battery-charge-threshold = {
    enable = true;
    description = "Set the battery charge threshold";
    unitConfig = {
      After = "multi-user.target";
      StartLimitBurst = "0";
    };
    serviceConfig = {
      Type = "oneshot";
      Restart = "on-failure";
      ExecStart = "/run/current-system/sw/bin/bash -c 'echo 80 > /sys/class/power_supply/BAT0/charge_control_end_threshold'";
    };
    wantedBy = [ "multi-user.target" ];
  };



Modifié par R136a1 le 26/04/2026 18:11
skale
 Posté le 27/04/2026 à 10:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

C'est bon à savoir et t'as raison, ça peut aider pour le réel chemin des exécutables qui est /run/current-system/sw/bin sous NixOS

Gaby-Jo
 Posté le 29/04/2026 à 08:23 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour à tous,

NIX OS : LE COUP DE COEUR DEPUIS 2 ANS !

(La vidéo date de décembre 2024 et NixOS n'était pas encore sous les projecteurs).

https://www.youtube.com/watch?v=G2zj0p9erjQ

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
Mini PC Geekom A6 (Ryzen 7 6800H, 16 Go RAM DDR5, SSD NVMe 1 To, WiFi 6, Windows 11 Pro, le plus vendu en France)
499 € 699 € -29%
Console ATARI 7800 Plus (compatible cartouches 2600/7600)
96,35 € 119,99 € -20%
@Amazon
Station d'accueil UGREEN Maxidok Thunderbolt 5 17 en 1 (120 Gbps, 3xTBT5, SSD M.2, Ethernet 2.5Gb)
390,99 € 459,99 € -15%
@Amazon
Ultrabook Asus VivoBook S16 (FullHD OLED ,Ryzen AI 7 350, 16 Go RAM, SSD 1 To, Windows 11)
829,99 € 999,99 € -17%
@Amazon
PC portable 14 pouces Asus VivoBook S14 (FHD IPS, Core i5-1335U, 16 Go RAM, SSD 512 Go, Windows 11)
579,00 € 649 € -11%
@Amazon
Toile de paillage iropro 2Mx25M avec 50 agrafes
29,39 € 50 € -41%
@Amazon

Sujets relatifs
Pour Testeurs ----> Couleur des icon/emojis sur les fichiers dans le bureau
Pour Testeurs ---> Comment blocker les annonce pour jeux video - Chromium ?
Pour Testeurs -----> Possibilité de faire d'une clé-usb un dd externe ?
Pour Testeurs -----> Debian Facile Xfce
Pour Testeurs -----> Antix / Debian Linux
Pour Testeurs -----> Bodhi / Debian Ubuntu Linux
Pour Testeurs -----> Mint 22 basé sur Debian Ubuntu Linux
Pour Testeurs -----> Ubuntu Linux
Pour Testeurs -----> Xubuntu
Pour Testeurs -----> EndeavourOS / Arch Linux
Plus de sujets relatifs à NixOS - pour testeurs
 > Tous les forums > Forum Linux