PortValhalla/scripts/Arch/Devices/Surface/install.sh

55 lines
1.2 KiB
Bash
Executable file

#!/bin/bash
pushd "${BASH_SOURCE%/*}" > /dev/null;
. "../../Software/yay/install.sh";
curl -s https://raw.githubusercontent.com/linux-surface/linux-surface/master/pkg/keys/surface.asc \
| sudo pacman-key --add -;
sudo pacman-key --finger 56C464BAAC421453;
sudo pacman-key --lsign-key 56C464BAAC421453;
pacmanConf="/etc/pacman.conf";
retry() {
retryCount="$1";
command="${@:2}";
exitCode=0;
for i in $(seq 1 $retryCount);
do
eval "$command" && {
exitCode=0;
break;
};
exitCode="$?";
done;
}
if ! grep "^\[linux-surface\]$" "$pacmanConf"
then
{
echo "";
echo "[linux-surface]";
echo "Server = https://pkg.surfacelinux.com/arch/";
} | sudo tee -a "$pacmanConf" > /dev/null;
fi;
retry 5 sudo pacman --noconfirm -Syu;
retry 5 sudo pacman --noconfirm -Sy \
intel-ucode \
linux-surface \
linux-surface-headers \
linux-surface-secureboot-mok \
iptsd \
intel-ucode \
linux-firmware-marvell \
;
sudo grub-mkconfig -o /boot/grub/grub.cfg;
yes | yay --answerclean=None --answerdiff=None -Syu libwacom-surface;
. "./camera.sh";
popd > /dev/null;