Files
arch-setup/shared/packages-common.sh
T
2026-06-23 07:55:28 +02:00

64 lines
2.3 KiB
Bash
Executable File

#!/usr/bin/env bash
# Paquetes comunes a GNOME y KDE. Lo sourcea cada <de>/setup.sh.
# AUR-first: lo que está en repos oficiales va por pacman, el resto por paru.
# --- Repos oficiales (pacman) ---------------------------------------------
PACMAN_COMMON=(
# base / shell / CLI moderno
zsh starship fzf ripgrep bat eza btop zoxide fd tldr
# dev toolchain (Podman en vez de Docker + capa de compat)
git base-devel podman podman-docker buildah
nodejs npm python python-pip rustup
# apps de escritorio que SÍ están en extra
bitwarden dbeaver obsidian gimp syncthing remmina freerdp apostrophe
# fuentes / iconos compartidos
ttf-jetbrains-mono-nerd ttf-firacode-nerd noto-fonts noto-fonts-emoji
papirus-icon-theme
# red / utilidades base
networkmanager flatpak openssh
)
# --- AUR (paru) ------------------------------------------------------------
# helpwire: es un .deb; no hay paquete AUR estable -> se convierte con debtap
# (lo gestiona aparte la función install_helpwire de setup.sh).
AUR_COMMON=(
zen-browser-bin
visual-studio-code-bin
davmail
betterbird-bin
onlyoffice-bin
spotify
ungoogled-chromium-bin
input-remapper-git
)
# --- helpers usados por los setup.sh --------------------------------------
install_pacman() { pacman -S --needed --noconfirm "$@"; }
# paru se construye como usuario normal (makepkg no corre como root)
as_user() { sudo -u "$INSTALL_USER" bash -lc "$*"; }
bootstrap_paru() {
command -v paru &>/dev/null && return 0
install_pacman git base-devel
as_user 'cd /tmp && rm -rf paru-bin && \
git clone https://aur.archlinux.org/paru-bin.git && \
cd paru-bin && makepkg -si --noconfirm'
}
install_aur() {
# ponytail: paru en una sola llamada; si un PKGBUILD falla, falla el lote.
# upgrade path: instalar uno a uno con un bucle si necesitas tolerancia a fallos.
as_user "paru -S --needed --noconfirm $*"
}
# HelpWire no tiene AUR: descargar .deb, convertir con debtap, instalar.
install_helpwire() {
local url="https://www.helpwire.app/downloads/operator/linux/helpwire-operator.deb"
install_aur debtap
as_user "sudo debtap -u || true"
as_user "cd /tmp && curl -fsSL -o helpwire.deb '$url' && \
yes '' | sudo debtap -Q helpwire.deb && \
sudo pacman -U --noconfirm helpwire-operator*.pkg.tar.zst"
}