KDE: rice Catppuccin + layout macOS (horneado del setup en VM)
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 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
9bf3fda9a6
commit
092c8c4c67
+56
-14
@@ -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í.
|
# instala la base; el escritorio y los drivers gráficos open-source van aquí.
|
||||||
install_pacman "${PACMAN_COMMON[@]}" \
|
install_pacman "${PACMAN_COMMON[@]}" \
|
||||||
plasma-desktop sddm plasma-pa plasma-nm powerdevil kscreen systemsettings \
|
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 \
|
konsole dolphin kate ark spectacle kcalc gwenview okular \
|
||||||
mesa vulkan-icd-loader vulkan-radeon vulkan-intel intel-media-driver
|
mesa vulkan-icd-loader vulkan-radeon vulkan-intel intel-media-driver
|
||||||
|
|
||||||
@@ -67,9 +67,20 @@ install_bootloader
|
|||||||
|
|
||||||
echo ">> Bootstrapeando paru y paquetes AUR..."
|
echo ">> Bootstrapeando paru y paquetes AUR..."
|
||||||
bootstrap_paru
|
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
|
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 <<SDDM
|
||||||
|
[Theme]
|
||||||
|
Current=catppuccin-mocha-blue
|
||||||
|
SDDM
|
||||||
|
papirus-folders -C cat-mocha-blue --theme Papirus-Dark 2>/dev/null || true
|
||||||
|
|
||||||
echo ">> Servicios..."
|
echo ">> Servicios..."
|
||||||
systemctl enable sddm
|
systemctl enable sddm
|
||||||
systemctl enable NetworkManager
|
systemctl enable NetworkManager
|
||||||
@@ -92,9 +103,24 @@ set -e
|
|||||||
kwriteconfig6 --file kxkbrc --group Layout --key LayoutList "us"
|
kwriteconfig6 --file kxkbrc --group Layout --key LayoutList "us"
|
||||||
kwriteconfig6 --file kxkbrc --group Layout --key VariantList "intl"
|
kwriteconfig6 --file kxkbrc --group Layout --key VariantList "intl"
|
||||||
kwriteconfig6 --file kxkbrc --group Layout --key Use "true"
|
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-colorscheme CatppuccinMochaBlue 2>/dev/null || true
|
||||||
plasma-apply-desktoptheme breeze-dark 2>/dev/null || true
|
plasma-apply-desktoptheme breeze-dark 2>/dev/null || true
|
||||||
plasma-changeicons Papirus-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" <<PRO
|
||||||
|
[Appearance]
|
||||||
|
ColorScheme=catppuccin-mocha
|
||||||
|
[General]
|
||||||
|
Name=Catppuccin
|
||||||
|
Parent=FALLBACK/
|
||||||
|
PRO
|
||||||
|
kwriteconfig6 --file konsolerc --group "Desktop Entry" --key DefaultProfile Catppuccin.profile
|
||||||
# Apps GTK (GIMP, etc.) con tema Catppuccin + iconos Papirus
|
# Apps GTK (GIMP, etc.) con tema Catppuccin + iconos Papirus
|
||||||
for v in 3.0 4.0; do
|
for v in 3.0 4.0; do
|
||||||
mkdir -p "$HOME/.config/gtk-$v"
|
mkdir -p "$HOME/.config/gtk-$v"
|
||||||
@@ -108,18 +134,34 @@ done
|
|||||||
# Fuentes
|
# Fuentes
|
||||||
kwriteconfig6 --file kdeglobals --group General --key font "JetBrains Mono Nerd Font,11,-1,5,50,0,0,0,0,0"
|
kwriteconfig6 --file kdeglobals --group General --key font "JetBrains Mono Nerd Font,11,-1,5,50,0,0,0,0,0"
|
||||||
kwriteconfig6 --file kdeglobals --group General --key fixed "JetBrains Mono Nerd Font Mono,12,-1,5,50,0,0,0,0,0"
|
kwriteconfig6 --file kdeglobals --group General --key fixed "JetBrains Mono Nerd Font Mono,12,-1,5,50,0,0,0,0,0"
|
||||||
# El panel por defecto de Plasma clava Discover (no instalado en el setup mínimo)
|
# Botones de ventana estilo macOS (cerrar/min/max a la izquierda)
|
||||||
# -> icono en blanco que da error. Fijamos lanzadores limpios en el gestor de tareas.
|
kwriteconfig6 --file kwinrc --group org.kde.kdecoration2 --key ButtonsOnLeft "XIA"
|
||||||
A="$HOME/.config/plasma-org.kde.plasma.desktop-appletsrc"
|
kwriteconfig6 --file kwinrc --group org.kde.kdecoration2 --key ButtonsOnRight ""
|
||||||
grp=$(grep -B6 "plugin=org.kde.plasma.icontasks" "$A" 2>/dev/null | grep -oE "Containments\]\[[0-9]+\]\[Applets\]\[[0-9]+" | tail -1) || true
|
# Layout macOS: barra superior (menú global) + dock inferior flotante.
|
||||||
if [[ -n "$grp" ]]; then
|
# Sustituye el panel por defecto (que además clavaba Discover -> icono roto).
|
||||||
c=$(grep -oE "Containments\]\[[0-9]+" <<<"$grp" | grep -oE "[0-9]+")
|
cat >"$HOME/.local/bin/kde-layout.js" <<'JS'
|
||||||
a=$(grep -oE "Applets\]\[[0-9]+" <<<"$grp" | grep -oE "[0-9]+")
|
var all = panels();
|
||||||
kwriteconfig6 --file plasma-org.kde.plasma.desktop-appletsrc \
|
for (var i = 0; i < all.length; i++) { all[i].remove(); }
|
||||||
--group Containments --group "$c" --group Applets --group "$a" \
|
var top = new Panel;
|
||||||
--group Configuration --group General \
|
top.location = "top"; top.floating = false; top.height = 28;
|
||||||
--key launchers "applications:org.kde.dolphin.desktop,applications:org.kde.konsole.desktop"
|
top.addWidget("org.kde.plasma.kickoff");
|
||||||
fi
|
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"
|
rm -f "$HOME/.config/autostart/firstboot-theme.desktop"
|
||||||
EOS
|
EOS
|
||||||
chmod +x "$USER_HOME/.local/bin/firstboot-theme.sh"
|
chmod +x "$USER_HOME/.local/bin/firstboot-theme.sh"
|
||||||
|
|||||||
Reference in New Issue
Block a user