commit 3b554bee52acfe7c1754fce081eff77cba48ea1c Author: kake26 Date: Thu Mar 6 18:07:25 2025 -0600 First commit diff --git a/mastersetup.bash b/mastersetup.bash new file mode 100644 index 0000000..5964bc3 --- /dev/null +++ b/mastersetup.bash @@ -0,0 +1,115 @@ +#!/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" + eval "$install_cmd $temp_file" + rm "$temp_file" +} + +# We begin with homebrew + +install_from_url "https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh" "/bin/bash -c" + +# inject homebrew into .bashrc + +echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bashrc +eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" + +# now pacstall + +install_from_url "https://pacstall.dev/q/install" "sudo bash -c" + +# now makedeb + +install_from_url "https://shlink.makedeb.org/install" "bash -ci" + +# Thats it for top level stuff now we dive a little deeper + +# Now floorp + +install_from_url "https://ppa.floorp.app/KEY.gpg" "sudo gpg --dearmor -o /usr/share/keyrings/Floorp.gpg" +install_from_url "https://ppa.floorp.app/Floorp.list" "sudo curl -sS --compressed -o /etc/apt/sources.list.d/Floorp.list" +sudo apt update +sudo apt install floorp -y + +# now let's do signal + +install_from_url "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 + +install_from_url "https://stable.dl2.discordapp.net/apps/linux/0.0.87/discord-0.0.87.deb" "sudo apt install ./discord-0.0.87.deb -y" + +# now let's do telegram + +install_from_url "https://td.telegram.org/tlinux/tsetup.5.11.1.tar.xz" "sudo tar -xvf tsetup.5.11.1.tar.xz" + +# Now lets do kopia + +install_from_url "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 +sudo apt install kopia-ui + +# now lets do steam + +install_from_url "https://cdn.cloudflare.steamstatic.com/client/installer/steam.deb" "sudo apt install ./steam.deb -y" + +# that is it for now, maybe later add xanmod or openrc + +# Now lets add NVM + +install_from_url "https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh" "bash" + +source ~/.bashrc +nvm install --lts + +# Now bun + +install_from_url "https://bun.sh/install" "bash" \ No newline at end of file