# Douze modules pour votre customConfig : le sommaire de la série

**URL:** https://forum.glfos.org/t/douze-modules-pour-votre-customconfig-le-sommaire-de-la-serie/137
**Category:** Configuration et personnalisation
**Created:** [Septembre 15, 2026, 7:10 UTC](https://forum.glfos.org/t/douze-modules-pour-votre-customconfig-le-sommaire-de-la-serie/137 "2026-09-15T19:10:37Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![NoBoDyZ](https://forum.glfos.org/user_avatar/forum.glfos.org/nobodyz/32/158_2.png) [@NoBoDyZ](https://forum.glfos.org/u/NoBoDyZ)
#### Post date: [Septembre 15, 2026, 7:10 UTC](https://forum.glfos.org/t/douze-modules-pour-votre-customconfig-le-sommaire-de-la-serie/137/1 "2026-09-15T19:10:37Z")

</div>

Quand on commence à personnaliser GLF OS, tout tient dans `/etc/nixos/customConfig/default.nix`. Au bout de quelques semaines le fichier s'allonge, on ne retrouve plus ses réglages et on hésite à y toucher. La réponse tient en un mot : `imports`. Vous écrivez un petit fichier par sujet, vous l'ajoutez à la liste, et votre `default.nix` redevient lisible.

Cette page sert de point d'entrée à une série de douze articles. Chacun détaille un fichier complet, pris sur une machine qui tourne au quotidien : ce qu'il apporte, ce que fait chaque ligne, les pièges rencontrés, les options que vous pourriez vouloir changer, et quoi faire quand cela ne marche pas.

> ℹ **Remarque**  
> Si vous découvrez `customConfig`, lisez d'abord [Ajouter vos programmes](https://forum.glfos.org/t/ajouter-vos-programmes/88) et [Configuration personnalisée](https://forum.glfos.org/t/configuration-custom/87). Les douze articles partent du principe que ces deux pages sont acquises.

  

## Le principe, en une page

Un module, c'est un fichier `.nix` rangé à côté de `default.nix`, dans `/etc/nixos/customConfig/`. Il commence par un en-tête déclarant ce dont il a besoin, suivi d'un bloc de réglages. Vous le nommez comme vous voulez.

Voici à quoi ressemble un `default.nix` une fois les modules sortis :

```nix
{
  lib,
  config,
  pkgs,
  pkgs-unstable,
  ...
}:

{
  imports = [
    ./claude-code.nix
    ./guake.nix
    ./zsh.nix
    ./vim.nix
    ./protonvpn.nix
    ./secret-mngt.nix
    ./vivaldi.nix
    ./mes-programmes.nix
    ./protonup-qt.nix
    ./ssh.nix
    ./invite-vm.nix
    ./samba.nix
  ];

  environment.systemPackages = [
  # Add your stable apps here (exemple: pkgs.btop)

  # Add your unstable apps here (exemple: pkgs-unstable.btop)

  ];

  # Add your custom configuration here ↓

}

```

Trois choses à retenir :

- le chemin est relatif au dossier `customConfig`, d'où le `./` en tête ;
- `imports` se place juste après l'accolade ouvrante qui suit `}:`, avant le reste ;
- toutes les listes des fichiers importés s'additionnent avec celles de `default.nix`, vous ne perdez rien en déplaçant un paquet.

Chaque fichier porte son propre en-tête, qui liste uniquement ce qu'il utilise :

```nix
{ pkgs, ... }: # le fichier n'utilise que pkgs
{ lib, pkgs, ... }: # il utilise aussi lib (mkForce, mkDefault, mkIf)
{ pkgs, pkgs-unstable, ... }: # il pioche dans la branche instable

```

> 💡 **Astuce**  
> Un `#` devant une ligne d'import désactive le module sans supprimer le fichier. C'est la façon la plus simple de savoir si l'un de vos ajouts est responsable d'un problème.

Une fois vos fichiers écrits et vos lignes ajoutées, une seule commande applique le tout :

```bash
glf-update

```

  

## Les douze articles

**Environnement de travail**

- [Installer Claude Code et son outillage](https://forum.glfos.org/t/installer-claude-code-et-son-outillage-avec-un-module-customconfig/138) : l'assistant en ligne de commande, Windsurf, direnv et les serveurs de langage Nix.
- [Installer Guake, le terminal déroulant](https://forum.glfos.org/t/installer-guake-le-terminal-deroulant-avec-un-module-customconfig/140) : un terminal qui descend sur F12, et pourquoi il faut passer par dconf sous Wayland.
- [Installer zsh et le thème Powerlevel10k](https://forum.glfos.org/t/installer-zsh-et-le-theme-powerlevel10k-avec-un-module-customconfig/149) : oh-my-zsh, les greffons, les polices Nerd Font et les pièges du changement de shell.
- [Configurer vim et ses greffons](https://forum.glfos.org/t/configurer-vim-et-ses-greffons-avec-un-module-customconfig/147) : des greffons déclarés dans Nix, sans Vundle ni vim-plug.

**Applications**

- [Installer Vivaldi avec les codecs propriétaires](https://forum.glfos.org/t/installer-vivaldi-avec-les-codecs-proprietaires-dans-un-module-customconfig/148) : comprendre `override` à travers un cas concret.
- [Installer FileZilla](https://forum.glfos.org/t/installer-filezilla-avec-un-module-customconfig/139) : le cas le plus simple, et comment ne pas se marcher sur les pieds avec GLF Packages.
- [Installer ProtonUp-Qt](https://forum.glfos.org/t/installer-protonup-qt-avec-un-module-customconfig/142) : GE-Proton, Wine-GE, et pourquoi votre nouvelle version n'apparaît pas dans Steam.
- [Installer Proton VPN](https://forum.glfos.org/t/installer-proton-vpn-avec-un-module-customconfig/143) : l'application officielle, la variante en ligne de commande, et le tunnel WireGuard entièrement déclaratif.

**Réseau et sécurité**

- [Chiffrer ses secrets avec sops](https://forum.glfos.org/t/chiffrer-ses-secrets-avec-sops-dans-un-module-customconfig/145) : pourquoi un mot de passe n'a rien à faire dans un fichier `.nix`, et comment faire autrement.
- [Ouvrir un accès SSH et se connecter par clé](https://forum.glfos.org/t/ouvrir-un-acces-ssh-et-se-connecter-par-cle-avec-un-module-customconfig/146) : l'authentification par clé, et l'ordre des opérations pour ne pas se retrouver à la porte.
- [Partager un dossier avec Samba](https://forum.glfos.org/t/partager-un-dossier-avec-samba-dans-un-module-customconfig/144) : un partage authentifié, un partage ouvert, toutes les options, et le montage depuis une autre machine.
- [Installer les agents invités QEMU/KVM et SPICE](https://forum.glfos.org/t/installer-les-agents-invites-qemu-kvm-et-spice-avec-un-module-customconfig/141) : presse-papiers partagé, définition d'écran qui suit, extinction propre.

  

## En cas de problème

> ℹ **Remarque**  
> Une erreur d'évaluation **n'installe rien**. Votre système reste exactement dans l'état où il était, et vous pouvez corriger tranquillement. On ne casse pas une installation NixOS en se trompant dans un fichier.

Les messages que vous rencontrerez le plus souvent :

- _undefined variable 'pkgs-unstable'_ : l'en-tête du fichier ne mentionne pas ce qu'il utilise. Ajoutez le mot manquant entre les accolades de la première ligne.
- _path '/etc/nixos/customConfig/mon-fichier.nix' does not exist_ : une faute de frappe dans `imports`, ou un fichier créé ailleurs. Le chemin part toujours du dossier `customConfig`.
- _The option 'x' has conflicting definition values_ : GLF OS a déjà posé cette valeur. Ce n'est pas une faute de votre part, le système vous demande de trancher, avec `lib.mkForce`.
- _attribute 'y' missing_ : le nom du paquet n'existe pas tel quel. Vérifiez-le sur [search.nixos.org](https://search.nixos.org/packages), les tirets et les majuscules comptent.

Si un démarrage se passe mal après une modification, la **génération précédente** est toujours proposée dans le menu de démarrage. Et sans redémarrer :

```bash
sudo nixos-rebuild switch --rollback

```

  

## Et vous ?

Si vous avez composé des modules pour d'autres usages, ils ont toute leur place dans [Partagez vos configs](https://forum.glfos.org/c/configuration/partage-de-configs/15). Et si un point reste obscur dans l'un des douze articles, posez la question en réponse sous celui qui vous concerne : la réponse profitera aux suivants.

  

## Voir aussi

- [Ajouter vos programmes](https://forum.glfos.org/t/ajouter-vos-programmes/88)
- [Configuration personnalisée](https://forum.glfos.org/t/configuration-custom/87)
- [Les commandes GLF](https://forum.glfos.org/t/les-commandes-glf/89)
- [Mettre à jour son système](https://forum.glfos.org/t/mettre-a-jour-son-systeme/90)
- [Modularité](https://forum.glfos.org/t/modularite/86)
