KDE: Discover; arregla build Rust en AUR y tolerancia a fallos
- KDE: discover + packagekit-qt6 (tienda; backend flatpak ya vía flatpak) - as_user exporta RUSTUP_HOME/CARGO_HOME: paquetes Rust (karere) no intentan escribir /root/.rustup bajo el fakeroot de makepkg - install_aur instala uno a uno: un PKGBUILD roto ya no tumba el lote ni chezmoi Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -60,6 +60,7 @@ 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 kvantum \
|
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 \
|
||||||
|
discover packagekit-qt6 \
|
||||||
adwaita-fonts \
|
adwaita-fonts \
|
||||||
mesa vulkan-icd-loader vulkan-radeon vulkan-intel intel-media-driver
|
mesa vulkan-icd-loader vulkan-radeon vulkan-intel intel-media-driver
|
||||||
|
|
||||||
|
|||||||
@@ -38,8 +38,15 @@ AUR_COMMON=(
|
|||||||
# --- helpers usados por los setup.sh --------------------------------------
|
# --- helpers usados por los setup.sh --------------------------------------
|
||||||
install_pacman() { pacman -S --needed --noconfirm "$@"; }
|
install_pacman() { pacman -S --needed --noconfirm "$@"; }
|
||||||
|
|
||||||
# paru se construye como usuario normal (makepkg no corre como root)
|
# paru se construye como usuario normal (makepkg no corre como root).
|
||||||
as_user() { sudo -u "$INSTALL_USER" bash -lc "$*"; }
|
# RUSTUP_HOME/CARGO_HOME explícitos: bajo el fakeroot de makepkg, HOME pasa a
|
||||||
|
# /root y rustup intenta crear /root/.rustup (permission denied, uid real != root).
|
||||||
|
# rustup respeta RUSTUP_HOME antes que HOME, así que apuntarlo al home del usuario
|
||||||
|
# arregla los paquetes Rust (p.ej. karere).
|
||||||
|
as_user() {
|
||||||
|
sudo -u "$INSTALL_USER" bash -lc \
|
||||||
|
"export RUSTUP_HOME=\$HOME/.rustup CARGO_HOME=\$HOME/.cargo; $*"
|
||||||
|
}
|
||||||
|
|
||||||
bootstrap_paru() {
|
bootstrap_paru() {
|
||||||
command -v paru &>/dev/null && return 0
|
command -v paru &>/dev/null && return 0
|
||||||
@@ -55,9 +62,14 @@ bootstrap_paru() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
install_aur() {
|
install_aur() {
|
||||||
# ponytail: paru en una sola llamada; si un PKGBUILD falla, falla el lote.
|
# Uno a uno: que un PKGBUILD roto (p.ej. karere) no se lleve por delante el
|
||||||
# upgrade path: instalar uno a uno con un bucle si necesitas tolerancia a fallos.
|
# resto del lote ni el chezmoi init posterior. Avisa de los que fallen.
|
||||||
as_user "paru -S --needed --noconfirm $*"
|
local p failed=()
|
||||||
|
for p in "$@"; do
|
||||||
|
as_user "paru -S --needed --noconfirm $p" || failed+=("$p")
|
||||||
|
done
|
||||||
|
((${#failed[@]})) && echo "!! AUR falló (revisa a mano): ${failed[*]}" >&2
|
||||||
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
# archinstall 4.3 instala el paquete grub pero NO ejecuta grub-install con
|
# archinstall 4.3 instala el paquete grub pero NO ejecuta grub-install con
|
||||||
|
|||||||
Reference in New Issue
Block a user