Introduction
Les systèmes d’exploitation à base immuable, tels que NixOS ou Fedora Atomic, offrent de nombreux avantages en termes de stabilité et de sécurité. Cependant, ils présentent également des défis uniques pour les développeurs, notamment lorsqu’il s’agit de configurer des environnements de développement comme kde-builder. Dans ce post, nous explorerons comment surmonter ces obstacles en utilisant des outils comme distrobox ou toolbox, permettant ainsi aux développeurs de profiter des avantages des systèmes immuables tout en conservant la flexibilité nécessaire pour travailler efficacement avec kde-builder.
Préparer son environnement
Introduction
La préparation de l’environnement de développement est essentielle pour utiliser kde-builder sur des systèmes immuables. Les outils et étapes varient selon la distribution : Fedora Atomic intègre toolbox, facilitant le processus, tandis que NixOS nécessite la configuration manuelle de distrobox. Je vais donc dans un premier temps expliquer comment installer distrobox sur NixOS. Ensuite, je finirais par la configuration générale pour Fedora Atomic et aussi pour Nix OS.
Installation de distrobox sur Nix OS
Pour installer distrobox, il suffit de rajouter dans sa configuration configuration.nix
ou dans son flake
la configuration suivante:
|
|
Une fois la configuration ajouté, il suffit de taper la commande:
Sans flake
|
|
Avec flake
|
|
Normalement, vous devriez avoir la commande distrobox
de disponible. Si c’est le cas, vous pouvez allez à cette étape
Création du container pour travailler
NixOS Distrobox
Pour créer le container avec distrobox, on peut passer par ce fichier distrobox.ini
|
|
Ensuite, il suffit de taper la commande pour créer notre environnement nommé kdedev
|
|
Une fois l’environnement créer, il reste une dernière étape à faire.
Je recommande de rajouter ceci dans votre ~/.bashrc
ou dans le bashrc
situé dans le container configuré avec home
:
|
|
Vous pouvez l’éditer plus facilement en allant dans votre environnement de travail avec:
|
|
Cet alias peut-être utile pour retirer les variables d’environnements que rajoute NixOS. Sur Fedora Atomic, ça ne pose pas de problème, car ils respectent la FHS donc les librairies pointent au même endroit que dans le container. Sauf que Nix OS ne respecte pas la FHS (pour de bonnes raisons), donc on peut avoir des conflits lors de la compilation ou de l’exécution de programme que l’on aura compilé avec kde-builder
.
La FHS est une structure de fichier normalisé dans le monde Linux plus d’info ici
Pour l’utiliser, une fois dans votre environnement de travail, il suffit de faire:
|
|
Fedora Toolbox
Pour la configuration avec Fedora Toolbox, c’est assez simple, car Fedora intègre tout par défaut. Il suffit de taper la commande:
|
|
Dans notre cas, ça sera:
|
|
Note: À l’heure ou j’écris le post, j’ai encore des soucis pour lancer kwin
avec Fedora Toolbox. J’ai des problèmes de permission sur les DRM. Je pense que c’est lié à selinux
.
J’obtiens l’erreur ci-dessous lors du lancement de kwin_wayland
|
|
DRM : C’est Direct Rendering Manager et non Digital Rights Management pour plus d’infos
Test de notre environnement
Avant de lancer notre test, il faut installer kde-builder
. Vous pouvez voir mon post précédent ici ou vous pouvez suivre ce lien qui est le même que dans le post.
Rappel Il faut l’installer dans votre environnement créé juste avant.
|
|
NixOS Distrobox
|
|
Fedora Toolbox
Une fois votre environnement configurer, normalement vous pouvez tester de compiler solid
avec la commande :
|
|
Puis de lancer solid avec la commande:
|
|
Voilà 🙂 Normalement vous êtes prêt à travailler sur KDE avec un système immuable.
Note pour le démarrage de KDE Plasma Mobile
Pour plasma-mobile, il est nécessaire de configurer d’autres variables d’environnements. Voici le script que j’utilise :
|
|
Vous pouvez aussi lancer le menu du haut sans lancer tout kwin
avec le script :
|
|