Compare commits

...
Sign in to create a new pull request.

12 commits

4 changed files with 136 additions and 23 deletions

24
debian/nvidia-drivers.sh vendored Normal file
View file

@ -0,0 +1,24 @@
#!/usr/bin/env sh
# Check if running as root
if [ "$EUID" -ne 0 ]; then
echo "Please run as root"
exit
fi
# Ensure dependencies
apt install -y dirmngr ca-certificates software-properties-common apt-transport-https dkms curl
# Remove all old nvidia Drivers
apt autoremove nvidia* --purge
# Installs GPG-Keys
curl -fSsL https://developer.download.nvidia.com/compute/cuda/repos/debian12/x86_64/3bf863cc.pub | sudo gpg --dearmor | sudo tee /usr/share/keyrings/nvidia-drivers.gpg > /dev/null 2>&1
# Installs Nvidia Repository
cat << END_OF_FILE > /etc/apt/sources.list.d/nvidia-drivers.list
deb [signed-by=/usr/share/keyrings/nvidia-drivers.gpg] https://developer.download.nvidia.com/compute/cuda/repos/debian12/x86_64/ /
END_OF_FILE
# Installs Nvidia Drivers
apt update && apt install nvidia-driver nvidia-smi nvidia-settings

View file

@ -1,6 +1,17 @@
#!/usr/bin/env sh
$INTERACTION_MODE=0
# Check if running as root
if [ "$EUID" -ne 0 ]; then
echo "Please run as root"
exit
fi
# Add contrib, non-free and non-free-firmware to the sources
config_sources () {
echo "INFO: ####################### Add contrib, non-free and non-free-firmware to the sources #######################"
interactive
cat << END_OF_FILE > /etc/apt/sources.list
deb https://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
@ -12,21 +23,101 @@ deb https://deb.debian.org/debian bookworm-updates main contrib non-free non-fre
deb-src https://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
END_OF_FILE
echo "INFO: ####################### Add Element to the sources #######################"
wget -O /usr/share/keyrings/element-io-archive-keyring.gpg https://packages.element.io/debian/element-io-archive-keyring.gpg
cat << END_OF_FILE > /etc/apt/sources.list.d/element-io.list
deb [signed-by=/usr/share/keyrings/element-io-archive-keyring.gpg] https://packages.element.io/debian/ default main
END_OF_FILE
}
# Add multi-arch support
config_multi-arch () {
echo "INFO: ####################### Add multi-arch support #######################"
interactive
dpkg --add-architecture i386
}
# Update apt sources
update_sources () {
echo "INFO: ####################### Update apt sources #######################"
interactive
apt-get update
}
# Upgrade upgradeable packages
upgrade_packages () {
echo "INFO: ####################### Upgrade upgradeable packages #######################"
interactive
apt-get upgrade --yes
}
# Installs packages
apt-get install --yes gnome-core gnome-connections gnome-text-editor gnome-disk-utility gnome-passwordsafe gnome-feeds vim curl chromium dropbear dropbear-initramfs steam-installer wine wine64 protontricks pcsx2 openjdk-17-jre flatpak gnome-software-plugin-flatpak git python3 python3-venv qemu-kvm virt-manager nvidia-driver
# Install packages
install_packages () {
echo "INFO: ####################### Install packages #######################"
interactive
apt-get install --yes element-desktop gnome-core gnome-connections gnome-text-editor gnome-disk-utility gnome-passwordsafe gnome-feeds vim curl chromium dropbear dropbear-initramfs steam-installer wine wine64 protontricks pcsx2 openjdk-17-jre flatpak gnome-software-plugin-flatpak git python3 python3-venv qemu-kvm virt-manager tmux apostrophe
}
# Install Proton-GE
install_proton-ge () {
echo "INFO: ####################### Install Proton-GE #######################"
interactive
wget -q -O - https://git.adrianux.net/ahoemann/Setup-Scripts/raw/branch/main/proton/proton-ge-setup.sh | bash
}
# Setup Flatpak repo
# Setup Flatpaks
setup_flatpaks () {
echo "INFO: ####################### Setup Flatpak #######################"
interactive
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
flatpak install --assumeyes --noninteractive flathub org.telegram.desktop flathub com.usebottles.bottles
flatpak override --filesystem=host
}
# Install NordVPN
install_nordvpn () {
echo "INFO: ####################### Install NordVPN #######################"
interactive
sh <(curl -sSf https://downloads.nordcdn.com/apps/linux/install.sh)
}
# Install Internet Archive CLI
install_ia-cli () {
echo "INFO: ####################### Install Internet Archive CLI #######################"
interactive
wget https://archive.org/download/ia-pex/ia -o /tmp/ia
chmod +x /tmp/ia
mv /tmp/ia /usr/bin/ia
}
main () {
config_sources
config_multi-arch
update_sources
upgrade_packages
install_packages
install_proton-ge
setup_flatpaks
install_nordvpn
install_ia-cli
}
if [ $1 == "-i" ]; then
$INTERACTION_MODE="1"
elif [ -z $1 ]; then
$1
else
main
fi
# Check if running in interactive mode
interactive () {
if [ $INTERACTION_MODE -eq "1" ];then
echo "INFO: ctrl+c to stop the script"
read -p "Press any key to start the current step..."
fi
}
if [ -n $(lspci | grep nvidia) ]; then
wget -q -O - https://git.adrianux.net/ahoemann/Setup-Scripts/raw/branch/main/debian/nvidia-drivers.sh | sh
exit
fi

View file

@ -1,12 +1,10 @@
#!/bin/sh
# Incase of pipefail stop the script
set -euo pipefail
if [ $SCRIPT -eq "debian-setup" ]; then
if [ $SCRIPT -eq "setup-ebian" ]; then
wget -q -O - https://git.adrianux.net/ahoemann/Setup-Scripts/raw/branch/main/debian/setup-debian.sh | bash
elif [ $SCRIPT -eq "alpine-setup" ]; then
wget -q -O - https://git.adrianux.net/ahoemann/Setup-Scripts/raw/branch/main/alpine/setup-alpine.sh | bash
elif [ $SCRIPT -eq "vps-install-alpine" ]; then
wget -q -O - https://git.adrianux.net/ahoemann/Setup-Scripts/raw/branch/main/alpine/vps-install-alpine.sh | bash
else
echo $SCRIPT "is an invalid option."
exit 1