aboutsummaryrefslogtreecommitdiff
path: root/scripts/games.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/games.sh')
-rwxr-xr-xscripts/games.sh79
1 files changed, 50 insertions, 29 deletions
diff --git a/scripts/games.sh b/scripts/games.sh
index 518a2cb..de6a476 100755
--- a/scripts/games.sh
+++ b/scripts/games.sh
@@ -1,33 +1,54 @@
-#!/bin/sh
+#!/bin/bash
# games installations via flatpak
-# Make sure we have flatpak already installed
-if ! [ -x "$(command -v flatpak)" ]; then
- echo 'Error: flatpak is not installed.' >&2
- echo 'Please install it with "sudo pacman -S flatpak" and reboot your system.' >&2
- exit 1
+set -uo pipefail
+
+if ! command -v flatpak >/dev/null 2>&1; then
+ echo 'Error: flatpak is not installed.' >&2
+ echo 'Please install it with "sudo pacman -S flatpak" and reboot your system.' >&2
+ exit 1
fi
-flatpak install --noninteractive --assumeyes --user flathub app.drey.Blurble
-flatpak install --noninteractive --assumeyes --user flathub com.github.avojak.paint-spill
-flatpak install --noninteractive --assumeyes --user flathub flathub org.gnome.Crosswords
-flatpak install --noninteractive --assumeyes --user flathub io.github.garglk.Gargoyle
-flatpak install --noninteractive --assumeyes --user flathub io.github.nokse22.ultimate-tic-tac-toe
-flatpak install --noninteractive --assumeyes --user flathub io.github.swordpuffin.hunt
-flatpak install --noninteractive --assumeyes --user flathub io.github.swordpuffin.splices
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Aisleriot
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Chess
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Four-in-a-row
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.LightsOff
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Mahjongg
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Mines
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Quadrapassel
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Sudoku
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.SwellFoop
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Taquin
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.Tetravex
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.TwentyFortyEight
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.five-or-more
-flatpak install --noninteractive --assumeyes --user flathub org.gnome.gbrainy
-flatpak install --noninteractive --assumeyes --user flathub org.gottcode.Peg-E
-flatpak install --noninteractive --assumeyes --user flathub org.gottcode.Tanglet
+flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo
+
+APPS=(
+ app.drey.Blurble
+ com.github.avojak.paint-spill
+ io.github.garglk.Gargoyle
+ io.github.nokse22.ultimate-tic-tac-toe
+ io.github.swordpuffin.hunt
+ io.github.swordpuffin.splices
+ org.gnome.Aisleriot
+ org.gnome.Chess
+ org.gnome.Crosswords
+ org.gnome.five-or-more
+ org.gnome.Four-in-a-row
+ org.gnome.gbrainy
+ org.gnome.LightsOff
+ org.gnome.Mahjongg
+ org.gnome.Mines
+ org.gnome.Quadrapassel
+ org.gnome.Sudoku
+ org.gnome.SwellFoop
+ org.gnome.Taquin
+ org.gnome.Tetravex
+ org.gnome.TwentyFortyEight
+ org.gottcode.Peg-E
+ org.gottcode.Tanglet
+)
+
+failed=()
+for app in "${APPS[@]}"; do
+ if flatpak install --noninteractive --assumeyes --user flathub "$app"; then
+ :
+ else
+ failed+=("$app")
+ fi
+done
+
+if [ "${#failed[@]}" -gt 0 ]; then
+ echo
+ echo "Failed to install ${#failed[@]} app(s):" >&2
+ printf ' - %s\n' "${failed[@]}" >&2
+ exit 1
+fi