Aller au contenu

Modules Home Manager

Dossier « Réseau local » de la grille d’applications : nix-admin sur l’hôte d’administration.


Profil maison pour les utilisateurs avancés (informaticiens, développeurs, administrateurs).

  • enable bool Activer les fonctionnalités pour utilisateurs avancés
  • enableTools bool Divers outils pour utilisateurs avancés
  • enablePhoneTools bool Outils pour smartphone (scrcpy)
  • enableAdmin bool Activer les fonctionnalités administrateur (réseau, outils système)
  • enableNixAdmin bool Activer les fonctionnalités d’administration Nix
  • enableDnfDeveloper bool Activer tous les outils pour le développeur DNF Codev
  • enableDeveloper bool Activer les outils pour développeur
  • enableVscode bool VS Code. Opt-in : ~0,3 Gio à télécharger, Zed est l’éditeur par défaut
  • enableSlidev bool Presentations Slidev (slidev-cli, plus son extension VS Code quand enableVscode). Opt-in : ~0,4 Gio à télécharger
  • enableEssentials bool Outils fréquemment utilisés
  • enableVaultwardenSsh bool Agent SSH reposant sur le coffre Vaultwarden de l’utilisateur (rbw). Ne pas activer sur un hôte atteint avec ssh -A : l’agent local masquerait celui qui est transféré
darkone.home.advanced = {
enable = false;
enableTools = false;
enablePhoneTools = false;
enableAdmin = false;
enableNixAdmin = false;
enableDnfDeveloper = false;
enableDeveloper = true;
enableVscode = false;
enableSlidev = false;
enableEssentials = true;
enableVaultwardenSsh = false;
};

Outils d’agent d’un espace IA dans le domicile d’un membre : Claude Code, Codex, MCP, skills.

Tout provient de l’espace (darkone.host.ai-space de l’hôte), donc OpenClaw et chaque membre partagent les mêmes serveurs MCP et skills. Activé par défaut dans le domicile space-member ; désactivé sur tout autre hôte.

  • MCP : HM programs.mcp, intégré à Claude Code et Codex ;
  • skills : ~/.claude/skills, ~/.codex/skills ;
  • connexions : une fois par membre, claude (/login), codex login --device-auth.
  • enable bool Outils d’agent de l’espace IA (Claude Code, Codex, MCP, skills)
darkone.home.ai-space.enable = false;

Outils de codage IA et utilitaires associés.

  • enable bool Activer les outils IA et les utilitaires associés
  • enableClaude bool CLI Claude Code
  • enableOpenCode bool Agent IA terminal OpenCode
  • enableCodex bool CLI OpenAI Codex
  • enableAntigravity bool CLI Google Antigravity
  • enableAider bool Programmation en binôme IA avec Aider
  • enableGoose bool Agent de codage IA Goose (Block Inc.)
  • preferLocal bool Préférer les modèles locaux plutôt que cloud
darkone.home.ai = {
enable = false;
enableClaude = false;
enableOpenCode = false;
enableCodex = false;
enableAntigravity = false;
enableAider = false;
enableGoose = false;
preferLocal = false;
};

Outils et effets audio.

Installe l’encodeur MP3 (lame) et, avec GNOME, un lecteur audio (vlc), puis ajoute les éditeurs et effets (audacity, easyeffects) quand enableTools est défini. La réduction de bruit en temps réel (noisetorch) est volontairement désactivée car elle requiert PulseAudio.

  • enable bool Outils audio
  • enableTools bool Outils / éditeurs audio (audacity, easyeffects)
darkone.home.audio = {
enable = false;
enableTools = false;
};

Plusieurs paquets éducatifs graphiques.

  • enable bool Collection de logiciels éducatifs
  • enableBaby bool Logiciels éducatifs pour bébés (<=6 ans)
  • enableChild bool Logiciels éducatifs pour enfants (6-12 ans)
  • enableStudent bool Logiciels éducatifs pour adolescents et adultes (>=12 ans)
  • enableMath bool Outils et applications mathématiques
  • enableMusic bool Outils et applications musicales
  • enableScience bool Outils et applications scientifiques
  • enableDraw bool Outils et applications de dessin
  • enableLang bool Outils et applications linguistiques
  • enableMisc bool Outils et applications divers (généraux, formation…)
  • enableComputer bool Outils et applications informatiques (klavaro, etc.)
  • excludePackages listOf package Logiciels des thèmes activés à ne pas installer, identifiés par leur nom.
darkone.home.education = {
enable = false;
enableBaby = false;
enableChild = false;
enableStudent = false;
enableMath = true;
enableMusic = true;
enableScience = true;
enableDraw = true;
enableLang = true;
enableMisc = true;
enableComputer = true;
excludePackages = [ ];
};

Plusieurs paquets de jeux graphiques.

  • enable bool Activer les jeux
  • enableBaby bool Jeux pour bébés (<=6 ans)
  • enableChild bool Jeux pour enfants (6-12 ans)
  • enableTeenager bool Jeux pour adolescents et adultes (>=12 ans)
  • enable3D bool Plus de jeux 3D
  • enableCli bool Jeux en ligne de commande
  • enableStk bool SuperTuxKart (uniquement)
  • enableMore bool Plus de jeux secondaires dans chaque catégorie
  • excludePackages listOf package Jeux des catégories activées à ne pas installer, identifiés par leur nom.
darkone.home.games = {
enable = false;
enableBaby = false;
enableChild = false;
enableTeenager = false;
enable3D = false;
enableCli = false;
enableStk = false;
enableMore = false;
excludePackages = [ ];
};

Lanceurs masqués de la grille d’applications, rassemblés depuis gnome.nix et umi.nix.

  • hiddenEntries listOf str Ids de fichiers desktop masqués de la grille d’applications : gnome.hiddenApps, umi.hiddenApps d’un hôte UMI
darkone.home.gnome.hidden-apps.hiddenEntries = [ ];

Réglages Gnome pour home-manager.

Masque des lanceurs : le xterm nu, les réglages Qt5/Qt6 et le manuel NixOS pour chaque profil, scrcpy et scrcpy-console s’ils sont installés, Extensions pour les profils non techniques, et (hideTechnicalIcons) Paramètres, Imprimantes et File Roller pour les profils débutant / enfant. hiddenApps (par défaut : vim, btop, htop) en masque davantage, les entrées restant lançables par id (gnome/hidden-apps.nix, partagé avec le module UMI). keepKeyring dispense l’utilisateur de la réinitialisation du trousseau de connexion suite au changement du mot de passe admin (lu par le module gnome de NixOS).

  • enable bool Activer les réglages gnome pour home manager
  • hideTechnicalIcons bool Masquer certaines icônes pour les débutants / enfants / bébés
  • keepKeyring bool Conserver le trousseau de connexion quand l’admin change le mot de passe de session (trousseau avec un mot de passe propre)
  • hiddenApps listOf str Entrées desktop masquées de la grille d’applications, toujours lançables par id
darkone.home.gnome = {
enable = false;
hideTechnicalIcons = false;
keepKeyring = false;
hiddenApps = [ ];
};

Logiciels de traitement d’image.

Installe toujours l’éditeur (gimp) ; la visionneuse (geeqie) fait partie des essentiels de bureau. Puis hiérarchise les outils selon le public : enableBeginner ajoute pinta, enablePro ajoute inkscape/krita/yed, enable3D (avec enablePro) ajoute blender, enableCAD ajoute freecad, et enableCli ajoute imagemagick/jhead.

  • enable bool Création iconographique
  • enablePro bool Logiciels de traitement d’image supplémentaires pour les professionnels
  • enableBeginner bool Logiciels de traitement d’image supplémentaires pour les débutants
  • enable3D bool Logiciels 3D
  • enableCAD bool Logiciels de CAO
  • enableCli bool Outils CLI (imagemagick, jhead…)
darkone.home.imagery = {
enable = false;
enablePro = false;
enableBeginner = false;
enable3D = false;
enableCAD = false;
enableCli = false;
};

Applications par défaut (xdg.mimeApps) pour documents, images, audio, vidéo.

Chaque type MIME liste les entrées desktop par préférence, la première installée gagne : Papers (PDF), Geeqie (images), Celluloid (vidéo), Audacious (audio), GNOME Text Editor (texte brut), Zed (Markdown).

TODO : choix par profil (débutant : apps GNOME, avancé : Zed, vim, VS Code), scripts shell dans Zed, AsciiDoc dans GNOME Text Editor.

  • enable bool Activer la mise à jour des applications par défaut de DNF
darkone.home.mime.enable = false;

Applications graphiques de création musicale et sonore.

Classées par public : enablePro (ardour, reaper, renoise, rosegarden), enableCreator (decibels, hydrogen), enableScore (musescore, muse-sounds-manager), enableFun (mixxx, mousai), enableCli (mpg123, cmus, lilypond), enableEasy (gnome-music vs. audacious, GNOME uniquement), enableMpd (daemon MPD, ncmpcpp, mpd-mpris), et enableDev (lilypond).

  • enable bool Module home de création musicale
  • enablePro bool Outils professionnels exigeants (rose, ardour…)
  • enableFun bool Outils audio ludiques (mixxx…)
  • enableCli bool Outils audio en ligne de commande (mpg123, cmus, moc…)
  • enableDev bool Logiciels audio pour développeurs (lilypond…)
  • enableMpd bool Daemon MPD et lecteurs (mpd, ncmpcpp…)
  • enableEasy bool Outils simples plutôt qu’efficaces (gnome-music vs audacious…)
  • enableScore bool Logiciels de notation (musescore…)
  • enableCreator bool Outils de création pour débutants (lmms, hydrogen…)
darkone.home.music = {
enable = false;
enablePro = false;
enableFun = false;
enableCli = false;
enableDev = false;
enableMpd = false;
enableEasy = false;
enableScore = false;
enableCreator = false;
};

Bureau DNF : Firefox ESR, LibreWolf et Chromium. Doc : en-tête de ../office.nix.


Bureau DNF : barre d’outils Cartable Fantastique dans LibreOffice. Doc : en-tête de ../office.nix.


Bureau DNF : clients de bureau Matrix (Element, Fractal). Doc : en-tête de ../office.nix.


Bureau DNF : client Nextcloud et GNOME Online Accounts. Doc : en-tête de ../office.nix.

  • webdavLogin package assistant nextcloud-webdav-login, installé par la liste de paquets du bureau.
darkone.home.office.nextcloud.webdavLogin = nextcloudWebdavLogin;

Bureau DNF : md2pdf et la chaîne d’outils pandoc. Doc : en-tête de ../office.nix.

  • md2pdf package commande md2pdf, installée par la liste de paquets du bureau.
darkone.home.office.pandoc.md2pdf = md2pdf;

Bureau de travail : navigateurs, suite bureautique, communication, cloud et outils PDF.

Les paquets sont filtrés selon le public (enableEssentials, enableOffice, enableTools, enableCommunication…). Sous-modules (office/) :

  • browsers.nix : Firefox ESR (LibreWolf, Chromium) avec des politiques partagées : page d’accueil et locale de la zone, protection contre le suivi, Bitwarden épinglé lorsque le réseau exécute Vaultwarden.
  • cartable-fantastique.nix : barre d’outils Cartable Fantastique dans LibreOffice (cartableFantastique, par défaut pour le profil child).
  • matrix.nix : Element Desktop dès que le réseau exécute Matrix, préconfiguré (SSO Kanidm) ; Fractal avec enableCommunication.
  • nextcloud.nix : client de bureau lié à l’instance du réseau, et nextcloud-webdav-login pour les Comptes en ligne GNOME.
  • pandoc.nix : md2pdf et les paramètres par défaut de pandoc (enablePandoc).
  • enable bool Paquets utiles par défaut

  • enableMore bool Plus de paquets alternatifs

  • enableUnsafeFeatures bool Fonctionnalités pour utilisateurs avancés non-enfants

  • enableUBlock bool Activer l’extension uBlock

  • enableTools bool Petits outils (GNOME) (iotas, dialect, etc.)

  • enableProductivity bool Applications de productivité (obsidian, gestion du temps, projets, etc.)

  • enableCommunication bool Outils de communication

  • enableOffice bool Paquets bureautiques (libreoffice, hunspell, polices…)

  • enableFirefox bool Activer Firefox

  • enableLibreWolf bool Activer LibreWolf (alternative à Firefox)

  • enableChromium bool Activer Chromium

  • enableBrave bool Activer Brave Browser

  • enableEmail bool Paquets de gestion de courriel (thunderbird)

  • enableSecurity bool Outils de sécurité (keepass)

  • enableCalendarContacts bool Calendrier, contacts, tâches et applications associées

  • enablePandoc bool Chaîne d’outils Markdown vers PDF : pandoc, typst, polices Gentium et DejaVu, et la commande md2pdf (corps Gentium, A4, langue de la zone).

    Fenêtre de terminal
    md2pdf notes.md # A4, 10pt -&gt; notes.pdf
    md2pdf --big notes.md # A4, 12pt
    md2pdf --tablet notes.md # A6, 9pt (11pt avec --big), agrandi pour tablette
    md2pdf -e context notes.md # Moteur ConTeXt (enablePandocContext)

    Le moteur est typst. Il rend le code TeX brut habituel dans les notes (\pagebreak, \placecontent, \centerline…) et signale tout autre code. Les colonnes de tableau s’adaptent à leur contenu, sauf si les tirets des séparateurs diffèrent en longueur (|--|--------|) : les largeurs suivent alors ces tirets. Un simple pandoc notes.md -o notes.pdf utilise le même moteur, la même langue et les mêmes polices. Sous GNOME, les trois mises en page sont également proposées par clic droit dans Nautilus (menu Scripts).

  • enablePandocContext bool ConTeXt comme moteur PDF alternatif, md2pdf -e context (~900 MiB, nécessite enablePandoc)

  • pandocAuthor nullOr str Créateur inscrit dans les PDFs générés par md2pdf. null utilise le nom complet du compte.

  • enableEssentials bool Outils essentiels

  • hunspellLang str Dictionnaire Hunspell 🡕

  • cartableFantastique nullOr ( enum [ "primaire" "college" "adaptateur" ] ) Édition de la barre d’outils Cartable Fantastique 🡕 installée dans LibreOffice, à destination des élèves dyspraxiques ou atteints d’autres troubles DYS. null n’installe rien.

    • primaire : barres Lire, Écrire, Mathématiques et Tableau.
    • college : ajoute les langues, la chimie, l’électricité et l’éditeur d’équations.
    • adaptateur : ajoute des outils pour l’adulte adaptant le matériel scolaire.

    Installée par compte, dans son profil LibreOffice, lors de l’activation de Home Manager. Nécessite enableOffice. La synthèse vocale passe par spd-say (speech-dispatcher, activé par défaut sur les bureaux NixOS).

  • enableElementAutoStart bool Démarrage automatique d’Element Desktop (masqué) à la connexion lorsque le réseau exécute Matrix

  • enableFractalAutoStart bool Démarrage automatique de Fractal à la connexion, avec enableCommunication (opt-in : pas de mode arrière-plan, sa fenêtre s’ouvre)

  • nextcloud.enable bool Installer le client de bureau Nextcloud, prélié à l’instance du réseau

  • nextcloud.server nullOr str Instance Nextcloud à laquelle le client se lie. null sélectionne celle déclarée sur le réseau (cette zone en priorité). Définissez-la pour cibler une instance locale ou externe.

  • nextcloud.enableAutoStart bool Démarrer le client Nextcloud en arrière-plan à la connexion

  • nextcloud.enableWebdav bool Fournir nextcloud-webdav-login, un assistant ponctuel qui s’authentifie via le navigateur (SSO Kanidm) et enregistre le résultat comme un Compte en ligne GNOME : fichiers via WebDAV dans le gestionnaire de fichiers, ainsi que calendrier et contacts dans Evolution. Nécessaire car Nextcloud refuse de créer un mot de passe d’application depuis son interface web pour un utilisateur OIDC.

    L’assistant affiche également le mot de passe d’application, afin que tout autre client WebDAV puisse l’utiliser avec ce compte.

    Ignoré si darkone.home.office.nextcloud.enable est désactivé.

  • nextcloud.syncDir nullOr str Dossier local prérempli dans l’assistant de configuration, relatif à $HOME.

  • shared raw Valeurs bureautiques partagées avec les sous-modules office/.

darkone.home.office = {
enable = false;
enableMore = false;
enableUnsafeFeatures = false;
enableUBlock = false;
enableTools = false;
enableProductivity = false;
enableCommunication = false;
enableOffice = false;
enableFirefox = false;
enableLibreWolf = false;
enableChromium = false;
enableBrave = false;
enableEmail = false;
enableSecurity = false;
enableCalendarContacts = false;
enablePandoc = false;
enablePandocContext = false;
pandocAuthor = "Jane Doe";
enableEssentials = true;
hunspellLang = "en-us";
cartableFantastique = "primaire";
enableElementAutoStart = true;
enableFractalAutoStart = false;
nextcloud.enable = detectedNextcloud != null;
nextcloud.server = "https://cloud.example.com";
nextcloud.enableAutoStart = true;
nextcloud.enableWebdav = true;
nextcloud.syncDir = "Nextcloud";
shared = {
inherit
lang
country
hasHomepage
homeUrl
hasMatrix
hasVaultwarden
nextcloudUrl
hasNextcloud
hasNextcloudWebdav
;
};
};

DNF UMI : SuperTuxKart piloté uniquement à la souris (enableStkWithMouse). Doc : en-tête de ../umi.nix.


Saisie multimodale unifiée (UMI)

Écran tactile + voix + regard (autodémarrage de Talon + Onboard).

  • enable bool Configuration UMI de saisie multimodale (Talon + Onboard)
  • enableTalonAutostart bool Démarrer Talon à la connexion de session, une fois le tableau de bord initialisé (talon doit être dans le PATH).
  • communityScripts nullOr package Arbre talonhub/community déployé dans ~/.talon/user/community.
  • enableDwell bool Clic au maintien : clic en maintenant le pointeur immobile. Désactivé par défaut — uniquement utilisable avec un suivi oculaire, et avec une souris il se déclenche sur l’emplacement laissé (typiquement le menu d’accessibilité basculant le zoom ou le clavier virtuel)
  • dwellTime float Délai du clic au maintien en secondes.
  • enableTrackerAuto bool Suivi oculaire branché : contrôle du curseur par le regard Talon et clic au survol activés ; débranché : clic au survol désactivé (session Cinnamon). Prend le dessus sur enableDwell sous Cinnamon.
  • gazeFilterSpeed nullOr numbers.positive Coefficient de filtre de regard Talon (par œil), avec enableTrackerAuto : plus haut = plus réactif et moins lissé. Par défaut : celui de Talon, la tête affine les derniers millimètres ; null conserve la valeur de Talon.
  • cursorFilterSpeed nullOr numbers.positive Coefficient de filtre du curseur Talon, avec enableTrackerAuto : plus haut = plus réactif, plus de dépassement. null conserve la valeur de Talon (2,0).
  • headSpeed nullOr numbers.positive Sensibilité du contrôle de la tête Talon, avec enableTrackerAuto et enableHeadControl : au-dessus de 1, un léger mouvement de tête déplace le curseur, en dessous de 1, les mouvements amples ou mal contrôlés sont amortis. null conserve la valeur de Talon (1).
  • enableGazeControl bool Contrôle du regard Talon, avec enableTrackerAuto : le curseur suit le regard.
  • enableHeadControl bool Contrôle de la tête Talon, avec enableTrackerAuto : les mouvements de tête affinent le curseur placé par le regard (headSpeed). À désactiver si la tête est instable, car cela éloigne le curseur du point de regard.
  • enableHeadJump bool Saut de tête Talon, avec enableTrackerAuto : un mouvement de tête amène le curseur au point de regard
  • enableMouseJump bool Saut de souris Talon, avec enableTrackerAuto : déplacer une souris physique vers le point de regard y amène le curseur. Désactivé par défaut, cela déplace brutalement le pointeur d’un aidant
  • enableGazeFocus bool Focus par le regard Talon (expérimental), avec enableTrackerAuto : la fenêtre regardée obtient le focus
  • panelHeight ints.between 40 96 Hauteur du tableau de bord Cinnamon en pixels, ses icônes suivent (cibles pour le regard).
  • textScaling float Facteur de mise à l’échelle du texte de la session Cinnamon (les boutons grandissent avec leurs libellés).
  • enablePanel bool Tableau de bord Cinnamon géré par DNF : lanceurs et fenêtres ouvertes séparés, contrôles de clic au survol (types de clic, zone de pause), menu d’accessibilité, bascule clavier ; pas d’icône Bluetooth ni de barre d’angle. Réécrit à chaque activation.
  • enableMaximize bool Les fenêtres d’application s’ouvrent en mode maximisé (extension Cinnamon), le tableau de bord reste à portée. Les boîtes de dialogue, Onboard et les fenêtres à taille fixe conservent leur taille.
  • panelLaunchers listOf str Lanceurs du tableau de bord (identifiants de fichiers .desktop), avec enablePanel.
  • menuFavorites listOf str Favoris du menu Cinnamon (identifiants de fichiers .desktop), réécrits à chaque activation. dnf-umi-calibrate.desktop, avec enableTrackerAuto, lance l’étalonnage du suivi oculaire.
  • enableRofiMenu bool Grille d’applications plein écran (rofi), hôte UMI uniquement : pages de grandes tuiles tournées par des boutons en bordure, un clic lance l’application, les panneaux de paramètres sont exclus. Ouverte par le premier lanceur du tableau de bord (avec enablePanel).
  • rofiGridResolution submodule Grille d’applications par page, en tuiles, avec enableRofiMenu. La valeur par défaut 6 × 4 correspond à des icônes de 96 px sur un écran 1600×900 ; moins de tuiles les agrandit.
    • columns ints.between 1 12 Tuiles par ligne.
    • rows ints.between 1 8 Lignes de tuiles par page.
  • hiddenApps listOf str Applications masquées de la grille et du menu Cinnamon (identifiants de fichiers .desktop), hôte UMI uniquement. Les lancements par identifiant et les associations de fichiers restent fonctionnels.
  • enableStkWithMouse bool SuperTuxKart piloté uniquement à la souris, hôte UMI uniquement : le stick (ou les mouvements de souris) accélère, freine et vire, clic gauche dérape, double-clic tire, clic droit utilise le nitro. Installe le jeu, son lanceur exécute le convertisseur
darkone.home.umi = {
enable = false;
enableTalonAutostart = true;
communityScripts = null;
enableDwell = false;
dwellTime = 1.6;
enableTrackerAuto = true;
gazeFilterSpeed = 1.0;
cursorFilterSpeed = 4.0;
headSpeed = 0.3;
enableGazeControl = true;
enableHeadControl = true;
enableHeadJump = false;
enableMouseJump = false;
enableGazeFocus = false;
panelHeight = 64;
textScaling = 1.5;
enablePanel = true;
enableMaximize = true;
panelLaunchers = [ ];
menuFavorites = [ ];
enableRofiMenu = true;
rofiGridResolution.columns = 6;
rofiGridResolution.rows = 4;
hiddenApps = [ ];
enableStkWithMouse = false;
};

Outils et applications vidéo.

Installe toujours le lecteur par défaut (celluloid, interface GTK4/libadwaita sur mpv) et contrôle le reste par public : enableTools (ffmpeg, mlt, vlc, video-trimmer, parabolic), enableEditing (kdenlive, shotcut), enableCreator (OBS Studio avec obs-backgroundremoval, obs-vkcapture, etc.), enableUnfree (davinci-resolve) et enableAlternative (mpv).

  • enable bool Module home de création et d’outils vidéo
  • enableTools bool Outils vidéo pour professionnels
  • enableEditing bool Outils de montage vidéo (kdenlive…)
  • enableCreator bool Outils de création vidéo (obs…)
  • enableUnfree bool Apps vidéo non libres (davinci…)
  • enableAlternative bool Apps vidéo alternatives (mpv…)
darkone.home.video = {
enable = false;
enableTools = false;
enableEditing = false;
enableCreator = false;
enableUnfree = false;
enableAlternative = false;
};