kde/setup.sh instala plasma6-themes-layan-git, tela-icon-theme y layan-cursor-theme-git (a /usr/share, sin vendorizar binarios). El look capturado (rc files, splash Animated-Abstract-Cube) ya va por chezmoi en arch-configs, ver shared/capture-kde.sh. README actualizado: KDE ya no es Catppuccin+Papirus, diverge de GNOME (Layan+Tela). También arregla un bug de capture-kde.sh (hostname -> uname -n). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
62 lines
2.7 KiB
Bash
62 lines
2.7 KiB
Bash
#!/usr/bin/env bash
|
|
# Captura la personalización de KDE de ESTA máquina (el portátil, ya a tu gusto)
|
|
# para replicarla como instalación base: dotfiles -> chezmoi, paquetes -> setup.sh.
|
|
#
|
|
# ./shared/capture-kde.sh [DIR_SALIDA] (por defecto: ./kde-capture)
|
|
#
|
|
# IMPORTANTE: cierra la sesión de Plasma y ejecútalo desde una TTY (Ctrl+Alt+F3).
|
|
# Plasma reescribe sus rc al salir/recargar; capturar con la sesión viva pilla
|
|
# ficheros a medias.
|
|
set -euo pipefail
|
|
|
|
OUT="${1:-$PWD/kde-capture}"
|
|
CFG="$HOME/.config"
|
|
SHARE="$HOME/.local/share"
|
|
|
|
# Allowlist: solo lo que es portable a otra máquina. Se EXCLUDE a propósito lo
|
|
# hardware-specific (kscreen = layout de monitores) porque la base es single
|
|
# monitor y en multimonitor rompe. Ver README.
|
|
config_files=(
|
|
kdeglobals # tema, colores, fuentes, widget style
|
|
kwinrc # decoración, efectos, blur, botones de ventana
|
|
kxkbrc # teclado (us+intl)
|
|
plasmarc plasmashellrc
|
|
plasma-org.kde.plasma.desktop-appletsrc # paneles/dock/widgets (1 pantalla)
|
|
konsolerc dolphinrc katerc
|
|
kscreenlockerrc ksplashrc
|
|
Kvantum # tema Qt (dir)
|
|
gtk-3.0/settings.ini gtk-4.0/settings.ini # apps GTK
|
|
)
|
|
share_dirs=(
|
|
color-schemes # esquemas de color propios
|
|
konsole # perfiles de Konsole
|
|
plasma/look-and-feel # global theme si lo hiciste tú
|
|
)
|
|
|
|
mkdir -p "$OUT/config" "$OUT/share"
|
|
# cp --parents conserva la ruta relativa; por eso el subshell hace cd al origen.
|
|
( cd "$CFG" && for f in "${config_files[@]}"; do [[ -e $f ]] && cp -r --parents "$f" "$OUT/config/"; done ) || true
|
|
( cd "$SHARE" && for d in "${share_dirs[@]}"; do [[ -e $d ]] && cp -r --parents "$d" "$OUT/share/"; done ) || true
|
|
|
|
# Paquetes: nativos explícitos y AUR por separado, para meterlos en
|
|
# packages-common.sh / setup.sh.
|
|
pacman -Qqen >"$OUT/packages-native.txt" # repos oficiales, instalados a mano
|
|
pacman -Qqm >"$OUT/packages-aur.txt" # foráneos (AUR)
|
|
|
|
cat >"$OUT/README.txt" <<EOF
|
|
Captura KDE de $(uname -n) el $(date -I).
|
|
|
|
config/, share/ -> revisar y meter en arch-configs con: chezmoi add <ruta>
|
|
packages-native.txt / packages-aur.txt -> diff contra packages-common.sh y
|
|
kde/setup.sh; añade los que falten.
|
|
|
|
EXCLUIDO a propósito (hardware-specific, NO replicar en la base single-monitor):
|
|
~/.config/kscreen* y ~/.local/share/kscreen/ (layout de monitores)
|
|
powermanagementprofilesrc puede traer perfiles batería/AC del portátil: revisa.
|
|
EOF
|
|
|
|
echo ">> Capturado en: $OUT"
|
|
echo " $(find "$OUT/config" "$OUT/share" -type f | wc -l) ficheros de config"
|
|
echo " nativos: $(wc -l <"$OUT/packages-native.txt") AUR: $(wc -l <"$OUT/packages-aur.txt")"
|
|
echo " lee $OUT/README.txt"
|