scripts

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit ebdb6f2f099edc3df5f9ca58a8d296c4366e618c
parent 3ccfceaa405cd6c1ded8cc335e3a2510163bfb41
Author: Andrew Laack <andrew@laack.co>
Date:   Sat, 28 Mar 2026 23:56:33 -0500

Updates to backup procedures

Diffstat:
Mbackups/simple.sh | 7++++++-
Minstallers/arch-public-installation.sh | 18++++++++++++------
Aoffsite-backup.sh | 22++++++++++++++++++++++
Mtodo.sh | 2++
4 files changed, 42 insertions(+), 7 deletions(-)

diff --git a/backups/simple.sh b/backups/simple.sh @@ -12,10 +12,12 @@ SYNC_SHARED_DIR=true HOSTNAME_BRGR=$(hostnamectl | grep brgr) + if [ -n "$HOSTNAME_BRGR" ]; then - BACKUP_SRV=false +# BACKUP_SRV=false SYNC_SHARED_DIR=false fi +# commented because I like being able to tar + gpg /home/backup # ======== SOURCES OF TRUTH ======== @@ -42,6 +44,9 @@ fi # ======== BACKUP DEFINITIONS ======== backup-vps () { + + # this contains my matrix server db stuff (sqlite) + mkdir -p /home/backup/vps/var rsync -v --delete --recursive root@laack.co:/var/ /home/backup/vps/var diff --git a/installers/arch-public-installation.sh b/installers/arch-public-installation.sh @@ -11,21 +11,21 @@ cd -sudo pacman -S git gnome-keyring gcc make xorg-server libxft libxinerama freetype2 pkgconf ttf-fira-code zoxide fzf openssh less arandr pass pass-otp xclip newsboat xorg-xsetroot base-devel i3lock pandoc entr ripgrep wget jq man-db btop tmux rsync cronie mpv podman pavucontrol otf-latin-modern proton-vpn-gtk-app proton-vpn-cli tk brightnessctl zip unzip signal-desktop xorg-xset lynx figlet flameshot feh ffmpeg zathura-pdf-mupdf websocat xorg-xhost yt-dlp qemu-full qbittorrent alsa-utils pipewire-alsa pipewire-pulse sshfs iotop lsof neovim wireshark-qt nmap torbrowser-launcher bandwhich +sudo pacman -S git gnome-keyring gcc make xorg-server libxft libxinerama freetype2 pkgconf ttf-fira-code zoxide fzf openssh less arandr pass pass-otp xclip newsboat xorg-xsetroot base-devel i3lock pandoc entr ripgrep wget jq man-db btop tmux rsync cronie mpv podman pavucontrol otf-latin-modern proton-vpn-gtk-app proton-vpn-cli tk brightnessctl zip unzip signal-desktop xorg-xset lynx figlet flameshot feh ffmpeg zathura-pdf-mupdf websocat xorg-xhost yt-dlp qemu-full qbittorrent alsa-utils pipewire-alsa pipewire-pulse sshfs iotop lsof neovim wireshark-qt nmap torbrowser-launcher bandwhich ghidra bind-tools whois dunst + + +# TODO: Which of this stuff is redundant? +sudo pacman -S texlive-bin texlive-latex texlive-basic texlive-latexrecommended texlive-binextra texlive-latexextra texlive-fontsextra texlive-fontsrecommended sudo usermod -a -G wireshark $USER # NOTE: Requires logout to be realized. # This allows the user to run wireshark without root # with interface listening. + # xorg-xhost for containers to use my x server # TODO: Make this script idempotent. -# TODO: Add buskill installation -# - this would likely involve a non-versioned directory for binaries -# - these binaries would include buskill and mullvad (possibly) for now -# - ideally mullvad would work when installing with yay, but it seems broken for whatever reason - # Websocat is for dev work # BLUETOOTH: @@ -78,6 +78,9 @@ for REPO in dwm dmenu st; do cd .. done +go install git.laack.co/andrewlaack/usb-ks@64b02669e38c8a1099492523a93b11757e5754d1 +sudo install ~/go/bin/usb-ks /usr/local/bin/ + # EXTERNAL REPOS git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim git clone https://aur.archlinux.org/yay.git @@ -93,6 +96,9 @@ rm -rf ~/gitRepos/yay # if that's the case, go the to site and create an executable script in /usr/bin to run it # as far as configuration, I generally set default search engine to brave search and new tab -> blank page yay -S mullvad-browser-bin --noconfirm +yay -S vscodium-bin --noconfirm +yay -S netbird --noconfirm + # Questionable. diff --git a/offsite-backup.sh b/offsite-backup.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# send backups to webdav server + +# fuck. +set -euo pipefail + +TODAY=$(date +%Y-%m-%d) + +mkdir -p $HOME/backup +mkdir -p $HOME/backup/parts + +# will have to investigate why sudo is needed +# I'm rsyncing as myself so unclear.... + +sudo tar -cf $HOME/backup/backup-main-$TODAY.tar /home/backup $HOME/personal-files +gpg --batch --passphrase $ENCRYPTION_PW --yes -c $HOME/backup/backup-main-$TODAY.tar + +split -b 10M $HOME/backup/backup-main-$TODAY.tar.gpg $HOME/backup/parts/pt_ + +rclone copy $HOME/backup/parts openhost:/app_data/file-browser/encrypted-all-$TODAY + +rm -rf $HOME/backup diff --git a/todo.sh b/todo.sh @@ -1,5 +1,7 @@ #!/bin/bash +# TODO: This isn't right; if I miss a day, I'm fucked... + cd "/home/andrew/gitRepos/personal-notes" || exit YESTERDAY=$(date -d "1 day ago" +%Y-%m-%d) TODAY=$(date +%Y-%m-%d)