fix fresh install hang: split AGS into own module, remove obsolete packages
- Remove slow fallback loop from is_package_installed (only use expac) - Move aylurs-gtk-shell from hyprland group to dedicated core/ags module with clear progress warning and user confirmation before build - Install AUR packages one at a time in install_aur (better error isolation) - Replace obsolete ttf-font-awesome with otf-font-awesome - Remove p7zip (deleted from repos and AUR)
This commit is contained in:
25
lib/utils.sh
25
lib/utils.sh
@@ -97,11 +97,6 @@ is_package_installed() {
|
||||
{ for (i=2; i<=NF; i++) if ($i == pkg) {found=1; exit} }
|
||||
END {exit !found}
|
||||
' && return 0
|
||||
else
|
||||
while IFS= read -r installed; do
|
||||
[[ -z "$installed" ]] && continue
|
||||
pacman -Qi "$installed" 2>/dev/null | grep -qP "Provides\s*:\s*.*\b${pkg}\b" && return 0
|
||||
done < <(pacman -Qq 2>/dev/null)
|
||||
fi
|
||||
return 1
|
||||
fi
|
||||
@@ -145,21 +140,23 @@ install_aur() {
|
||||
return 1
|
||||
fi
|
||||
|
||||
local to_install=()
|
||||
local pkg
|
||||
local rc=0
|
||||
|
||||
for pkg in "${packages[@]}"; do
|
||||
if ! is_package_installed "$pkg"; then
|
||||
to_install+=("$pkg")
|
||||
if is_package_installed "$pkg"; then
|
||||
continue
|
||||
fi
|
||||
tui_info "Installing $pkg from AUR..."
|
||||
if "$aur_helper" -S --needed --noconfirm "$pkg"; then
|
||||
tui_success "$pkg installed"
|
||||
else
|
||||
tui_warn "$pkg could not be installed"
|
||||
rc=1
|
||||
fi
|
||||
done
|
||||
|
||||
if ((${#to_install[@]})); then
|
||||
log_info "Installing from AUR: ${to_install[*]}"
|
||||
"$aur_helper" -S --needed --noconfirm "${to_install[@]}"
|
||||
else
|
||||
log_info "All AUR packages already installed"
|
||||
fi
|
||||
return $rc
|
||||
}
|
||||
|
||||
replace_home_paths() {
|
||||
|
||||
Reference in New Issue
Block a user