Le fichier /etc/nixos/customConfig/default.nix contient un bloc d'options commentées pour ajuster certaines fonctions de GLF OS : Firefox, pilote NVIDIA, mises à jour automatiques, RAID logiciel. Depuis l'arrivée de GLF Customizer, ce bloc ne sert plus à gérer les groupes de logiciels. Cette page détaille chaque ligne, celles à éviter, et comment appliquer vos changements.
Groupes de logiciels et profil : utilisez GLF Customizer
Les groupes de logiciels (Jeux, Bureautique, Communication, Multimedia, Photo, Production video, Streaming et Impression), leurs applications et le profil se règlent avec GLF Customizer, et non dans customConfig. L'application enregistre vos choix dans /etc/nixos/customized.nix.
Important
N'écrivez pas à la main de lignesglf.features.*danscustomConfig/default.nix. Si vous l'avez déjà fait, retirez-les et refaites vos réglages dans GLF Customizer (voir « Conflits avec GLF Customizer »).
Les options de customConfig/default.nix
Modifier le fichier
Chaque option est précédée d'un commentaire bilingue et neutralisée par un #. Pour l'activer, retirez le # en début de ligne ; pour revenir en arrière, remettez-le. Pour ouvrir le fichier avec les droits nécessaires, suivez la méthode de Comment ajouter vos propres programmes.
Remarque
Ce fichier est copié à l'installation etglf-updatene le met jamais à jour : votre modèle peut donc différer de celui présenté ici.
Attention
Ne modifiez jamais à la mainconfiguration.nix,hardware-configuration.nix,customized.nix,flake.nixniflake.lock: ils sont gérés par l'installeur, par GLF Customizer ou parglf-update.
Ce que fait chaque ligne
| Ligne | Effet réel | Fonctionne ? | À faire |
|---|---|---|---|
glf.firefox.enable = lib.mkForce false; |
Retire Firefox et ses packs de langue | Oui | Décommenter |
glf.gaming.enable = lib.mkForce false; |
Aucun : la ligne n'est plus lue | Non, sans effet | GLF Customizer, catégorie Jeux |
glf.nvidia_config.enable = lib.mkForce false; |
Retire le pilote NVIDIA propriétaire | Oui | Décommenter, en gardant lib.mkForce |
glf.printing.enable = lib.mkForce false; |
Bloque toute reconstruction du système | Non, erreur | Ne pas décommenter ; GLF Customizer, catégorie Impression |
glf.autoUpgrade.enable = false; |
Arrête les mises à jour automatiques | Oui | Décommenter |
glf.autoUpgrade.flatpak.enable = false; |
glf-update ne touche plus aux Flatpaks |
Oui | Décommenter |
boot.swraid.enable = true; |
Active le RAID logiciel mdadm | Oui | Seulement si le système est sur RAID mdadm |
boot.initrd.kernelModules = [ "btrfs" "nbd" ]; |
Force des modules noyau au démarrage | Oui, si les modules existent | En connaissance de cause, liste adaptée |
glf.autoUpgrade = lib.mkForce false; (ancienne forme) |
Arrête les mises à jour automatiques | Oui, mais piégeuse | Remplacer par glf.autoUpgrade.enable = false; |
Prudence
Ne décommentez jamais la ligneglf.printing.enable = lib.mkForce false;. Cette option n'existe plus. Tant que la ligne reste active, la construction échoue :glf-update, les mises à jour automatiques,glf-switchet GLF Customizer ne fonctionnent plus, et votre système ne reçoit plus aucune mise à jour. Pour retirer l'impression ou la numérisation, utilisez GLF Customizer, catégorie Impression.
Firefox
GLF Customizer ne gère pas Firefox : cette ligne est le moyen prévu pour le retirer. Vos profils Firefox ne sont pas supprimés, et sous GNOME son icône peut rester dans le dock.
Pilote NVIDIA
Quand il détecte une carte NVIDIA, l'installeur active le pilote dans configuration.nix. lib.mkForce est donc obligatoire ; sans lui, la construction échoue :
The option `glf.nvidia_config.enable' has conflicting definition values
Passer à une carte AMD
Sur une machine installée avec une seule carte NVIDIA, l'installeur a aussi désactivé la configuration AMD de GLF. En plus de la ligne NVIDIA, ajoutez sous # Add your custom configuration here ↓ :
glf.amdgpu_config.enable = lib.mkForce true;
Elle réactive Mesa (64 et 32 bits) et le chargement précoce d'amdgpu pour l'écran de démarrage. Sur une installation plus ancienne, elle ne change rien.
Le changement prend effet au redémarrage. Une carte NVIDIA restée en place fonctionne alors avec le pilote libre, sans CUDA ni NVENC, avec des performances en jeu très réduites. Procédure complète : Changement de GPU.
Mises à jour automatiques
GLF OS lance une mise à jour une minute après le démarrage, puis toutes les 12 heures. glf.autoUpgrade.enable = false; supprime ce lancement automatique ; glf-update reste utilisable à la main et le nettoyage hebdomadaire continue. L'arrêt vaut après le redémarrage.
Prudence
Désactiver les mises à jour automatiques est à vos risques et périls. Le système, les applications Flatpak et les correctifs de sécurité (noyau, Firefox, correctifs GLF) ne sont plus mis à jour tant que vous ne lancez pas vous-mêmeglf-update.
Remplacer l'ancienne forme glf.autoUpgrade = lib.mkForce false;
Dans les anciennes versions de GLF OS, glf.autoUpgrade était un simple interrupteur ; c'est aujourd'hui un groupe de réglages (enable et flatpak.enable). L'ancienne forme est encore acceptée, mais :
- son
lib.mkForceporte sur tout le groupe et écarte vos autres réglagesglf.autoUpgradeplacés ailleurs ; - décommentée dans le même fichier que
glf.autoUpgrade.flatpak.enable = false;, elle rend le fichier illisible et la construction échoue.
Utilisez donc glf.autoUpgrade.enable = false;.
Mises à jour des Flatpaks
Avec glf.autoUpgrade.flatpak.enable = false;, glf-update, automatique ou manuel, ne met plus à jour vos Flatpaks et ne retire plus les runtimes inutilisés. Mettez-les à jour avec EasyFlatpak ou flatpak update (Discord compris, installé en Flatpak par GLF OS). L'arrêt vaut après le redémarrage qui suit glf-update.
RAID logiciel mdadm
boot.swraid.enable = true; ajoute mdadm et rend disponibles au démarrage les modules md_mod, raid0, raid1, raid10 et raid456. Elle n'est utile que si / ou une partition montée au démarrage est sur un volume RAID mdadm ; sinon, elle alourdit l'initrd sans bénéfice. Si c'était le cas dès l'installation, hardware-configuration.nix l'active déjà, sans conflit.
Remarque
Le commentaire du modèle mentionnedm_mod: c'est inexact, il s'agit demd_mod(dm_modsert à LVM et LUKS).
Tant que ni MAILADDR ni PROGRAM n'est défini, la construction affiche cet avertissement, sans échouer :
mdadm: Neither MAILADDR nor PROGRAM has been set. This will cause the `mdmon` service to crash.
Réglez-le avec boot.swraid.mdadmConf, comme l'explique RAID mdadm.
Modules noyau au démarrage
boot.initrd.kernelModules charge des modules noyau dès le tout début du démarrage, en plus de ceux que GLF OS déclare déjà.
Attention
- Remplacez l'exemple
[ "btrfs" "nbd" ]par les modules dont vous avez besoin.btrfsest inutile si un système de fichiers nécessaire au démarrage est en Btrfs : NixOS l'ajoute déjà.- Un nom de module inconnu fait échouer la construction ; votre système actuel reste inchangé.
- Un module qui plante peut empêcher le démarrage. Choisissez alors une génération précédente dans le menu de démarrage : les 10 dernières y figurent, mais le nettoyage automatique supprime celles de plus de 5 jours.
Appliquer vos modifications
Enregistrez le fichier, lancez la commande suivante, puis redémarrez votre ordinateur :
glf-update
glf-update met aussi à jour le système et installe la nouvelle configuration pour le prochain démarrage. Si la construction échoue, rien n'est installé. glf-build vérifie le fichier sans rien appliquer.
Remarque
glf-switchapplique la configuration immédiatement, mais ne met pas à jour les Flatpaks et n'effectue ni les migrations ni la reprise sur incident deglf-update. Pour cette page, préférezglf-updateet un redémarrage, qu'un changement de pilote graphique impose de toute façon. Inutile de lancerglf-switchaprèsglf-update.
Conflits avec GLF Customizer
GLF Customizer ne lit jamais customConfig. Il écrit dans customized.nix le profil, le bureau et, en lib.mkForce, uniquement les écarts par rapport au profil. Une ligne glf.features.* ajoutée à la main pose donc problème :
- si le groupe est actif dans votre profil (Jeux en standard, par exemple), la ligne fonctionne, mais GLF Customizer affiche toujours le groupe comme actif et le réactiver n'écrit rien : votre ligne s'applique sans que l'interface le montre ;
- si le groupe est inactif dans votre profil (Jeux en mini ou streamers, Impression en mini), l'activer dans GLF Customizer crée un conflit et la construction échoue avec
has conflicting definition values.
Même risque avec glf.profile ou glf.environment.type définis dans customConfig avec une autre valeur. Enfin, une erreur dans customConfig empêche aussi GLF Customizer d'appliquer vos choix.
Si vous avez déjà ajouté de telles lignes, supprimez-les, puis réglez vos groupes dans GLF Customizer et cliquez sur Apply.
Réparer après avoir décommenté glf.printing.enable
Si vos mises à jour échouent depuis que vous avez décommenté cette ligne, glf-update signale un « Échec reconstruction » et renvoie vers /var/log/glfos-update.log, où figure l'erreur :
error: The option `glf.printing' does not exist. Definition values:
Votre système actuel n'est pas abîmé : il reste sur sa dernière version construite.
- Ouvrez
customConfig/default.nix. - Remettez le
#devant la ligne :# glf.printing.enable = lib.mkForce false; - Enregistrez, puis lancez
glf-update. - Redémarrez votre ordinateur.
- Pour retirer l'impression, passez par GLF Customizer, catégorie Impression.
Astuce
Les lignesglf.nvidia.enable,glf.update.enable,glf.fanatec.enableetglf.new-lg4ff.enabled'anciens modèles provoquent la même erreurdoes not exist: remettez-leur aussi un#.
Modèle corrigé du fichier
Voici le modèle actuel, corrigé, pour repartir d'une base saine. Les lignes glf.gaming.enable et glf.printing.enable en ont été retirées volontairement, car elles ne fonctionnent pas. Avant de remplacer votre fichier, mettez de côté vos propres paquets et réglages.
{
lib,
config,
pkgs,
pkgs-unstable,
...
}:
{
environment.systemPackages = [
# Add your stable apps here (exemple: pkgs.btop)
# Add your unstable apps here (exemple: pkgs-unstable.btop)
];
# --- OPTIONS DE DÉSACTIVATION (décommenter pour désactiver) / DISABLE OPTIONS (uncomment to disable) ---
# Après modification, appliquer avec : `glf-update` / After editing, apply with: `glf-update`
# Désactiver Firefox / Disable Firefox
# glf.firefox.enable = lib.mkForce false;
# Désactiver le pilote NVIDIA (utile en cas de passage vers une carte AMD) / Disable NVIDIA driver (useful when switching to an AMD GPU)
# glf.nvidia_config.enable = lib.mkForce false;
# ⚠️ Désactiver les mises à jour automatiques (attention : risque pour la sécurité) / ⚠️ Disable automatic updates (warning: security risk)
# glf.autoUpgrade.enable = false;
# Ne pas mettre à jour ni nettoyer les Flatpaks pendant glf-update / Do not update or clean up Flatpaks during glf-update
# glf.autoUpgrade.flatpak.enable = false;
# Activer le support RAID logiciel (mdadm), nécessaire si votre rootfs est sur un volume md0/md1/... / Enable software RAID (mdadm) support, required when your rootfs lives on a md0/md1/... volume.
# Rend disponibles md_mod + raid* dans l'initrd. Voir la page RAID mdadm du wiki / Makes md_mod + raid* available in the initrd. See the RAID mdadm wiki page.
# boot.swraid.enable = true;
# Ajouter des modules kernel supplémentaires à l'initrd / Add extra kernel modules to the initrd
# Exemple : Btrfs RAID, NBD, etc. / Example : Btrfs RAID, NBD, etc.
# boot.initrd.kernelModules = [ "btrfs" "nbd" ];
# Add your custom configuration here ↓
}