Ça va être dur de revenir sur une distribution plus standard...
Je m’intéresse de plus en plus à mon nouveau jouet du nom de Nixos, je me dis que ça va être dur de revenir sur ma Debian ou même openSUSE ou encore tout autre chose qui est plus “naturelle”, j’aime vraiment le concept de cette distribution, cette solidité que donne l’ensemble.
Je l’ai mis en brac, je l’ai torturé, je l’ai soumis à tout ce que je savais faire et elle tient. Pire quand je me trompe dans le fichier de configuration, nix me corrige en me disant ce qui merde. Puisqu’un exemple vaut mieux qu’un long discours, je vais vous en faire une démonstration, je vais faire un faute volontaire:
# Select internationalisation properties.
# i18n.defaultLocale = "en_US.UTF-8";
# console = {
# font = "Lat2-Terminus16";
# keyMap = "us";
# };
i18n.defaultLocale = "fr_FR.UTF-8";
console = {
font = "Lat2-Terminus16";
keyMap = "fre";
};
Pour l’exemple, au lieu de keyMap = "fr";
, je rajoute un “e” keyMap = "fre";
et voila ce que dit nix:
# nixos-rebuild switch
building Nix...
building the system configuration...
these derivations will be built:
/nix/store/3ccsgvb9w3x8kc01pd3s0hz298p5n6p0-link-units.drv
/nix/store/q628lwhmkhcs2wimk5ln09zjpynpnah3-keymap.drv
/nix/store/1k5kgci4jn418wlqwkhjm585b5176apk-stage-1-init.sh.drv
/nix/store/7ffr738sq0pvqnwwgf4f6qn9lj5hpjf7-initrd-linux-5.10.88.drv
/nix/store/s6xk5zq8npjxly0vh9f76viqcymiyk9z-system-units.drv
/nix/store/v6jkbx6fjalhzsvfjaals5lj7jqr0z7v-etc.drv
/nix/store/cz4hjpy967m3bss6yhpn5c7f9383i233-nixos-system-debiacerlinux-21.11.334934.8a053bc2255.drv
building '/nix/store/s6xk5zq8npjxly0vh9f76viqcymiyk9z-system-units.drv'...
building '/nix/store/q628lwhmkhcs2wimk5ln09zjpynpnah3-keymap.drv'...
building '/nix/store/3ccsgvb9w3x8kc01pd3s0hz298p5n6p0-link-units.drv'...
loadkeys: Unable to open file: fre: No such file or directory
builder for '/nix/store/q628lwhmkhcs2wimk5ln09zjpynpnah3-keymap.drv' failed with exit code 1
cannot build derivation '/nix/store/1k5kgci4jn418wlqwkhjm585b5176apk-stage-1-init.sh.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/7ffr738sq0pvqnwwgf4f6qn9lj5hpjf7-initrd-linux-5.10.88.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/cz4hjpy967m3bss6yhpn5c7f9383i233-nixos-system-debiacerlinux-21.11.334934.8a053bc2255.drv': 1 dependencies couldn't be built
error: build of '/nix/store/cz4hjpy967m3bss6yhpn5c7f9383i233-nixos-system-debiacerlinux-21.11.334934.8a053bc2255.drv' failed
C’est pas super clair et ça aurait le mérite d’avoir un peu de couleur comme les retours de zypper
mais l’important est là:
loadkeys: Unable to open file: fre: No such file or directory
Je corrige et voila:
# nixos-rebuild switch
building Nix...
building the system configuration...
activating the configuration...
setting up /etc...
reloading user units for sebastien...
setting up tmpfiles
Le truc c’est qu’une fois que notre fichier principal de config à été accepté une fois et a permis de construire le système, on a l’impression d’être dans un tank que rien ne peux casser. C’est impressionnant car on a l’impression d’être sur un système en lecture seule, tant qu’on ne lui a pas dit qu’on veut tel changement, rien ne bouge.
Je me suis fait mon premier nix-shell pour l’utilisation de pelican:
# python.nix
with (import <nixpkgs> {});
let
my-python-packages = python-packages: with python-packages; [
pelican
beautifulsoup4
blinker
buildPythonPackage
docutils
feedgenerator
fetchFromGitHub
git
glibcLocales
jinja2
lxml
markdown
markupsafe
mock
pytestCheckHook
pandoc
pillow
pygments
python-dateutil
pythonOlder
pytz
rich
pytest-xdist
six
typogrify
unidecode
# other python packages you want
];
python-with-my-packages = python3.withPackages my-python-packages;
in
mkShell {
buildInputs = [
python-with-my-packages
];
}
Oui il est tout option, le plus sympa c’est que rien n’est installé sur ma machine, c’est dans un environnement virtuel. C’est comme si j’avais installé tous ces paquets mais je ne l’ai pas fait.
Au-delà de la partie sympa et excitante de la nouveauté, le truc c’est que je ne me sens pas à l’aise pour le moment pour deux choses, mettre en place un serveur, peut importe http ou mail ou juste un dlna, je sais toujours pas faire car il n’y a pas la configuration dans /etc mais elle se trouve à la place dans notre fichier central. L’autre c’est la création de paquets, ou simplement la maintenance de paquets, par exemple pelican est en 4.6.0, comment je fais pour faire le paquet en version 4.7.1?
Je serais prêt à lâcher Debian et openSUSE, tellement que Nixos me plaît, son fonctionnement, son utilisation, mais si je ne suis pas capable d’être autant autonome que sous ma Debian, bah je lâcherai la chose et c’est vraiment dommage.
Commencer la discussion: Venez écrire un commentaire dans le forum.
- Précédent: Nixos, la distribution du future!
- Suivant: Le retour va être dur, mais il le faut...