sudo apt update && sudo apt install sway waybar foot mako-notifier grim slurp
Le fichier de configuration (~/.config/sway/config)
Créez le dossier et le fichier avec la commande :
mkdir -p ~/.config/sway && nano ~/.config/sway/config
Collez-y ensuite le texte suivant :
>CONFIGURATION MINIMALE SWAY POUR RASPBERRY PI3<
# Définition de la touche Modificateur (Touche Windows / Super)
set $mod Mod4
# Raccourcis des applications principales (Légères)
set $term foot
set $menu dmenu_run
# Configuration du clavier en AZERTY Français
input * {
xkb_layout "fr"
}
# Configuration visuelle minimale (Désactive les bordures épaisses pour économiser le GPU)
default_border pixel 2
default_floating_border normal
smart_borders on
gaps inner 4
gaps outer 2
# Raccourcis Système de Base
bindsym $mod+Return exec $term
bindsym $mod+d exec $menu
bindsym $mod+Shift+q kill
bindsym $mod+Shift+e exec swaynav prompt "Voulez-vous quitter Sway ?" "swaymsg exit"
# Recharger la configuration
bindsym $mod+Shift+c reload
# Déplacement du focus (Touches fléchées)
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Déplacement des fenêtres (Mod + Shift + Flèches)
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# Gestion des Espaces de Travail (Workspaces)
bindsym $mod+1 workspace number 1
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
# Layouts (Fenêtres côte à côte ou plein écran)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+f fullscreen toggle
bindsym $mod+d exec wofi --show drun
bindsym $mod+Shift+space floating toggle
# Menu visuel pour Éteindre / Redémarrer (Pour les novices)
bindsym $mod+Escape exec wlogout
bindsym XF86PowerOff exec wlogout
# Applications lancées au démarrage (Optionnel, à commenter avec '#' si inutile)
# exec waybar
# Raccourci pour lancer Chromium optimisé pour le Pi 3
# bindsym $mod+b exec chromium --enable-low-end-device-mode --process-per-site --disable-smooth-scrolling --ozone-platform=wayland
# ou mieux utiliser otter-browser
# Lancer Otter Browser nativement sous Wayland pour économiser le GPU
bindsym $mod+b exec QT_QPA_PLATFORM=wayland otter-browser
bindsym $mod+t exec abiword
bindsym $mod+g exec gnumeric
# Forcer Boomaga à s'ouvrir en mode fenêtre flottante
for_window [class="Boomaga"] floating enable
exec udiskie &
exec wlsunset -l 48.8 -o 2.3 &
# (Coordonnées de Paris pour le mode nuit automatique)
# Raccourci pour contrôler le volume dans le terminal
bindsym $mod+v exec foot -e pulsemixer
# Raccourci pour faire une capture d'écran d'une zone sélectionnée
bindsym $mod+Shift+s exec grim -g "$(slurp)" ~/Images/screenshot-$(date +%Y-%m-%d-%H%M%S).png
### Pour configurer le wifi ###
sudo nmcli device wifi connect "NOM_DE_VOTRE_BOX" password "VOTRE_MOT_DE_PASSE"
### Pas assez de memoire sur le rpi3 ###
Augmentez la mémoire virtuelle (Le "Swap")C'est l'astuce indispensable pour le Pi 3.
Si Chromium dépasse 1 Go de consommation, le système va planter, sauf si vous augmentez la taille du fichier d'échange (Swap) sur votre carte SD pour lui donner de l'air.
Ouvrez le fichier de configuration du swap :
sudo nano /etc/dphys-swapfile
Utilisez le code avec précaution.Modifiez la ligne CONF_SWAPSIZE=100 et remplacez-la par CONF_SWAPSIZE=1024
### L'optimisation indispensable pour mpv sur le Pi 3 ###
mkdir -p ~/.config/mpv && nano ~/.config/mpv/mpv.conf
Ajouter les lignes :
# Forcer l'affichage natif sous Wayland
vo=gpu
gpu-api=vulkan
# Activer le décodage matériel du Raspberry Pi 3
hwdec=v4l2m2m
### Ajouter des logiciels supplémentaires ###
sudo apt install abiword bleachbit gnumeric pcmanfm zathura
sudo apt install pipewire-audio wireplumber pulsemixer
sudo apt install gvfs gvfs-backends trash-cli
sudo apt install boomaga converseen cups-pdf imv micro pdfarranger udiskie wvcameraview wlogout wofi xarchiver
sudo apt install grim slurp
sudo apt install wlsunset
sudo apt install yazi
Étape 1 : Activer la connexion automatique (Autologin)
Nous allons d'abord configurer Raspberry Pi OS pour qu'il connecte automatiquement votre utilisateur (pi ou celui que vous avez créé) en ligne de commande (Console TTY).
- Ouvrez votre terminal (
foot) et lancez l'utilitaire de configuration officiel : - À l'aide des flèches du clavier, naviguez jusqu'à System Options (Option 1) et appuyez sur
Entrée. - Sélectionnez Boot / Auto Login (Option S5) et appuyez sur
Entrée. - Choisissez l'option Console Autologin (Text console, automatically logged in).
- Sélectionnez Finish pour quitter, puis acceptez la demande de redémarrage.
Étape 2 : Lancer Sway automatiquement après la connexion
Maintenant que le Pi se connecte tout seul en arrière-plan, nous allons lui dire : "Si tu te connectes sur la console principale (TTY1), lance Sway immédiatement".
- Ouvrez le fichier de configuration de votre session (le script de profil) :
(Si le fichier est vide, c'est tout à fait normal !)
Collez le bloc de code suivant à la toute fin du fichier :# Lancement automatique de Sway sur le TTY1
if [ -z "${DISPLAY}" ] && [ "${XDG_VTNR}" -eq 1 ]; then
exec sway
fi
Ajouter un bouton "physique" sur l'écran (Barre des tâches)
micro ~/.config/waybar/config)
et ajoutez ce module :"custom/power": {
"format": " ⏻ ",
"on-click": "wlogout",
"tooltip": false
}
micro ~/.config/wlogout/layout
Ensuite, insérez "custom/power" dans la liste de vos modules (à droite ou à gauche de la barre). Un gros symbole d'alimentation ⏻ sera affiché en permanence à l'écran. Le novice n'aura qu'à cliquer dessus pour éteindre son Raspberry Pi 3 de manière propre et sécurisée.
[
{
"label" : "lock",
"action" : "swaylock",
"text" : "Verrouiller l'écran",
"keybind" : "v"
},
{
"label" : "logout",
"action" : "swaymsg exit",
"text" : "Fermer la session",
"keybind" : "f"
},
{
"label" : "suspend",
"action" : "systemctl suspend",
"text" : "Mettre en veille",
"keybind" : "m"
},
{
"label" : "reboot",
"action" : "systemctl reboot",
"text" : "Redémarrer l'ordinateur",
"keybind" : "r"
},
{
"label" : "shutdown",
"action" : "systemctl poweroff",
"text" : "Éteindre l'ordinateur",
"keybind" : "e"
}
]