From 49e6df605d13a3e46d51633dee8c40b9c318e792 Mon Sep 17 00:00:00 2001 From: John Ogle Date: Sat, 10 Jan 2026 12:56:36 -0800 Subject: [PATCH] feat(scripts): Add --help flags to all flake apps Add consistent --help/-h argument handling to update-doomemacs.sh, rotate-wallpaper.sh, and upgrade.sh scripts. Each script now displays usage information and a description of what it does. update-claude-code already had --help support. --- scripts/rotate-wallpaper.sh | 24 ++++++++++++++++++++++++ scripts/update-doomemacs.sh | 24 ++++++++++++++++++++++++ scripts/upgrade.sh | 29 +++++++++++++++++++++++++++++ 3 files changed, 77 insertions(+) diff --git a/scripts/rotate-wallpaper.sh b/scripts/rotate-wallpaper.sh index d89830e..43bcd5e 100644 --- a/scripts/rotate-wallpaper.sh +++ b/scripts/rotate-wallpaper.sh @@ -1,6 +1,30 @@ #!/usr/bin/env bash set -euo pipefail +# Parse arguments +while [[ $# -gt 0 ]]; do + case $1 in + --help|-h) + echo "Usage: $0 [OPTIONS]" + echo "" + echo "Rotate to the next wallpaper in the configured list." + echo "" + echo "This script increments the currentIndex in home/wallpapers/default.nix," + echo "cycling through available wallpapers. Rebuild your system to apply" + echo "the new wallpaper." + echo "" + echo "Options:" + echo " --help, -h Show this help message" + exit 0 + ;; + *) + echo "Unknown option: $1" + echo "Use --help for usage information" + exit 1 + ;; + esac +done + # Colors for output RED='\033[0;31m' GREEN='\033[0;32m' diff --git a/scripts/update-doomemacs.sh b/scripts/update-doomemacs.sh index c63e95f..442260e 100755 --- a/scripts/update-doomemacs.sh +++ b/scripts/update-doomemacs.sh @@ -1,6 +1,30 @@ #!/usr/bin/env bash set -euo pipefail +# Parse arguments +while [[ $# -gt 0 ]]; do + case $1 in + --help|-h) + echo "Usage: $0 [OPTIONS]" + echo "" + echo "Update Doom Emacs to the latest commit from the doomemacs repository." + echo "" + echo "This script fetches the latest commit SHA from the default branch," + echo "updates the rev and sha256 in home/roles/emacs/default.nix, and" + echo "prepares the configuration for a system rebuild." + echo "" + echo "Options:" + echo " --help, -h Show this help message" + exit 0 + ;; + *) + echo "Unknown option: $1" + echo "Use --help for usage information" + exit 1 + ;; + esac +done + # Colors for output RED='\033[0;31m' GREEN='\033[0;32m' diff --git a/scripts/upgrade.sh b/scripts/upgrade.sh index 8766206..9b15c32 100644 --- a/scripts/upgrade.sh +++ b/scripts/upgrade.sh @@ -1,6 +1,35 @@ #!/usr/bin/env bash set -euo pipefail +# Parse arguments +while [[ $# -gt 0 ]]; do + case $1 in + --help|-h) + echo "Usage: $0 [OPTIONS]" + echo "" + echo "Perform a major upgrade of the NixOS configuration." + echo "" + echo "This script runs the following steps:" + echo " 1. Update all flake inputs (nix flake update)" + echo " 2. Update Doom Emacs to the latest commit" + echo " 3. Update Claude Code to the latest version" + echo " 4. Rotate to the next wallpaper" + echo "" + echo "After completion, review changes with 'git diff' and rebuild" + echo "your system with 'sudo nixos-rebuild switch --flake .'" + echo "" + echo "Options:" + echo " --help, -h Show this help message" + exit 0 + ;; + *) + echo "Unknown option: $1" + echo "Use --help for usage information" + exit 1 + ;; + esac +done + # Colors for output RED='\033[0;31m' GREEN='\033[0;32m' -- 2.49.1