#!/bin/bash # exit script if return code != 0 set -e # build scripts #### # download build scripts from github curl --connect-timeout 5 --max-time 600 --retry 5 --retry-delay 0 --retry-max-time 60 -o /tmp/scripts-master.zip -L https://github.com/binhex/scripts/archive/master.zip # unzip build scripts unzip /tmp/scripts-master.zip -d /tmp # move shell scripts to /root mv /tmp/scripts-master/shell/arch/docker/*.sh /usr/local/bin/ # detect image arch #### OS_ARCH=$(cat /etc/os-release | grep -P -o -m 1 "(?=^ID\=).*" | grep -P -o -m 1 "[a-z]+$") if [[ ! -z "${OS_ARCH}" ]]; then if [[ "${OS_ARCH}" == "arch" ]]; then OS_ARCH="x86-64" else OS_ARCH="aarch64" fi echo "[info] OS_ARCH defined as '${OS_ARCH}'" else echo "[warn] Unable to identify OS_ARCH, defaulting to 'x86-64'" OS_ARCH="x86-64" fi # pacman packages #### # define pacman packages pacman_packages="mesa mesa-libgl wayvnc seatd xorg-xwayland noto-fonts gnu-free-fonts" # install pre-reqs pacman -S --needed $pacman_packages --noconfirm # install locally built cage pacman -U --noconfirm /tmp/cage/*.pkg.tar.zst # env vars #### # TODO mkdir -p /config # cleanup cleanup.sh