Browse Source

Add support for AUR packages installation to dotfiles.sh

master
Riyyi 6 years ago
parent
commit
731610109c
  1. 1
      .scripts/completion/_dotfiles.sh
  2. 20
      dotfiles.sh

1
.scripts/completion/_dotfiles.sh

@ -10,6 +10,7 @@ _dotfiles.sh() {
'(- *)'{-h,--help}'[display usage message and exit]' '(- *)'{-h,--help}'[display usage message and exit]'
'(- *)'{-p,--packages}'[instal, list or store packages]:packages:(( '(- *)'{-p,--packages}'[instal, list or store packages]:packages:((
install\:"install all core packages of the stored list" install\:"install all core packages of the stored list"
install-aur\:"install all AUR packages of the stored list"
list\:"display all packages installed on the system (default)" list\:"display all packages installed on the system (default)"
store\:"stores a list of all installed packages" store\:"stores a list of all installed packages"
))' ))'

20
dotfiles.sh

@ -5,6 +5,8 @@
PACKAGE_FILE="packages" PACKAGE_FILE="packages"
EXCLUDE_FILES="${0#??}|$PACKAGE_FILE|.*.md$|.*README.org$|.git|screenshot.png" EXCLUDE_FILES="${0#??}|$PACKAGE_FILE|.*.md$|.*README.org$|.git|screenshot.png"
AUR_HELPER="trizen"
# -------------------------------------- # --------------------------------------
if [ "$(dirname "$0")" != "." ]; then if [ "$(dirname "$0")" != "." ]; then
@ -41,6 +43,9 @@ ${B}OPTIONS${N}
${B}install${N} ${B}install${N}
Install all core packages of the stored list. Install all core packages of the stored list.
${B}install-aur${N}
Install all AUR packages of the stored list.
${B}list${N} (default) ${B}list${N} (default)
Display all packages installed on the system. Display all packages installed on the system.
@ -125,12 +130,21 @@ packages() {
truncate -s 0 "$PACKAGE_FILE" truncate -s 0 "$PACKAGE_FILE"
fi fi
echo "$PACKAGE_LIST" > "$PACKAGE_FILE" echo "$PACKAGE_LIST" > "$PACKAGE_FILE"
elif [ "$1" = "install" ]; then elif [ "$1" = "install" ] || [ "$1" = "install-aur" ]; then
# Grab everything off enabled official repositories that is in the list # Grab everything off enabled official repositories that is in the list
CORE_LIST="$(pacman -Ssq | grep -xf $PACKAGE_FILE)" CORE_LIST="$(pacman -Ssq | grep -xf $PACKAGE_FILE)"
# Install core packages, answer no to pacman questions (honor Ignore) if [ "$1" = "install" ]; then
yes n | sudo pacman -S --needed $(echo "$CORE_LIST") # Install core packages, answer no to pacman questions (honor Ignore)
yes n | sudo pacman -S --needed $CORE_LIST
fi
if [ "$1" = "install-aur" ]; then
# Determine which packages in the list are from the AUR
AUR_LIST="$(grep -vx "$CORE_LIST" < $PACKAGE_FILE)"
# Install AUR packages
$AUR_HELPER -S --needed --noconfirm $AUR_LIST
fi
fi fi
} }

Loading…
Cancel
Save