GLF-OS distingue deux modes d'économie d'énergie que l'on confond souvent. Pour des raisons techniques détaillées plus bas, seule la mise en veille (S3) est activée par défaut. L'hibernation (S4) est désactivée sur les setups NVIDIA récents en raison d'un bug du pilote propriétaire.
Sous GNOME comme sous KDE Plasma, l'action "Mettre en veille" déclenche un suspend S3. La machine reste allumée mais en très basse consommation. Vous la réveillez avec une touche du clavier, un mouvement souris ou le bouton power : retour direct à votre session, vos applications restent ouvertes.
C'est le comportement attendu. Pas d'hibernation, pas de réécriture sur disque.
L'hibernation (S4) sur Linux exige que le pilote graphique sache préserver l'état de la VRAM avant que la machine ne s'éteigne, et le restaurer au démarrage suivant. Le pilote propriétaire NVIDIA des séries RTX 4000 (Ada) et RTX 5000 (Blackwell) rencontre actuellement un bug : le firmware embarqué de la carte (GSP : GPU System Processor) ne répond plus pendant la transition S4. Le noyau Linux annule alors l'écriture de l'image hibernation, et au démarrage suivant la machine ne trouve aucune image à restaurer → c'est un boot à froid, pas un vrai resume.
Symptômes observés chez certains utilisateurs avant cette correction :
Ce bug est documenté à l'identique sur CachyOS, Debian 13, Arch et NixOS, sur driver 580.x à 595.x. NVIDIA n'a pas encore publié de correctif. Les distributions Fedora, Bazzite, Pop!_OS, Ubuntu 24.04 ont également désactivé l'hibernation par défaut sur leurs setups NVIDIA.
GLF-OS a adopté la même politique pour éviter à ses utilisateurs de tomber dans ces situations dégradées.
| Élément | Comportement |
|---|---|
| Mise en veille (S3) | ✅ Fonctionne |
| Bouton power (action par défaut) | Mise en veille |
| Inactivité prolongée | Mise en veille |
| Hibernation (S4) | ❌ Désactivée |
systemctl hibernate (CLI) |
Refusée par systemd ("Access denied") |
| Menu d'alimentation GNOME | Pas d'option "Hiberner" |
| Menu d'alimentation KDE | Pas d'option "Hiberner" |
Aucune action requise de votre part : tout est déjà configuré.
Si vous avez une carte AMD ou une iGPU Intel, l'hibernation peut très bien fonctionner chez vous. Si vous voulez tenter sur NVIDIA Blackwell, sachez que vous aurez probablement les symptômes décrits plus haut.
Ajoutez dans votre /etc/nixos/customConfig/default.nix :
glf.boot.hibernation.enable = true;
Puis appliquez avec :
glf-update
Le module détecte automatiquement votre swap disque et configure boot.resumeDevice. Si vous voulez le forcer explicitement vers une partition swap spécifique, ajoutez aussi :
boot.resumeDevice = "/dev/disk/by-uuid/<UUID-de-votre-swap>";
L'UUID de votre swap se trouve avec sudo blkid | grep swap.
⚠️ Pré-requis pour que l'hibernation fonctionne, même côté logiciel :
- Une partition swap d'une taille au moins égale à la RAM physique
- Un swap non chiffré (le swap LUKS demande une configuration plus poussée)
- Pas uniquement du
zram(swap compressé en RAM, incompatible avec l'hibernation)
# Les cibles systemd liées à l'hibernation sont masquées
systemctl is-enabled hibernate.target hybrid-sleep.target suspend-then-hibernate.target
# → masked masked masked
# Tentative manuelle (doit échouer)
sudo systemctl hibernate
# → Call to Hibernate failed: Access denied
# Le suspend (S3) fonctionne
systemctl is-enabled suspend.target
# → linked
glf-update et autres