#!/bin/bash # standard lactazora script stub set -eo pipefail #these can cause problems when you want stuff to keep going if [[ -n "${BASHD_DEBUG}" ]]; then # a inevitability that this will be used set -x fi trap cleanup EXIT # A little more robust cleanup # trap errors and set the ERR trap trap 'echo -e "\nERROR: $BASH_COMMAND\nFILE: ${BASH_SOURCE[0]}\nLINE: ${BASH_LINENO[0]}\n" >&2; exit 1' ERR cleanup() { # We can clean up any temp files or what nots, but for now a place holder true } # end stub # Will setup anything debian based # First step that always needs to happen sudo apt update sudo apt upgrade -y # install curl,git, and wget sudo apt install curl git wget -y # at worst this does nothing # install the fun stuff # deepseek suggested to make the code to grab a file a function due to repeated use install_from_url() { # I agree this will work fine local url=$1 local install_cmd=$2 local temp_file=$(mktemp) curl -fsSL "$url" -o "$temp_file" chmod 755 "$temp_file" eval "$install_cmd $temp_file" rm "$temp_file" } # We begin with homebrew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # inject homebrew into .bashrc echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" # now pacstall sudo bash -c "$(curl -fsSL https://pacstall.dev/q/install)" # now makedeb # we need a environment variable here export MAKEDEB_RELEASE="makedeb" bash -ci "$(wget -qO - 'https://shlink.makedeb.org/install')" # Thats it for top level stuff now we dive a little deeper # Now floorp curl -fsSL https://ppa.floorp.app/KEY.gpg | sudo gpg --dearmor -o /usr/share/keyrings/Floorp.gpg sudo curl -sS --compressed -o /etc/apt/sources.list.d/Floorp.list 'https://ppa.floorp.app/Floorp.list' sudo apt update sudo apt install floorp -y # now let's do signal # 1. Install our official public software signing key: wget -O- https://updates.signal.org/desktop/apt/keys.asc | gpg --dearmor > signal-desktop-keyring.gpg cat signal-desktop-keyring.gpg | sudo tee /usr/share/keyrings/signal-desktop-keyring.gpg > /dev/null # 2. Add our repository to your list of repositories: echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/signal-desktop-keyring.gpg] https://updates.signal.org/desktop/apt xenial main' |\ sudo tee /etc/apt/sources.list.d/signal-xenial.list # 3. Update your package database and install Signal: sudo apt update && sudo apt install signal-desktop -y # now let's do discord wget 'https://discord.com/api/download?platform=linux&format=deb' -O discord.deb sudo apt install ./discord.deb -y # now let's do telegram wget https://td.telegram.org/tlinux/tsetup.5.11.1.tar.xz -O tsetup.5.11.1.tar.xz tar -xvf tsetup.5.11.1.tar.xz # Now lets do kopia curl -s https://kopia.io/signing-key | sudo gpg --dearmor -o /etc/apt/keyrings/kopia-keyring.gpg echo "deb [signed-by=/etc/apt/keyrings/kopia-keyring.gpg] http://packages.kopia.io/apt/ stable main" | sudo tee /etc/apt/sources.list.d/kopia.list sudo apt update sudo apt install kopia -y sudo apt install kopia-ui -y # now lets do steam wget https://cdn.cloudflare.steamstatic.com/client/installer/steam.deb -O steam.deb sudo apt install ./steam.deb -y # that is it for now, maybe later add xanmod or openrc # Now lets add NVM wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash source ~/.bashrc nvm install --lts # Now bun curl -fsSL https://bun.sh/install | bash