98d47d497c
- The installer is still W.I.P
50 lines
1.7 KiB
Bash
Executable File
50 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
. /usr/local/bin/fws-desktop-init-common
|
|
|
|
first_user="$(fws_first_user)"
|
|
|
|
# Config Hyprland minimale + autostart (agent polkit, barre, applet réseau,
|
|
# notifications). Sans config ni agent polkit, la session est inutilisable
|
|
# pour un non-technicien (pas de raccourcis, pas d'élévation de privilèges GUI).
|
|
fws_write_hyprland_config() {
|
|
local user_name="$1"
|
|
[ -n "$user_name" ] && [ -d "/home/$user_name" ] || return 0
|
|
local cfg_dir="/home/$user_name/.config/hypr"
|
|
install -d -m 755 "$cfg_dir"
|
|
if [ -f /usr/share/hypr/hyprland.conf ]; then
|
|
cp -f /usr/share/hypr/hyprland.conf "$cfg_dir/hyprland.conf"
|
|
else
|
|
cat > "$cfg_dir/hyprland.conf" <<'EOF'
|
|
$terminal = kitty
|
|
$menu = wofi --show drun
|
|
bind = SUPER, Q, exec, $terminal
|
|
bind = SUPER, R, exec, $menu
|
|
bind = SUPER, C, killactive
|
|
bind = SUPER, M, exit
|
|
EOF
|
|
fi
|
|
cat >> "$cfg_dir/hyprland.conf" <<'EOF'
|
|
|
|
# ── FWS : démarrage automatique de la session ──
|
|
exec-once = systemctl --user start hyprpolkitagent
|
|
exec-once = waybar
|
|
exec-once = nm-applet --indicator
|
|
exec-once = mako
|
|
EOF
|
|
chown -R "$user_name:$user_name" "/home/$user_name/.config"
|
|
}
|
|
|
|
# PipeWire/applet NM/polices viennent de FWS_BASE_PACKAGES ; hyprpolkitagent
|
|
# fournit l'agent d'authentification polkit pour Wayland/Hyprland.
|
|
fws_install_packages "${FWS_BASE_PACKAGES[@]}" \
|
|
hyprland xdg-desktop-portal-hyprland xdg-desktop-portal-gtk \
|
|
waybar wofi kitty mako swaybg swayidle swaylock \
|
|
xorg-xwayland wl-clipboard grim slurp \
|
|
qt5-wayland qt6-wayland hyprpolkitagent sddm
|
|
fws_disable_services lightdm.service gdm.service
|
|
fws_enable_services sddm.service
|
|
fws_set_graphical_default
|
|
fws_write_sddm_config "$first_user" hyprland
|
|
fws_write_hyprland_config "$first_user" |