Journal Gestion de paquets et DevOps avec Nix, tour d'horizon sur un cas concret

Posté par  (site web personnel) . Licence CC By‑SA.
26
23
jan.
2020

Nix et GNU Guix sont des gestionnaires de paquets "fonctionnels", au sens de la programmation fonctionnelle. Cette approche de la gestion de paquets est très différente de l'approche habituellement utilisée par les sytèmes Linux ou BSD, à base de collections de ports ou de dépôts de paquets.

Cette approche fonctionnelle apporte de nombreux avantages. Non seulement elle permet de fournir une gestion de paquet fiable, reproductible, multi-version et multi-utilisateur, mais apporte également de nombreuses fonctionnalités supplémentaires : gestion d'un environnement (…)

Journal Configurer VSCode pour Haskell (Debian/Nix/NixOS)

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
14
25
déc.
2019

Comme beaucoup de langages de programmation, Haskell n’a pas d’environnement de développement officiel ni même consensuel. Cependant, il existe différentes configurations classiques : Emacs + Intero/Dante, Vim + Ghcid, IntelliJ-Haskell…

Depuis quelque temps, l’éditeur de texte Visual Studio Code propose un environnement intéressant pour développer en Haskell, notamment couplé à HIE et à Stack. Cette configuration apporte les principales fonctionnalités d’un IDE : coloration syntaxique, navigation de code, compilation, documentation, auto‑complétion… Cependant, l’installation de ces outils n’est pas complètement triviale (…)

Journal Flatpak et Nix

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
18
26
déc.
2019

Flatpak est un "système de construction et de déploiement d'applications de bureau sur Linux". C'est un outil assez similaire à Snap et à AppImage, les fameux "gestionnaires de paquets universels". Ces gestionnaires de paquets sont censés apporter deux avantages principaux :

  • permettre à un utilisateur normal d'installer des logiciels, qui ne sont pas forcément fournis par la logithèque de sa distribution;

  • permettre à un développeur de packager un logiciel facilement pour tout un ensemble de distributions Linux.

Il existe (…)

Journal Cachix, un service de cache binaire basé sur Nix

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
16
10
nov.
2019

Cachix permet de gérer facilement un cache personnel de paquets binaires. Concrètement, il s'agit d'un service de cloud et d'un logiciel client, le tout basé sur le gestionnaire de paquets Nix. Cachix propose différentes offres, dont une offre gratuite de 10 Go de stockage en accès public.

Quand on utilise la logithèque officielle de Nix, on télécharge des paquets binaires déjà compilés. Nix permet très facilement d'empaqueter des programmes/bibliothèques personnels ou de modifier les paquets officiels. Mais dans (…)

Journal Gérer son environnement utilisateur NixOS, avec Home-manager

Posté par  (site web personnel) . Licence CC By‑SA.
17
11
nov.
2019

Home-manager est un outil qui permet de gérer son environnement utilisateur : environnement de bureau, thème de fenêtre, thème d'icones, logiciels, paramètres des logiciels, services utilisateur, "dot files"…

Home-manager est prévu pour fonctionner sur la distribution linux NixOS et utilise le gestionnaire de paquets Nix.

code source - vidéo youtube - vidéo peertube

Présentation de home-manager

Pour faire simple, le but de home-manager est de fournir l'équivalent du fichier /etc/nixos/configuration.nix mais pour l'environnement utilisateur (au lieu de l'environnement système) (…)

Journal Dino, le client XMPP, est disponible sur plusieurs distributions GNU/Linux

Posté par  . Licence CC By‑SA.
20
23
fév.
2019

Bonjour nal.

Un tout petit billet pour te parler de Dino, un excellent client de messagerie utilisant le protocole XMPP.

Il est désormais disponible sur plusieurs distributions GNU/Linux, et pas des moindres:

  • Fedora, nom de paquet: dino
  • Debian ≥ 10: dino-im
  • Gentoo: net-im/dino
  • NixOS ≥ 18.03: dino
  • Ubuntu ≥ 18.04: dino-im
  • Arch Linux: dino-git sur AUR

Si des personnes souhaitent le packager pour d'autres distributions, ou aider au portage vers d'autres OS (*BSD, Windows, Mac OS…), qu'ils n'hésitent pas. ;)

(…)

Journal le style fonctionnel en vidéo (nix, nixos, haskell...), la suite...

Posté par  (site web personnel) . Licence CC By‑SA.
14
29
juin
2018

Bon bah, j'ai continué les vidéos du journal précédent (https://linuxfr.org/users/nokomprendo-3/journaux/le-style-fonctionnel-en-videos-nix-nixos-haskell).

Au passage, je suis passé sur framagit et j'ai ajouté un formatage plus propre des articles via hakyll (https://nokomprendo.frama.io/tuto_fonctionnel).

Les nouveaux sujets :
- Personnaliser une image Docker de NixOS pour de l'intégration continue
- Déployer un blog avec Hakyll, Gitlab-ci, Nix
- Nix, programmation et loi de Murphy
- Créer et partager des paquets Nix
- Archlinux vs Voidlinux
- Migrer un système NixOS (de (…)

Le gestionnaire de paquets Nix en version 2.0

Posté par  . Édité par nokomprendo, Guillaum, Olivier HUMBERT, Bruno Michel, Davy Defaud, Yves Bourguignon, palm123, ZeroHeure, Nÿco et Benoît Sibaud. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
48
3
avr.
2018
Gestion de versions

Nix est un gestionnaire de paquets fonctionnel dont la version 2.0 est sortie récemment. Parmi les nouveautés, on peut noter qu’une commande nix a été introduite pour uniformiser les différentes sous‐commandes (nix-build, nix-env, etc.) et avoir de meilleures options par défaut (pour la recherche de paquets notamment). Une bonne partie du reste du travail concerne des couches moins visibles mais néanmoins importantes : prise en charge de HTTP/2, amélioration de sécurité, etc.

Logo Nix

Nix peut être utilisé sur n’importe quelle distribution GNU/Linux en complément du gestionnaire de paquets habituel. Il existe également une distribution GNU/Linux articulée autour de Nix : NixOS. La version 18.03 de NixOS, prévue pour sortir très prochainement, inclura Nix 2.0.

Mise à jour : Nix 18.03 est sorti.

Journal le "style fonctionnel" en vidéos (Nix, NixOS, Haskell)

Posté par  (site web personnel) . Licence CC By‑SA.
43
8
jan.
2018

Salut

Si ça intéresse quelqu'un, j'ai fait quelques vidéos sans prétention sur l'utilisation de Nix/NixOS et la programmation en Haskell. Pour l'instant, il n'y en a qu'une dizaine; je pense en faire d'autres plus tard mais… plus tard.

Les vidéos : https://www.youtube.com/watch?v=i6s-G_Hh3s4&list=PLe8vnuC2T7iGE3w_d-MCHw5mLzRAMiCM9

Les résumés + codes : https://github.com/nokomprendo/tuto_fonctionnel

Les sujets des vidéos :
01 : Installation de NixOS
02 : Gestion de paquets avec Nix
03 : Installation de Nix sur Debian
04 : Utilisation des canaux avec Nix/NixOS
05 (…)

L’heure du test — épisode 1 — NixOS

Posté par  . Édité par Davy Defaud, palm123, galbolle, ZeroHeure, patrick_g, Nils Ratusznik, BAud, Benoît Sibaud, Parleur, Syvolc et rpnpif. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
50
28
avr.
2017
Distribution

Logo
L’heure du test est un rendez‐vous qui vous propose de nombreux tests et guides d’installation de distributions, étape par étape et en exposant leurs avantages et leurs inconvénients.

Aujourd’hui, on s’attaque à une distribution qui est un peu particulière, j’ai nommé NixOS !
Logo NixOS

Journal Comment j’ai abandonné Debian...

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
63
14
fév.
2017

Cher Nal,

J’ai commencé Debian à l’époque de la Potato, année 2000. À l’époque dans mes 9 m² de Fleming (Orsay), je luttais sur mon DX4-100. Un mec sur l’IRC est arrivé dans mon cagibi, a mis une disquette et l’installation se fit. (j’appris plus tard ce qu’est le PXE)

Et voilà, j’étais converti !

J’ai essayé bon nombre d’autres distributions connues Mandriva, Red Hat, CentOS, Ubuntu, SUSE, Arch Linux et des moins connues : Sourcemage. À chaque fois, je suis revenu sur Debian. Nous (…)

NixOS, collection printemps‐été 17

Posté par  . Édité par Davy Defaud, ZeroHeure, Nÿco, palm123 et Nils Ratusznik. Modéré par Nÿco. Licence CC By‑SA.
Étiquettes :
31
6
avr.
2017
Distribution

La distribution NixOS sort en version printemps‐été 17. Cette distribution GNU/Linux, fondée sur le gestionnaire de paquets Nix propose une gestion « purement fonctionnelle » des paquets et services GNU/Linux. Une dépêche un peu ancienne, mais toujours d’actualité, en décrit les principes de fonctionnement ; certains points ont été développés par la suite.

NisOS

Cette version comprend son lot de nouveautés :

  • il est désormais possible d’utiliser un système de surcouches (ou overlays) pour ajouter ses propres paquets (ou versions de paquets) à la distribution ;
  • de nouvelles versions pour de nombreux paquets, comme par un noyau Linux 4.9, Firefox 52 ou encore KDE / Plasma 5.8.6 ;
  • plein de nouveaux services et d’améliorations, notamment en termes de sécurité.

Journal Enregistrements de NixCon 2015

Posté par  . Licence CC By‑SA.
Étiquettes :
8
18
nov.
2015

Bonjour'Nal

Les enregistrements vidéos le la NixCon 2015 qui s’est déroulée ce week-end à Berlin sont disponibles : https://www.youtube.com/playlist?list=PL_IxoDz1Nq2Y7mIxMZ28mVtjRbbnlVdmy.

Il s’agit de la première édition de cette conférence relative à Nix. Pour rappel, Nix est un gestionnaire de paquets pour GNU/Linux et autres systèmes UNIX. Nix permet entre autre choses de faire des installations / mises à jours de manière atomique, des rollbaks, des installations simultanées d’un même logiciel / librairie à différentes versions et bien plus (…)

NixOS 14.12, la distribution Linux sans effet de bord

Posté par  . Édité par Benoît Sibaud, Nÿco, BAud, palm123, Stéphane Aulery, Nils Ratusznik, esdeem, Nicolas Boulay et olivierweb. Modéré par Benoît Sibaud. Licence CC By‑SA.
Étiquettes :
52
28
juil.
2015
Distribution

Le projet NixOS a sorti le 30 décembre 2014 une version de sa distribution Linux, la 14.12 ou « Caterpillar » de son petit nom. Cette distribution, « The Purely Functional Linux Distribution », est fondée sur le système de paquets Nix et la collection de paquets Nixpkgs. Nix et Nixpkgs sont utilisables avec d'autres systèmes : Linux, OS X, voire FreeBSD.

Logo nixos

Nix permet de gérer son système « sans effets de bord », ce qui permet notamment : des mises à jours réversibles, l'installation de paquets sans droits root, le déploiement distribué, les mélanges de paquets sources et binaires.