Ça fait quelques années que j'utilise Regolith Linux (j'ai créé la page sur mon wiki en aout 2020...) et jusqu'ici, j'ai toujours mis à jours mon ordinateur principal avec les upgrade successifs. J'ai cependant quelques problèmes qui se sont accumulés avec le temps et les bidouilles successives pas toujours heureuses... Et la version d'Ubuntu commencent à dater au point que Canonical me propose de passer sur Ubuntu Expended Security Maintenance (ESM) ce qui ne m'attire pas beaucoup. -_-

Bref. Je pars pour une réinstallation complète de l'ordinateur et cette fois, même si je veux garder Regolith, j'aimerais une base debian. Évidemment, ce n'est pas la solution la plus facile, même si l'équipe de Regolith a annoncé sa volonté de simplifier l'installation sur Debian. Avant, il y avait une ISO pour Ubuntu mais ce n'est plus le cas non plus.

La procédure est décrite sur leur site : https://regolith-desktop.com/docs/using-regolith/install/

J'ai également trouvé une vidéo (en anglais) qui détaille l'installation : https://www.youtube.com/watch?v=qdRssFwlNjY

C'est parti! La base, ça reste de télécharger la dernière iso de Debian (via Torrent, c'est mieux). On met ça sur une clé usb, avec par exemple ddrescue, on sauvegarde tout ce qui doit l'être (pensez aux configs cheloues que vous voulez pas refaire, aux clés SSH ou GPG, aux dossier de Firefox ou Thunderbird, aux sauvegardes de vos jeux, aux fichiers .bashrc ou .bash_aliases, aux éventuelles photos, ...). Une fois tout bien sauvegardé, on branche la clé USB, on redémarre l'ordinateur, on accède au bios et on lance le boot sur la clé USB.

L'installation de Debian est assez classique, je vais pas détailler. Au moment de choisir l'environnement graphique à installer, il faut cocher uniquement "serveur SSH" et "utilitaires usuels du système". Nous installerons l'environnement graphique par la suite. (C'est en tout cas la méthode conseillée par Stephen de la chaine Stephen's Tech Talks.)

Une fois l'ordinateur installé et redémarré, on a simplement accès à un terminal. À ce moment là, je me suis connecté dessus en ssh pour pouvoir plus facilement faire des copier/coller des commandes. Les instructions sont sur le site (voir plus haut) et également dans ce fichier.

Mais avant de pouvoir lancer ces commandes, il faut faire deux trois trucs :

simon@betula:~$ su -

root@betula:~# apt update

root@betula:~# apt install sudo gpg

root@betula:~# adduser simon sudo

J'ai du quitter la connexion ssh et me reconnecter pour que mon utilisateur (simon) ait bien l'autorisation d'utiliser sudo.

simon@betula:~$ wget -qO - https://regolith-desktop.org/regolith.key | gpg --dearmor | sudo tee /usr/share/keyrings/regolith-archive-keyring.gpg > /dev/null

simon@betula:~$ echo deb "[arch=amd64 signed-by=/usr/share/keyrings/regolith-archive-keyring.gpg] https://regolith-desktop.org/release-3_0-debian-bookworm-amd64 bookworm main" | sudo tee /etc/apt/sources.list.d/regolith.list

simon@betula:~$ sudo apt update
Atteint :1 http://security.debian.org/debian-security bookworm-security InRelease
Atteint :2 http://ftp.be.debian.org/debian bookworm InRelease                           
Atteint :3 http://ftp.be.debian.org/debian bookworm-updates InRelease                     
Réception de :4 https://regolith-desktop.org/release-3_0-debian-bookworm-amd64 bookworm InRelease [2.400 B]
Réception de :5 https://regolith-desktop.org/release-3_0-debian-bookworm-amd64 bookworm/main amd64 Packages [32,4 kB]
34,8 ko réceptionnés en 1s (29,9 ko/s)
(...)

Ok, le dépôt de Regolith est bien ajouté. Maintenant, on va passer à l'installation à proprement parler. Ma compréhension du truc, c'était qu'installer "regolith-session-flashback" permet de rester avec X11/i3 (et pas de passer sur Wayland/Sway) mais manifestement, il y a quelque chose que je n'ai pas encore bien compris... ^_^

simon@betula:~$ sudo apt install regolith-desktop regolith-session-flashback regolith-look-*
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Note : sélection de regolith-look-blackhole pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-solarized-dark pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-ayu pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-default-loader pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-ayu-mirage pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-gruvbox pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-dracula pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-lascaille pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-ayu-dark pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-nord pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-default pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-i3-default pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-nevil pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-2 pour l'expression rationnelle « regolith-look-* »
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation : 

Les paquets suivants contiennent des dépendances non satisfaites :
 solarc-theme : Dépend: gnome-themes-standard mais il n'est pas installable
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».

Ah... On va devoir procéder par étapes.

simon@betula:~$ sudo apt install regolith-desktop

simon@betula:~$ sudo apt install regolith-session-flashback

simon@betula:~$ sudo apt install regolith-look-*
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Note : sélection de regolith-look-blackhole pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-solarized-dark pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-ayu pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-default-loader pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-ayu-mirage pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-gruvbox pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-dracula pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-lascaille pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-ayu-dark pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-nord pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-default pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-i3-default pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-nevil pour l'expression rationnelle « regolith-look-* »
Note : sélection de regolith-look-2 pour l'expression rationnelle « regolith-look-* »
regolith-look-default-loader est déjà la version la plus récente (0.8.1-1regolith-bookworm).
regolith-look-default-loader passé en « installé manuellement ».
regolith-look-default est déjà la version la plus récente (0.8.1-1regolith-bookworm).
regolith-look-default passé en « installé manuellement ».
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation : 

Les paquets suivants contiennent des dépendances non satisfaites :
 solarc-theme : Dépend: gnome-themes-standard mais il n'est pas installable
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».

Mmmh... Quel est le thème qui pose un soucis ? Probablement "solarized-dark"...

simon@betula:~$ sudo apt install regolith-look-solarized-dark 
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Certains paquets ne peuvent être installés. Ceci peut signifier
que vous avez demandé l'impossible, ou bien, si vous utilisez
la distribution unstable, que certains paquets n'ont pas encore
été créés ou ne sont pas sortis d'Incoming.
L'information suivante devrait vous aider à résoudre la situation : 

Les paquets suivants contiennent des dépendances non satisfaites :
 solarc-theme : Dépend: gnome-themes-standard mais il n'est pas installable
E: Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état ».

Bon, je vais installer les autres. Et on verra plus tard.

simon@betula:~$ sudo apt install regolith-look-blackhole regolith-look-ayu regolith-look-default-loader regolith-look-ayu-mirage regolith-look-gruvbox regolith-look-dracula regolith-look-lascaille regolith-look-ayu-dark regolith-look-nord regolith-look-default regolith-look-i3-default regolith-look-nevil

Ok, Regolith est installé, il y a une interface graphique (normalement mais faudra rédémarrer pour être sûr... :-P), il y a des thèmes, ... Que reste-t-il à faire ? Dans la vidéo de Stephen il installe quelques trucs en plus.

Il installe :

  • i3xrocks-focused-window-name - Indicator to show focused window name.
  • i3xrocks-rofication - Status indicator for rofication
  • i3xrocks-info/inconnu - Indicator launch Remontoire.
  • i3xrocks-app-launcher - Button to open app launcher.
  • i3xrocks-memory - Indicator to show memory utilization.
  • i3xrocks-battery - Indicator to show battery status.

Ça ne me semble pas indispensable dans un premier temps. Mais je note qu'il y a pas mal d'indicateurs qu'on peut utiliser. On peut voir la liste complète en faisant une recherche :

simon@betula:~$ sudo apt search i3xrocks

Mais je suis trop impatient alors c'est le moment de rédémarrer et de voir ce que ça donne!

Ah... Ben c'est toujours un invite de commande qui nous accueille. J'ai du oublier quelque chose... (/me regarde la vidéo...) Ah oui, il manque un gestionnaire de connexion.

simon@betula:~$ sudo apt install lightdm

simon@betula:~$ sudo systemctl enable lightdm
Synchronizing state of lightdm.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable lightdm

Dans la suite de la vidéo, il en profite pour installer zram. Ce n'est pas directement lié à Regolith mais ça ne peut pas faire de mal alors allons-y.

simon@betula:~$ sudo apt install zram-tools 

simon@betula:~$ echo -e "ALGO=zstd\nPERCENT=60" | sudo tee -a /etc/default/zramswap 
ALGO=zstd
PERCENT=60

simon@betula:~$ sudo systemctl reload zramswap.service 

Et maintenant, on peut (à nouveau...) redémarrer!

Alors, j'arrive bien sur lightdm, je peux bien lancer ma session mais j'arrive sur une erreur sur la barre en dessous.

Error: status_command not found or is missing a library dependency (exit 127)

Je n'ai pas accès à grand chose, je n'arrive pas à lancer rofi... J'ai repris ma session via SSH et j'ai installé quelques trucs i3xrocks en me disant que c'est peut-être ce qui manque.

simon@betula:~$ sudo apt install i3xrocks-volume i3xrocks-updates i3xrocks-rofication i3xrocks-next-workspace i3xrocks-app-launcher i3xrocks-focused-window-name i3xrocks-info i3xrocks-media-player
(...)

 i3xrocks-updates : Dépend: update-notifier-common mais il n'est pas installable

Décidément, il y a quand même quelques trucs pas installables ou problématiques dans cette histoire... Bon, on vire i3xrocks-updates.

simon@betula:~$ sudo apt install i3xrocks-volume i3xrocks-updates i3xrocks-rofication i3xrocks-next-workspace i3xrocks-app-launcher i3xrocks-focused-window-name i3xrocks-info i3xrocks-media-player

Après l'installation de tout ça, on redémarre à nouveau. Et -déception- le problème n'est pas réglé. J'ai quand même accès à un terminal (avec "Super+Enter") donc j'en profite pour installer quelques trucs qui manquent encore :

simon@betula:~$ sudo apt install regolith-i3-rofi regolith-i3-rofication regolith-rofi-config

J'ai cherché des explications et je suis tombé sur cette discussions sur github. J'ai l'impression d'être dans le même cas de figure que "dahadaller". J'ai en tout cas les mêmes messages d'erreurs :

$ i3xrocks -u ~/.config/regolith3/i3xrocks/conf.d -d /usr/share/i3xrocks/conf.d
<2>Unable to access Xresources.
<3>failed to load config file 01_setup
<2>Failed to load configuration.

Ça ne règle évidemment pas mon problème... Je remarque aussi qu'il n'y a aucun fichier "Xresources"...

Finalement, j'ai tout supprimé :

simon@betula:~$ sudo apt purge regolith*

simon@betula:~$ sudo apt autoremove 

simon@betula:~$ sudo reboot

simon@betula:~$ sudo apt install regolith-desktop
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Les paquets supplémentaires suivants seront installés : 
  ayu-theme clipman dconf-cli fonts-nerd-font-bitstreamverasansmono
  gnome-session-bin gtklock i3-next-workspace i3-wm i3status-rs ilia
  javascript-common jq kanshi libanyevent-i3-perl libanyevent-perl
  libasync-interrupt-perl libcommon-sense-perl libev-perl libev4
  libgtk-layer-shell0 libguard-perl libinih1 libjq1 libjs-jquery
  libjs-sphinxdoc libjs-underscore libjson-xs-perl libonig5 libpcre3
  libplayerctl2 libseat1 libtrawldb libtypes-serialiser-perl libwlroots10
  libxcb-composite0 libxcb-cursor0 libxcb-icccm4 libxcb-image0
  libxcb-keysyms1 libxcb-render-util0 libxcb-xinerama0 libxcb-xinput0
  libxcb-xrm0 libxdo3 light playerctl python3-i3ipc python3-xlib
  regolith-avizo regolith-control-center regolith-default-settings
  regolith-displayd regolith-ftue regolith-inputd regolith-look-default
  regolith-look-default-loader regolith-powerd regolith-rofication
  regolith-session-common regolith-session-sway
  regolith-sway-audio-idle-inhibit regolith-sway-background
  regolith-sway-control-center-regolith regolith-sway-dbus-activation
  regolith-sway-default-style regolith-sway-gaps regolith-sway-gsd
  regolith-sway-gtklock regolith-sway-i3status-rs regolith-sway-ilia
  regolith-sway-media-keys regolith-sway-polkit regolith-sway-root-config
  regolith-sway-screensharing regolith-sway-session regolith-sway-unclutter
  regolith-wm-base-launchers regolith-wm-config regolith-wm-ftue
  regolith-wm-navigation regolith-wm-networkmanager
  regolith-wm-next-workspace regolith-wm-resize regolith-wm-rofication-ilia
  regolith-wm-workspace-config suckless-tools sway-audio-idle-inhibit
  sway-backgrounds sway-regolith swaybg swayidle trawlcat trawld trawldb
  wayland-protocols xdg-desktop-portal-wlr xdotool xwayland
Paquets suggérés :
  apache2 | lighttpd | httpd libevent-perl libio-async-perl libpoe-perl
  libtask-weaken-perl audacious cmus mopidy mpd mpv quodlibet
  rhythmbox-plugins vlc gnome-software | gnome-packagekit
  gstreamer1.0-pulseaudio update-manager software-properties-gtk dwm stterm
  surf swaylock
Paquets recommandés :
  regolith-wm-ilia
(...)

simon@betula:~$ sudo apt install regolith-look-nord

simon@betula:~$ sudo apt install regolith-session-flashback
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Les paquets supplémentaires suivants seront installés : 
  gnome-system-monitor i3-swap-focus i3xrocks i3xrocks-cpu-usage
  i3xrocks-net-traffic i3xrocks-time libatkmm-1.6-1v5 libcairomm-1.0-1v5
  libconfig9 libglibmm-2.4-1v5 libglu1-mesa libgtkmm-3.0-1v5 libopengl0
  libpangomm-1.4-1v5 libsigc++-2.0-0v5 libxcb-damage0 picom
  regolith-compositor-picom-glx regolith-i3-compositor
  regolith-i3-control-center-regolith regolith-i3-default-style
  regolith-i3-gaps regolith-i3-i3xrocks regolith-i3-ilia
  regolith-i3-root-config regolith-i3-session regolith-i3-unclutter
  regolith-i3xrocks-config regolith-session-flashback-ext
  regolith-unclutter-xfixes regolith-wm-swap-focus sysstat x11-apps
  x11-session-utils xbitmaps xinit xorg xrescat
Paquets suggérés :
  update-manager software-properties-gtk isag mesa-utils xorg-docs
  x11-xfs-utils
Paquets recommandés :
  regolith-wm-ilia
(...)

$ sudo apt install regolith-session-flashback software-properties-gtk isag mesa-utils xorg-docs x11-xfs-utils
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Les paquets supplémentaires suivants seront installés : 
  aglfn appstream gir1.2-goa-1.0 gir1.2-handy-1 gir1.2-packagekitglib-1.0
  gnome-system-monitor gnuplot-data gnuplot-x11 i3-swap-focus i3xrocks
  i3xrocks-cpu-usage i3xrocks-net-traffic i3xrocks-time libatkmm-1.6-1v5
  libcairo-gobject-perl libcairo-perl libcairomm-1.0-1v5 libconfig9
  libextutils-depends-perl libfs6 libglib-object-introspection-perl
  libglib-perl libglibmm-2.4-1v5 libglu1-mesa libgtk3-perl libgtkmm-3.0-1v5
  liblua5.4-0 libopengl0 libpackagekit-glib2-18 libpangomm-1.4-1v5
  libpcre2-32-0 libsigc++-2.0-0v5 libtcl8.6 libtk8.6 libwxbase3.2-1
  libwxgtk3.2-1 libxcb-damage0 mesa-utils-bin packagekit packagekit-tools
  picom python3-blinker python3-cffi-backend python3-cryptography
  python3-dateutil python3-distro-info python3-jwt
  python3-lazr.restfulclient python3-lazr.uri python3-oauthlib
  python3-software-properties python3-wadllib regolith-compositor-picom-glx
  regolith-i3-compositor regolith-i3-control-center-regolith
  regolith-i3-default-style regolith-i3-gaps regolith-i3-i3xrocks
  regolith-i3-ilia regolith-i3-root-config regolith-i3-session
  regolith-i3-unclutter regolith-i3xrocks-config
  regolith-session-flashback-ext regolith-unclutter-xfixes
  regolith-wm-swap-focus software-properties-common sysstat tcl tcl8.6 tk
  tk8.6 x11-apps x11-session-utils xbitmaps xinit xorg xrescat
Paquets suggérés :
  apt-config-icons gnuplot-doc rcs libfont-freetype-perl libxml-libxml-perl
  python-blinker-doc python-cryptography-doc python3-cryptography-vectors
  python3-crypto update-manager gnome-software tcl-tclreadline
Paquets recommandés :
  regolith-wm-ilia

J'ai installé les différents paquets recommandés sauf deux qui posaient problème :

simon@betula:~$ sudo apt install update-manager
E: Le paquet « update-manager » n'a pas de version susceptible d'être installée

simon@betula:~$ sudo apt install regolith-wm-ilia
E: Le paquet « regolith-wm-ilia » n'a pas de version susceptible d'être installée

Après un ultime redémarrage, j'ai enfin accès à une session correcte de Regolith sur une base Debian 12 ! Mais je me rends compte que j'ai choisi "Wayland/Sway"... Je ne suis pas certain que ça marche mieux que lors de la premièr installation du côté de X11/i3... Tant pis, on va garder Wayland/Sway et en route pour le futur! Il n'y a "plus qu'à" tout configurer, restaurer mes fichiers, faire les bidouilles pour adapter à Wayland/Sway, ...