LightDM Pixel-Art : Forcer la transparence absolue (Style Commodore 64)
juin 19, 2026 | TutosSi vous essayez de customiser LightDM (lightdm-gtk-greeter) pour lui donner un look rétro (C64, Amiga, DOS...), vous vous êtes sûrement cassé les dents sur un problème : l'obstinée boîte grise par défaut. Le thème GTK système (comme Adwaita) s'obstine à dessiner des bordures et des rectangles opaques qui gâchent vos magnifiques fonds d'écran.
Voici la méthode ultime pour bypasser GTK, supprimer l'avatar utilisateur, injecter une police rétro et obtenir un écran de login 100% épuré.
Étape 1 : Installer la police au niveau Système
Pour que LightDM (qui tourne sous un utilisateur système) voie votre police rétro, elle doit être accessible globalement. Ici, on utilise la C64 Pro Mono.
sudo mkdir -p /usr/share/fonts/truetype/c64/
sudo cp C64_Pro_Mono.ttf /usr/share/fonts/truetype/c64/
sudo fc-cache -f -v
Astuce : Vérifiez qu'elle est bien détectée avec
fc-list : family | grep -i "c64 pro".
Étape 2 : Créer un thème GTK "Transparent"
Puisque modifier le CSS à la volée est souvent ignoré par GTK, on crée un micro-thème système vide qui force le canal alpha (la transparence) sur tous les conteneurs.
Créez le fichier /usr/share/themes/C64-Transparent/gtk-3.0/gtk.css :
/* Transparence forcée partout et application de la police */
* {
font-family: 'C64 Pro Mono', monospace !important;
background-image: none !important;
background-color: transparent !important;
background: transparent !important;
box-shadow: none !important;
text-shadow: none !important;
border-image: none !important;
border-style: none !important;
border-width: 0px !important;
}
/* Boutons de la barre et des menus */
button, menuitem, #panel_window, #menubar, .menu, .menubar {
font-family: 'C64 Pro Mono', monospace !important;
color: #7b71d8 !important; /* Bleu clair C64 */
background-color: transparent !important;
}
/* Champs de saisie (Login / Password) */
entry {
font-family: 'C64 Pro Mono', monospace !important;
background-color: #3a319c !important; /* Bleu foncé C64 */
border: 2px solid #7b71d8 !important;
color: #7b71d8 !important;
border-radius: 0px !important; /* Look rétro carré */
padding: 5px !important;
}
label, keyword {
font-family: 'C64 Pro Mono', monospace !important;
color: #7b71d8 !important;
}
Étape 3 : Configurer LightDM
On applique notre nouveau thème, on active le redimensionnement propre de l'image (indispensable sur les grands écrans ou les setups multi-écrans comme le WQHD), et on vire l'avatar utilisateur pour épurer la vue.
Modifiez /etc/lightdm/lightdm-gtk-greeter.conf :
[greeter]
background = /usr/share/images/desktop-base/c64_background.png
background-display-mode = scale
user-background = false
font-name = C64 Pro Mono 12
xft-antialias = false
hide-user-image = true
theme-name = C64-Transparent
icon-theme-name = gnome
indicators = ~session;~power
clock-format = %H:%M
pos = 50% 50%
Étape 4 : Tester sans redémarrer (La commande magique)
Pas besoin de fermer votre session ou de rebooter pour voir le résultat. Installez xserver-xephyr et lancez LightDM en mode test utilisateur :
# Pour tester en mode fenêtré dans votre session actuelle (ex: sous AwesomeWM)
/usr/sbin/lightdm --test-mode --debug
Et voilà ! Votre invite de commande flotte désormais magnifiquement au milieu de votre écran rétro.