initial commit
This commit is contained in:
Executable
+51
@@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
# Stage 20 — bootstrap the yay AUR helper and install AUR packages.
|
||||
source "$(dirname "${BASH_SOURCE[0]}")/lib.sh"
|
||||
|
||||
log "AUR packages"
|
||||
|
||||
require_arch
|
||||
require_not_root
|
||||
require_sudo
|
||||
|
||||
# --- yay -------------------------------------------------------------------
|
||||
if have yay; then
|
||||
ok "yay already installed"
|
||||
else
|
||||
step "building yay-bin from the AUR"
|
||||
build_dir="$(mktemp -d)"
|
||||
if [[ "$DRY_RUN" == "1" ]]; then
|
||||
skip "would clone + makepkg yay-bin in $build_dir"
|
||||
else
|
||||
git clone --depth 1 https://aur.archlinux.org/yay-bin.git "$build_dir/yay-bin"
|
||||
( cd "$build_dir/yay-bin" && makepkg -si --noconfirm )
|
||||
rm -rf "$build_dir"
|
||||
fi
|
||||
ok "yay installed"
|
||||
fi
|
||||
|
||||
# --- i3lock -> i3lock-color swap ------------------------------------------
|
||||
# betterlockscreen needs i3lock-color; it conflicts with plain i3lock.
|
||||
if pacman -Qq i3lock >/dev/null 2>&1 && ! pacman -Qq i3lock-color >/dev/null 2>&1; then
|
||||
step "removing repo i3lock so i3lock-color can take over"
|
||||
run sudo pacman -Rdd --noconfirm i3lock || warn "could not remove i3lock; yay will prompt about the conflict"
|
||||
fi
|
||||
|
||||
mapfile -t AUR_PKGS < <(read_pkg_list "$PACKAGES_DIR/aur.txt")
|
||||
|
||||
TO_INSTALL=()
|
||||
for p in "${AUR_PKGS[@]}"; do
|
||||
pacman -Qq "$p" >/dev/null 2>&1 || TO_INSTALL+=("$p")
|
||||
done
|
||||
|
||||
if [[ ${#TO_INSTALL[@]} -eq 0 ]]; then
|
||||
ok "all AUR packages already installed"
|
||||
else
|
||||
step "installing: ${TO_INSTALL[*]}"
|
||||
for p in "${TO_INSTALL[@]}"; do
|
||||
run yay -S --needed --noconfirm --answerclean None --answerdiff None "$p" \
|
||||
|| warn "AUR package failed to build: $p (continuing)"
|
||||
done
|
||||
fi
|
||||
|
||||
ok "AUR stage done"
|
||||
Reference in New Issue
Block a user