From 092c8c4c678221fe1b1929f4dcff2c737fe52a13 Mon Sep 17 00:00:00 2001 From: josevi Date: Wed, 24 Jun 2026 00:04:31 +0200 Subject: [PATCH] KDE: rice Catppuccin + layout macOS (horneado del setup en VM) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tras iterar en la VM, se hornea en el instalador: - AUR: kvantum-theme-catppuccin, catppuccin-cursors-mocha, catppuccin-konsole, papirus-folders-catppuccin, catppuccin-sddm-theme-mocha (+ kvantum del repo). - Root (chroot): tema SDDM catppuccin-mocha-blue y recoloreo de carpetas Papirus. - Oneshot primer login: cursor Catppuccin, estilo Qt=Kvantum (Catppuccin Mocha Blue), perfil Konsole Catppuccin, botones de ventana a la izquierda (macOS), y layout macOS por Plasma scripting (barra superior con menú global + dock inferior flotante con apps clavadas). Sustituye el hack del pin de Discover. Co-Authored-By: Claude Opus 4.8 --- kde/setup.sh | 70 +++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 56 insertions(+), 14 deletions(-) diff --git a/kde/setup.sh b/kde/setup.sh index 10f1793..366e2a2 100755 --- a/kde/setup.sh +++ b/kde/setup.sh @@ -58,7 +58,7 @@ echo ">> KDE Plasma mínimo + apps oficiales (pacman)..." # instala la base; el escritorio y los drivers gráficos open-source van aquí. install_pacman "${PACMAN_COMMON[@]}" \ plasma-desktop sddm plasma-pa plasma-nm powerdevil kscreen systemsettings \ - kwallet-pam xdg-desktop-portal-kde breeze-gtk kde-gtk-config \ + kwallet-pam xdg-desktop-portal-kde breeze-gtk kde-gtk-config kvantum \ konsole dolphin kate ark spectacle kcalc gwenview okular \ mesa vulkan-icd-loader vulkan-radeon vulkan-intel intel-media-driver @@ -67,9 +67,20 @@ install_bootloader echo ">> Bootstrapeando paru y paquetes AUR..." bootstrap_paru -install_aur "${AUR_COMMON[@]}" catppuccin-gtk-theme-mocha +install_aur "${AUR_COMMON[@]}" catppuccin-gtk-theme-mocha \ + kvantum-theme-catppuccin-git catppuccin-cursors-mocha \ + catppuccin-konsole-theme-git papirus-folders-catppuccin-git \ + catppuccin-sddm-theme-mocha install_helpwire +echo ">> Tema de login (SDDM) y carpetas Papirus en azul Catppuccin..." +mkdir -p /etc/sddm.conf.d +cat >/etc/sddm.conf.d/theme.conf </dev/null || true + echo ">> Servicios..." systemctl enable sddm systemctl enable NetworkManager @@ -92,9 +103,24 @@ set -e kwriteconfig6 --file kxkbrc --group Layout --key LayoutList "us" kwriteconfig6 --file kxkbrc --group Layout --key VariantList "intl" kwriteconfig6 --file kxkbrc --group Layout --key Use "true" +# Color, decoración, iconos, cursor; estilo Qt = Kvantum (Catppuccin) plasma-apply-colorscheme CatppuccinMochaBlue 2>/dev/null || true plasma-apply-desktoptheme breeze-dark 2>/dev/null || true plasma-changeicons Papirus-Dark 2>/dev/null || true +plasma-apply-cursortheme catppuccin-mocha-dark-cursors 2>/dev/null || true +kwriteconfig6 --file kdeglobals --group KDE --key widgetStyle kvantum +mkdir -p "$HOME/.config/Kvantum" +kwriteconfig6 --file Kvantum/kvantum.kvconfig --group General --key theme catppuccin-mocha-blue +# Konsole: perfil con esquema Catppuccin por defecto +mkdir -p "$HOME/.local/share/konsole" +cat >"$HOME/.local/share/konsole/Catppuccin.profile" < icono en blanco que da error. Fijamos lanzadores limpios en el gestor de tareas. -A="$HOME/.config/plasma-org.kde.plasma.desktop-appletsrc" -grp=$(grep -B6 "plugin=org.kde.plasma.icontasks" "$A" 2>/dev/null | grep -oE "Containments\]\[[0-9]+\]\[Applets\]\[[0-9]+" | tail -1) || true -if [[ -n "$grp" ]]; then - c=$(grep -oE "Containments\]\[[0-9]+" <<<"$grp" | grep -oE "[0-9]+") - a=$(grep -oE "Applets\]\[[0-9]+" <<<"$grp" | grep -oE "[0-9]+") - kwriteconfig6 --file plasma-org.kde.plasma.desktop-appletsrc \ - --group Containments --group "$c" --group Applets --group "$a" \ - --group Configuration --group General \ - --key launchers "applications:org.kde.dolphin.desktop,applications:org.kde.konsole.desktop" -fi +# Botones de ventana estilo macOS (cerrar/min/max a la izquierda) +kwriteconfig6 --file kwinrc --group org.kde.kdecoration2 --key ButtonsOnLeft "XIA" +kwriteconfig6 --file kwinrc --group org.kde.kdecoration2 --key ButtonsOnRight "" +# Layout macOS: barra superior (menú global) + dock inferior flotante. +# Sustituye el panel por defecto (que además clavaba Discover -> icono roto). +cat >"$HOME/.local/bin/kde-layout.js" <<'JS' +var all = panels(); +for (var i = 0; i < all.length; i++) { all[i].remove(); } +var top = new Panel; +top.location = "top"; top.floating = false; top.height = 28; +top.addWidget("org.kde.plasma.kickoff"); +top.addWidget("org.kde.plasma.appmenu"); +top.addWidget("org.kde.plasma.panelspacer"); +top.addWidget("org.kde.plasma.systemtray"); +top.addWidget("org.kde.plasma.digitalclock"); +var dock = new Panel; +dock.location = "bottom"; dock.floating = true; dock.height = 56; +dock.lengthMode = "fit"; dock.alignment = "center"; +var tasks = dock.addWidget("org.kde.plasma.icontasks"); +tasks.currentConfigGroup = ["General"]; +tasks.writeConfig("launchers", "applications:zen.desktop,applications:org.kde.dolphin.desktop,applications:org.kde.konsole.desktop,applications:code.desktop,applications:obsidian.desktop,applications:spotify.desktop,applications:eu.betterbird.Betterbird.desktop,applications:systemsettings.desktop"); +tasks.writeConfig("showOnlyCurrentDesktop", false); +tasks.reloadConfig(); +JS +# esperar a que plasmashell exponga su API (evita carrera en el primer login) +for i in $(seq 1 30); do qdbus6 org.kde.plasmashell >/dev/null 2>&1 && break; sleep 1; done +qdbus6 org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "$(cat "$HOME/.local/bin/kde-layout.js")" 2>/dev/null || true +qdbus6 org.kde.KWin /KWin reconfigure 2>/dev/null || true rm -f "$HOME/.config/autostart/firstboot-theme.desktop" EOS chmod +x "$USER_HOME/.local/bin/firstboot-theme.sh"