Reorder stages: scripts before uv-projects

Swap stage 06 and 07 so that custom scripts (Bitwarden SSH loader,
custom binaries) are deployed before git clone operations that
need SSH keys.

- Renamed 06-uv-projects.sh → 07-uv-projects.sh
- Renamed 07-scripts.sh → 06-scripts.sh
- Updated provision.sh STAGES array and README
- Updated stage reference numbers in 08-systemd and 09-desktop
- Removed mempi-sync.timer (not needed without automated refresh)
This commit is contained in:
2026-06-07 14:34:05 +10:00
parent 180c5838ea
commit 7699d71d4e
7 changed files with 270 additions and 112 deletions

51
stages/09-desktop.sh Normal file → Executable file
View File

@@ -21,7 +21,7 @@ DE="${XDG_CURRENT_DESKTOP:-unknown}"
# ===========================================================================
# These are shell scripts that use selected text for quick actions.
# They rely on: wl-clipboard, wtype, wofi, jq, xdg-open
# Installed from ~/Development/hotkeys/ (cloned in stage 06).
# Installed from ~/Development/hotkeys/ (cloned in stage 07).
info "Setting up hotkey scripts..."
HOTKEYS_DIR="$HOME/Development/hotkeys"
@@ -34,7 +34,7 @@ if [ -d "$HOTKEYS_DIR" ]; then
done
ok "Hotkey scripts linked to ~/.local/bin/"
else
warn "hotkeys repo not cloned yet. Run stage 06 first."
warn "hotkeys repo not cloned yet. Run stage 07 first."
fi
# ===========================================================================
@@ -136,7 +136,48 @@ if [ -f "$CONFIG_DIR/ghostty/config" ]; then
fi
# ===========================================================================
# 5. Fonts (Nerd Fonts for terminal + dev)
# 5. Autostart applications
# ===========================================================================
info "Configuring autostart applications..."
AUTOSTART_DIR="$HOME/.config/autostart"
mkdir -p "$AUTOSTART_DIR"
autostart_app() {
local app_name="$1"
local desktop_file="$2"
local target="$AUTOSTART_DIR/$app_name.desktop"
if [ -f "$target" ]; then
ok " Autostart '$app_name' already configured."
return
fi
# Look for the desktop file in standard locations
local found=""
for dir in /usr/share/applications /var/lib/flatpak/exports/share/applications ~/.local/share/applications; do
if [ -f "$dir/$desktop_file" ]; then
found="$dir/$desktop_file"
break
fi
done
if [ -n "$found" ]; then
cp "$found" "$target"
ok " Autostart '$app_name' configured."
else
warn " Desktop file for '$app_name' not found. Create manually: $target"
fi
}
# Apps to autostart at login
autostart_app "firefox" "org.mozilla.firefox.desktop"
autostart_app "ghostty" "com.mitchellh.ghostty.desktop"
autostart_app "nextcloud" "com.nextcloud.desktopclient.nextcloud.desktop"
autostart_app "obsidian" "md.obsidian.Obsidian.desktop"
autostart_app "thunderbird" "net.thunderbird.Thunderbird.desktop"
# ===========================================================================
# 6. Fonts (Nerd Fonts for terminal + dev)
# ===========================================================================
info "Installing Nerd Fonts..."
FONT_DIR="$HOME/.local/share/fonts"
@@ -180,7 +221,7 @@ fc-cache -f "$FONT_DIR" 2>/dev/null || true
ok "Font cache rebuilt."
# ===========================================================================
# 6. GTK Theme (dark mode + Papirus icons)
# 7. GTK Theme (dark mode + Papirus icons)
# ===========================================================================
info "Setting GTK theme and icons..."
gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' 2>/dev/null || true
@@ -189,7 +230,7 @@ gsettings set org.gnome.desktop.interface icon-theme 'Papirus-Dark' 2>/dev/null
ok "GTK dark theme + Papirus icons set."
# ===========================================================================
# 7. Solaar (Logitech peripherals) config
# 8. Solaar (Logitech peripherals) config
# ===========================================================================
# The Pop machine had config for MX Keys Mini + MX Master 3.
# Solaar config is auto-generated when you pair devices. The config