# Ajouter vos programmes

**URL:** <https://forum.glfos.org/t/ajouter-vos-programmes/88>\
**Category:** Tours d'horizon\
**Created:** [Septembre 14, 2026, 8:16 UTC](https://forum.glfos.org/t/ajouter-vos-programmes/88 "2026-09-14T20:16:47Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![wiki-glf](https://forum.glfos.org/user_avatar/forum.glfos.org/wiki-glf/32/142_2.png) [@wiki-glf](https://forum.glfos.org/u/wiki-glf)\
**Post date:** [Septembre 14, 2026, 8:16 UTC](https://forum.glfos.org/t/ajouter-vos-programmes/88/1 "2026-09-14T20:16:47Z")

</div>

GLF OS vous offre deux façons d'ajouter un programme qui n'est pas installé d'origine. Vous pouvez déclarer un paquet NixOS dans votre configuration personnelle, que le système construit et intègre ensuite, ou installer une application Flatpak, en quelques clics avec EasyFlatpak ou en ligne de commande. Cette page vous aide à choisir la bonne méthode, puis vous guide pas à pas.

## Quelle méthode choisir ?

| | Flatpak (EasyFlatpak) | Paquet NixOS |
| --- | --- | --- |
| **Installation** | Immédiate, depuis une logithèque graphique ou une commande | Une ligne à ajouter dans un fichier de configuration, puis une commande pour appliquer |
| **Redémarrage** | Jamais nécessaire | Nécessaire avec `glf-update` ; `glf-switch` applique sans redémarrer |
| **Catalogue** | Flathub, principalement des applications de bureau | Le catalogue des paquets NixOS : applications de bureau, mais aussi outils en ligne de commande et logiciels qui s'intègrent au système |
| **Isolation** | Applications isolées dans un bac à sable | Le programme fait partie du système, sans bac à sable |
| **Mises à jour** | Mises à jour par `glf-update` en même temps que le système | Mis à jour avec les sources du système, lors de `glf-update` ou `glf-switch` |
| **Idéal pour** | Navigateurs, messageries, logiciels créatifs et, plus largement, les applications de bureau courantes | Outils en ligne de commande, logiciels absents de Flathub, logiciels qui ont besoin de droits ou de services sur le système |

> 💡 **Astuce**  
> En cas de doute pour une application de bureau, commencez par EasyFlatpak : l'installation est immédiate, ne demande aucun redémarrage et ne touche pas à la configuration du système. Réservez les paquets NixOS aux cas où Flatpak ne convient pas.

## Les fichiers de configuration

La configuration de GLF OS se trouve dans le dossier `/etc/nixos`. Plusieurs fichiers y cohabitent, mais seul le dossier `customConfig` vous est réservé.

| Fichier | Rôle | Modifier ? |
| --- | --- | --- |
| `customConfig/default.nix` | Votre fichier personnel pour tous vos ajouts (programmes, options). Il n'est jamais touché par les outils GLF. | **Oui** |
| Vos fichiers `.nix` dans `customConfig/` | Les fichiers que vous créez vous-même pour organiser vos ajouts. Ils vous appartiennent. | **Oui** |
| `configuration.nix` | Généré par l'installeur (démarrage, utilisateurs et mots de passe, langue, clavier, édition GLF) et corrigé automatiquement par `glf-update` lors des évolutions. Il importe `hardware-configuration.nix` et `customConfig`. | Jamais |
| `hardware-configuration.nix` | Détection de votre matériel, générée à l'installation. | Jamais |
| `customized.nix` | Géré par l'application GLF Customizer, qui réécrit automatiquement sa zone balisée. Passez par GLF Customizer pour changer ces réglages. | Jamais |
| `flake.nix` et `flake.lock` | Gérés par `glf-update` : canal stable ou testing, migrations de format, versions des sources. | Jamais |

> 🛑 **Prudence**  
> Ne modifiez pas les fichiers marqués « Jamais ». Vos changements risquent d'être écrasés par les outils GLF, ou de bloquer les mises à jour de votre système. Tout ajout de programme ou d'option passe par le dossier `customConfig`.

## Ajouter un paquet NixOS

### 1. Trouver le paquet

Chaque paquet NixOS porte un nom précis qu'il faudra recopier exactement dans votre configuration. Deux canaux sont à votre disposition :

| Écriture | Canal | Caractéristiques |
| --- | --- | --- |
| `pkgs.<nom>` | Stable (NixOS 26.05 actuellement) | Versions éprouvées, à privilégier par défaut |
| `pkgs-unstable.<nom>` | nixos-unstable | Versions plus récentes, mais moins éprouvées |

La commande `nixos-version` affiche la version de NixOS installée sur votre poste. Les logiciels non libres sont autorisés sur les deux canaux : vous pouvez par exemple installer Google Chrome avec `pkgs.google-chrome`.

**Sur le site de recherche**

1. Ouvrez [search.nixos.org](https://search.nixos.org/packages).
2. Choisissez le canal : **26.05** si vous comptez utiliser `pkgs`, **unstable** si vous comptez utiliser `pkgs-unstable`.
3. Tapez le nom du logiciel, par exemple `qbittorrent`. Vous pouvez aussi ouvrir directement l'adresse `https://search.nixos.org/packages?channel=26.05&query=qbittorrent`.
4. Cliquez sur le paquet pour déplier sa fiche, puis sur l'onglet **NixOS Configuration** : il affiche la ligne exacte à recopier, par exemple `pkgs.qbittorrent` (le titre en gras du résultat donne aussi le nom complet).

> ⚠ **Attention**  
> Cet onglet indique que la configuration se trouve « habituellement dans /etc/nixos/configuration.nix ». Sur GLF OS, n'y touchez pas : recopiez uniquement la ligne `pkgs.qbittorrent` dans `customConfig/default.nix`, comme expliqué à l'étape suivante.

Les versions diffèrent souvent d'un canal à l'autre. Par exemple, qBittorrent est proposé en version 5.2.2 sur le canal 26.05 et en version 5.2.3 sur unstable.

Certains noms contiennent un point, comme `kdePackages.filelight`. Recopiez-les tels quels, précédés du canal : `pkgs.kdePackages.filelight`. Pour ces paquets, la ligne « Name » n'affiche que la fin du nom (« filelight »), d'où l'intérêt de l'onglet NixOS Configuration.

**En ligne de commande**

```bash
nix search nixpkgs qbittorrent

```

Pour chaque résultat, la commande affiche le nom d'attribut, la version et une description. Le premier lancement peut prendre un peu de temps.

**Essayer un programme sans l'installer**

Avant de modifier votre configuration, vous pouvez tester un logiciel :

```bash
nix shell nixpkgs#qbittorrent

```

Lancez ensuite `qbittorrent` depuis ce même terminal. Rien n'est installé durablement sur votre système.

> ℹ **Remarque**  
> Certains logiciels disposent d'une option NixOS dédiée, visible dans l'onglet « Options » de [search.nixos.org](http://search.nixos.org). Cette option configure aussi les droits et les services nécessaires au logiciel : quand elle existe, préférez-la au simple paquet. Par exemple, pour Wireshark, ajoutez la ligne `programs.wireshark.enable = true;` sous le commentaire `# Add your custom configuration here ↓` de `customConfig/default.nix`.

### 2. Déclarer le paquet dans customConfig/default.nix

**Ouvrir le fichier**

Les fichiers de `/etc/nixos` appartiennent à l'administrateur (root). Pour les modifier, ouvrez un terminal et tapez :

```bash
sudo nano /etc/nixos/customConfig/default.nix

```

Saisissez votre mot de passe. Dans l'éditeur nano, enregistrez avec **Ctrl+O** puis **Entrée** , et quittez avec **Ctrl+X**.

Vous pouvez aussi utiliser l'éditeur de texte graphique de votre bureau : votre mot de passe vous sera demandé au moment d'enregistrer.

**Ajouter le paquet à la liste**

Repérez la liste `environment.systemPackages`. Sur une installation neuve, elle ne contient que deux commentaires :

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

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

  ];

```

Ajoutez vos paquets stables sous le premier commentaire, et vos paquets unstable sous le second. Voici la même liste après l'ajout de qBittorrent et de KeePassXC depuis le canal stable, et de FreeCAD depuis le canal unstable :

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

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

  ];

```

Enregistrez le fichier. Le programme n'est pas encore installé : il reste à appliquer la configuration (étape 4).

**Règles de syntaxe à respecter**

- Un paquet par ligne, entre les crochets `[` et `];`.
- Aucune virgule entre les paquets.
- Tout ce qui suit un `#` sur une ligne est un commentaire, ignoré par le système.
- Conservez le `];` qui ferme la liste.

> ⚠ **Attention**  
> Ne modifiez pas l'en-tête du fichier, c'est-à-dire le bloc `{ lib, config, pkgs, pkgs-unstable, ... }:` situé tout en haut. Sans lui, le système ne sait plus ce que signifient `pkgs` et `pkgs-unstable`, et la construction échoue.

### 3. Variante : ranger vos programmes dans un fichier séparé

Si votre liste s'allonge, vous pouvez répartir vos programmes dans plusieurs fichiers, par exemple par thème. Ces fichiers vous appartiennent, au même titre que `default.nix`.

**Créer le fichier**

```bash
sudo nano /etc/nixos/customConfig/mes-programmes.nix

```

Écrivez-y le contenu suivant, en adaptant la liste des paquets :

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

{
  environment.systemPackages = [
    pkgs.krita
    pkgs-unstable.inkscape
  ];
}

```

La première ligne est l'en-tête de ce fichier. Si vous utilisez des paquets `pkgs-unstable`, elle doit mentionner `pkgs-unstable`.

**Importer le fichier dans default.nix**

Ouvrez `customConfig/default.nix` et ajoutez une ligne `imports` juste après l'accolade ouvrante qui suit `}:` :

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

{
  imports = [./mes-programmes.nix];

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

```

Quelques précisions :

- Le chemin est relatif au dossier `customConfig` : `./mes-programmes.nix` désigne le fichier placé à côté de `default.nix`.
- Pour importer plusieurs fichiers, listez-les tous sur une seule ligne `imports` : `imports = [./jeux.nix ./graphisme.nix];`.
- Les listes `environment.systemPackages` de tous les fichiers s'additionnent. Vous pouvez donc garder certains paquets dans `default.nix` et en placer d'autres dans vos fichiers. Si vous déplacez un programme vers un nouveau fichier, retirez sa ligne de `default.nix` pour qu'il ne soit déclaré qu'à un seul endroit.

### 4. Appliquer la configuration

Enregistrer le fichier ne suffit pas : il faut ensuite demander au système de construire la nouvelle configuration. Trois commandes sont disponibles.

**glf-update (méthode recommandée)**

```bash
glf-update

```

Cette commande :

- vous demande votre mot de passe (elle se relance avec sudo) ;
- met à jour les sources du système ;
- construit et valide la nouvelle configuration ;
- l'installe pour le **prochain démarrage** ;
- met aussi à jour vos applications Flatpak.

Une fois la commande terminée, **redémarrez votre ordinateur** : vos nouveaux programmes sont alors disponibles.

**glf-switch : appliquer sans redémarrer**

```bash
glf-switch

```

Cette commande met elle aussi à jour les sources, puis applique la configuration immédiatement, sans redémarrage. Elle supprime ensuite les générations de plus de 5 jours. Certaines modifications demandent malgré tout un redémarrage pour être prises en compte.

**glf-build : vérifier sans rien appliquer**

```bash
glf-build

```

Cette commande construit la configuration sans rien appliquer. Elle est pratique pour vérifier que vos fichiers ne contiennent pas d'erreur.

> ℹ **Remarque**  
> Pas d'inquiétude en cas d'erreur : si la construction échoue, par exemple à cause d'une faute de frappe dans un fichier, rien n'est installé et votre système actuel reste inchangé. Corrigez le fichier (voir la section « En cas de problème » plus bas) puis relancez la commande. Par ailleurs, les générations précédentes de votre système restent proposées au menu de démarrage : vous pouvez toujours revenir en arrière.

### 5. Retirer un programme

Pour retirer un programme ajouté de cette façon, supprimez sa ligne du fichier, ou transformez-la en commentaire en ajoutant `#` devant :

```nix
    # pkgs.qbittorrent

```

Appliquez ensuite la configuration comme pour un ajout : `glf-update` puis redémarrage, ou `glf-switch`.

## Installer une application Flatpak

Flatpak est activé sur GLF OS et le dépôt Flathub est ajouté automatiquement : vous n'avez rien à configurer. Les applications Flatpak s'installent immédiatement, sans redémarrage, fonctionnent isolées dans un bac à sable et sont souvent disponibles dans des versions récentes.

### Avec EasyFlatpak

EasyFlatpak est une logithèque graphique préinstallée avec GLF OS. Vous la trouverez dans le menu des applications (dans le dossier « GLF Apps » sous GNOME).

1. Ouvrez EasyFlatpak, puis tapez le nom de l'application dans le champ **Rechercher…** ou parcourez les **Catégories**.
2. Ouvrez la fiche de l'application et cliquez sur **Installer**.
3. Dans la fenêtre qui s'ouvre, activez ou non **Installer uniquement pour l'utilisateur actuel** , puis confirmez avec **Installer**.

L'installation se poursuit en arrière-plan : la section **En cours** permet de suivre sa progression.

EasyFlatpak propose aussi :

- les **Packs** , des groupes d'applications : sélectionnez celles qui vous intéressent, puis cliquez sur **Installer la sélection** ;
- la section **Installés** , depuis laquelle vous pouvez retirer une application avec **Désinstaller** ;
- la section **Mises à jour** ;
- dans **Paramètres** , l'emplacement d'installation proposé par défaut ( **Où les applications Flatpak seront installées** ).

Pour une visite illustrée de l'application, consultez le guide [Easy Flatpak](https://forum.glfos.org/t/easy-flatpak/74).

### En ligne de commande

Les applications Flatpak se désignent par un identifiant, par exemple `org.qbittorrent.qBittorrent` pour qBittorrent. Repérez-le dans les résultats de la recherche, puis utilisez-le dans les autres commandes :

```bash
# Rechercher une application
flatpak search qbittorrent

# Installer l'application depuis Flathub
flatpak install flathub org.qbittorrent.qBittorrent

# Lancer l'application
flatpak run org.qbittorrent.qBittorrent

# Lister les applications installées
flatpak list --app

# Désinstaller l'application
flatpak uninstall org.qbittorrent.qBittorrent

# Supprimer les éléments qui ne servent plus à aucune application
flatpak uninstall --unused

```

Pour installer une application uniquement pour l'utilisateur courant, ajoutez l'option `--user` :

```bash
flatpak install --user flathub org.qbittorrent.qBittorrent

```

Vos applications Flatpak sont mises à jour à chaque `glf-update`. Si vous préférez gérer ces mises à jour vous-même, décommentez la ligne `# glf.autoUpgrade.flatpak.enable = false;` (retirez le `#` en début de ligne) dans `customConfig/default.nix` ; si elle est absente, ajoutez `glf.autoUpgrade.flatpak.enable = false;` sous le commentaire `# Add your custom configuration here ↓`. Pour les autres options de ce bloc, consultez [Modularité](https://forum.glfos.org/t/modularite/86).

> 💡 **Astuce**  
> Pour régler les permissions de vos applications Flatpak, installez **Flatseal** depuis Flathub (identifiant `com.github.tchx84.Flatseal`), avec EasyFlatpak ou avec la commande `flatpak install flathub com.github.tchx84.Flatseal`.

## En cas de problème

Voici les messages d'erreur les plus fréquents lors de l'ajout d'un paquet NixOS, et comment les résoudre.

- `error: undefined variable 'pkgs-unstable'`

- `error: attribute 'qbitorent' missing`

- `error: syntax error, unexpected ...`

- **Le programme n'apparaît pas après glf-update**

Si un problème survient après le redémarrage, choisissez une génération précédente dans le menu de démarrage pour retrouver votre système tel qu'il était, puis corrigez votre configuration.

## Voir aussi

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