#!/usr/bin/env bash if [ -f '/etc/qubes-release' ]; then # Qubes dom0 qvm-create --label red --template debian-11 provision &> /dev/null || EXIT_CODE=$? qvm-run --pass-io provision 'curl -sSL https://gitlab.com/megabyte-labs/dotfiles/-/archive/master/dotfiles-master.tar.gz > dotfiles.tar.gz' qvm-run --pass-io provision "cat dotfiles.tar.gz" > "$HOME/dotfiles.tar.gz" tar -xzf "$HOME/dotfiles.tar.gz" -C "$HOME" rm -f "$HOME/dotfiles.tar.gz" sudo rm -rf /usr/src/professor-dotfiles sudo cp -rf "$HOME/dotfiles-master" /usr/src/professor-dotfiles else if [ -d /usr/src/professor-dotfiles/.git ]; then cd /usr/src/professor-dotfiles sudo git pull origin master cd ~/ else sudo rm -rf /usr/src/professor-dotfiles sudo git clone https://gitlab.com/megabyte-labs/dotfiles.git /usr/src/professor-dotfiles fi fi # Copy dotfile folders while read DOTFILE_FOLDER; do BASENAME_FOLDER="$(basename "$DOTFILE_FOLDER")" if [ ! -d "$HOME/$BASENAME_FOLDER" ]; then mkdir -p "$HOME/$BASENAME_FOLDER" fi cp -rf "$DOTFILE_FOLDER/"* "$HOME/$BASENAME_FOLDER" done < <(find /usr/src/professor-dotfiles/dotfiles -maxdepth 1 -mindepth 1 -type d) # Copy dotfile files while read DOTFILE_FILE; do BASENAME_FILE="$(basename "$DOTFILE_FILE")" cp "$DOTFILE_FILE" "$HOME/$BASENAME_FILE" chmod 600 "$HOME/$BASENAME_FILE" done < <(find /usr/src/professor-dotfiles/dotfiles -maxdepth 1 -mindepth 1 -type f) # Ensure .local/bin contents are executable while read LOCAL_BIN; do chmod +x "${LOCAL_BIN}" done < <(find "$HOME/.local/bin" -maxdepth 1 -mindepth 1 -type f) # Firefox theme if [ ! -f ~/.mozilla/firefox ] && [ ! -f '/etc/qubes-release' ]; then git clone https://github.com/EliverLara/firefox-sweet-theme /tmp/firefox-sweet-theme bash /tmp/firefox-sweet-theme/scripts/install.sh fi # grep -q QT_QPA_PLATFORMTHEME=qt5ct /etc/environment || echo QT_QPA_PLATFORMTHEME=qt5ct | sudo tee -a /etc/environment # sudo cp -rv "$HOME/.local/share/qt5ct" /usr/share