dotfiles/scripts/bootstrap.sh

61 lines
2.5 KiB
Bash
Executable File

#!/bin/bash
# MANUALLY: need /etc/sudoers edited to add myself to sudoers
# ALSO: need to manually edit /etc/apt/sources.list to add testing
# TODO: write a script that will automatically do that, even if it has to be run as sudo
# ALSO ALSO: run this manually, its weird to automate for some reason
# bash -ci \"$(wget -qO - 'https://shlink.makedeb.org/install')\"
sudo apt-add-repository -yns main non-free-firmware contrib non-free
# need to be installed separately first
sudo apt install -y curl
# gpg
sudo curl -fsSLo /usr/share/keyrings/steam.gpg http://repo.steampowered.com/steam/archive/stable/steam.gpg
sudo curl -fsSLo /usr/share/keyrings/mullvad-keyring.asc https://repository.mullvad.net/deb/mullvad-keyring.asc
# add additional files
echo "deb [arch=amd64,i386 signed-by=/usr/share/keyrings/steam.gpg] http://repo.steampowered.com/steam/ stable steam" | sudo tee /etc/apt/sources.list.d/steam.list
echo "deb [signed-by=/usr/share/keyrings/mullvad-keyring.asc arch=$( dpkg --print-architecture )] https://repository.mullvad.net/deb/stable stable main" | sudo tee /etc/apt/sources.list.d/mullvad.list
# update files, update debian
sudo apt update && sudo apt upgrade -y
# apt
sudo apt install -y autorandr i3 polybar lightdm-gtk-greeter lightdm flatpak yadm git python3 pipx alacritty i3lock-fancy network-manager-applet rofi dunst htop wget keepassxc-full net-tools vim mullvad-vpn flameshot caffeine pasystray tmux plasma-discover-backend-flatpak zsh autorandr kdeconnect fwupd numlockx neofetch
# chsh
chsh melissa -s /bin/zsh
# omz
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh) --keep-zshrc --unattended"
# update git submodules
yadm submodule update --init --recursive
# flatpak setup
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
# flatpak installs
flatpak install com.discordapp.Discord com.spotify.Client me.kozec.syncthingtk org.jitsi.jitsi-meet org.signal.Signal org.telegram.desktop us.zoom.Zoom
# am
wget -q https://raw.githubusercontent.com/ivan-hc/AM/main/AM-INSTALLER && chmod a+x ./AM-INSTALLER && ./AM-INSTALLER && rm ./AM-INSTALLER
# this is both broken at the moment and doesn't matter all that much because I'm not currently using cargo for anything.
# # cargo installs
# curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# rustup default stable
# cargo install cargo-update
# pipx
pipx install topgrade termdown
# doom emacs
~/.config/emacs/bin/doom install
# finally, update everything
topgrade