#!/bin/bash # to be run as root ... set -o # import keys: pacman-key --add <(curl -o - "https://arch.eckner.net/archlinuxewe/masterkeys.gpg") # locally sign package-key pacman-key --lsign-key 0x43BF68D3 # locally sign repository-key pacman-key --lsign-key 0x20194BA1 # setup mirror in mirrorlist if ! grep -q "^Server = https://arch\.eckner\.net" /etc/pacman.d/mirrorlist then ml="$( curl -o - "https://arch.eckner.net/archlinuxewe/os/any/" 2> /dev/null | \ tr "<>" "\n\n" | \ grep "^pacman-mirrorlist-.*\.pkg\.tar\.xz\$" | \ tail -n1 )" curl -o - "https://arch.eckner.net/archlinuxewe/os/any/${ml}" 2> /dev/null | \ tar -OxJ etc/pacman.d/mirrorlist > \ /etc/pacman.d/mirrorlist fi # setup repo in pacman.conf if grep -q "^\[archlinuxewe\]\$" /etc/pacman.conf then tmpFile=$(mktemp) cat /etc/pacman.conf | \ ( while read s do if [[ "$s" = "# The testing repositories"* ]] then echo '[archlinuxewe]' echo 'SigLevel = Required' echo 'Include = /etc/pacman.d/mirrorlist' echo '' fi echo "${s}" done ) > "${tmpFile}" cat "${tmpFile}" > /etc/pacman.conf rm "${tmpFile}" fi