Small fix to refresh-tags, update-hyprland scripts (#232)

* Testing build from debian packages

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	new file:   BUILD_METHOD_OPTIONS.md
	new file:   CHANGES_SUMMARY.md
	new file:   GIT_STATUS.md
	new file:   INSTALL_METHOD_GUIDE.md
	new file:   QUICK_START.txt
	modified:   install.sh

* Fix package installation: skip plugins and debug symbols by default, improve dependency handling

* Add comprehensive troubleshooting guide for package installation issues

* Fix package installation path handling: use full paths instead of cd to preserve working directory

* Removed files related to debian pacakge building

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	deleted:    BUILD_METHOD_OPTIONS.md
	deleted:    GIT_STATUS.md
	deleted:    INSTALL_METHOD_GUIDE.md
	deleted:    PACKAGE_INSTALL_TROUBLESHOOTING.md
	deleted:    QUICK_START.txt

* Ported ubuntu quickshell install script to debian

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	new file:   install-scripts/quickshell.sh

* Forgot to add quickshell as install option

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install.sh

* Added missing depdendencies to debian quickshell

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/quickshell.sh

* Fixing QML import pathing

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/quickshell.sh

* Adding shim for missing QML properies

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/quickshell.sh

* Added check for debian trixie in quickshell install

 Trixe doesn't support overview seems like the QT libs are too old

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/quickshell.sh

* Fixed typo in script

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   refresh-hypr-tags.sh

* libmuparser-dev is now needed

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/00-dependencies.sh
	modified:   install-scripts/hyprland.sh

* Adding hyprwire depdency

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   hypr-tags.env
	new file:   install-scripts/hyprwire.sh
	modified:   install.sh
	modified:   refresh-hypr-tags.sh
	modified:   update-hyprland.sh

* Updating hyprwire build order

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/hyprland.sh

* Fixing script permissions

* fixing hyprwire build error

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   hyprwire.sh

* Still fixing hyprwire build errors

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   hyprwire.sh

* Fixing SED error.  (I Hate sed)

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   hyprwire.sh

* Still getting append errors trying another fix

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   hyprwire.sh

* Updated tags for 0.53.0

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   ../hypr-tags.env
	modified:   hyprland.sh

* Fixing build error on hyprland

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   hyprland.sh

* Still getting build errors with hyprland

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/hyprland.sh

* More build errors to fix

 On branch development
 Your branch is ahead of 'origin/development' by 1 commit.
   (use "git push" to publish your local commits)

 Changes to be committed:
	modified:   install-scripts/hyprland.sh

* Fixind SED error

* Hyprland tag set to 52.2

* Scripts has hardcoded versions vs. pulling hypr-env

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/aquamarine.sh
	modified:   install-scripts/hyprcursor.sh
	modified:   install-scripts/hyprgraphics.sh
	modified:   install-scripts/hyprland-guiutils.sh
	modified:   install-scripts/hyprland-protocols.sh
	modified:   install-scripts/hyprland-qt-support.sh
	modified:   install-scripts/hyprland.sh
	modified:   install-scripts/hyprlang.sh
	modified:   install-scripts/hyprtoolkit.sh
	modified:   install-scripts/hyprutils.sh
	modified:   install-scripts/hyprwayland-scanner.sh
	modified:   install-scripts/hyprwire.sh
	modified:   install-scripts/wayland-protocols-src.sh

* Fixing update-hyprland to support tags

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/hyprutils.sh
	modified:   update-hyprland.sh

* Fixing update-hyprland (again) to use env-tags

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   update-hyprland.sh

* Fixing update-hyprland

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   update-hyprland.sh

* Trying to get trixie to build

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   install-scripts/hyprland.sh

* Updated README re: NVIDIA drivers & HL 0.52.2+ on Trixie

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   README.md

* UPD: Before ubunmtu was out-of-date, now can run HL dots

previsously ubuntu was older HL. Now it's up to date and can
also run current dotfiles. Removed old statement saying ubuntu could not
run current dotfiles.

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   README.md

* Pinned version to 52.2 for debian stable support

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   CHANGELOGS.md
	deleted:    CHANGES_SUMMARY.md
	modified:   Debian-Hyprland-Install-Upgrade.es.md
	modified:   Debian-Hyprland-Install-Upgrade.md
	modified:   hypr-tags.env
	new file:   hypr-tags.env-v.053
	modified:   update-hyprland.sh

* Fixed update-hyprland refresh-hypr-tags --force-override

It now assumes --fetch-latest
Small formatting fixes
Now shows version to upgrade too and pause to allow review

 On branch development
 Your branch is up to date with 'origin/development'.

 Changes to be committed:
	modified:   CHANGELOGS.md
	modified:   Debian-Hyprland-Install-Upgrade.es.md
    modified:   Debian-Hyprland-Install-Upgrade.md
	modified:   dry-run-build.sh
	modified:   refresh-hypr-tags.sh
	modified:   update-hyprland.sh
This commit is contained in:
Donald Williams 2026-01-02 21:43:33 -05:00 committed by GitHub
parent 5026d63d6c
commit 030198fb6e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 66 additions and 5 deletions

View File

@ -9,6 +9,8 @@
- This is only for debian testing+ versions - This is only for debian testing+ versions
- `update-hyprland.sh` added `-/--help` - `update-hyprland.sh` added `-/--help`
- documentation for updating hyprland - documentation for updating hyprland
- Added: version update to `refresh-tags` and `update-hyprland` script
- Fixed: `--force-update` implies `--fetch-latest`
## 10 December 2025 ## 10 December 2025

View File

@ -134,11 +134,16 @@ done
# Summary # Summary
{ {
echo "\nSummary (dry-run):" printf "\nSummary (dry-run):\n"
for mod in "${MODULES[@]}"; do for mod in "${MODULES[@]}"; do
printf "%-24s %s\n" "$mod" "${RESULTS[$mod]:-SKIPPED}" printf "%-24s %s\n" "$mod" "${RESULTS[$mod]:-SKIPPED}"
done done
echo "\nLogs: individual module logs are under Install-Logs/. This summary: $SUMMARY_LOG" # Show current tag values to make changes visible during dry-runs
if [[ -f "$REPO_ROOT/hypr-tags.env" ]]; then
printf "\nCurrent versions (from %s):\n" "$REPO_ROOT/hypr-tags.env"
grep -E '^[A-Z0-9_]+=' "$REPO_ROOT/hypr-tags.env" | sort
fi
printf "\nLogs: individual module logs are under Install-Logs/. This summary: %s\n" "$SUMMARY_LOG"
} | tee -a "$SUMMARY_LOG" } | tee -a "$SUMMARY_LOG"
# Exit non-zero if any FAIL occurred # Exit non-zero if any FAIL occurred

View File

@ -60,6 +60,7 @@ done < "$TAGS_FILE"
# Fetch latest, but only update keys set to 'auto' or 'latest' unless forced # Fetch latest, but only update keys set to 'auto' or 'latest' unless forced
FORCE=${FORCE:-0} FORCE=${FORCE:-0}
changes=()
for key in "${!repos[@]}"; do for key in "${!repos[@]}"; do
repo="${repos[$key]}" repo="${repos[$key]}"
url="https://api.github.com/repos/$repo/releases/latest" url="https://api.github.com/repos/$repo/releases/latest"
@ -78,12 +79,30 @@ for key in "${!repos[@]}"; do
existing="${cur[$key]:-}" existing="${cur[$key]:-}"
if [[ $FORCE -eq 1 ]] || [[ "$existing" =~ ^(auto|latest)$ ]] || [[ -z "$existing" ]]; then if [[ $FORCE -eq 1 ]] || [[ "$existing" =~ ^(auto|latest)$ ]] || [[ -z "$existing" ]]; then
cur[$key]="$tag" cur[$key]="$tag"
if [[ "$existing" != "$tag" ]]; then
changes+=("$key: $existing -> $tag")
fi
echo "[OK] $key := $tag" | tee -a "$SUMMARY_LOG" echo "[OK] $key := $tag" | tee -a "$SUMMARY_LOG"
else else
echo "[SKIP] $key pinned ($existing), not overriding" | tee -a "$SUMMARY_LOG" echo "[SKIP] $key pinned ($existing), not overriding" | tee -a "$SUMMARY_LOG"
fi fi
done done
# Show change summary and prompt before writing (interactive only)
if [[ -t 0 && ${#changes[@]} -gt 0 ]]; then
printf "\nPlanned tag updates (refresh-hypr-tags.sh):\n" | tee -a "$SUMMARY_LOG"
printf "%s\n" "${changes[@]}" | tee -a "$SUMMARY_LOG"
printf "\nProceed with writing updated tags to %s? [Y/n]: " "$TAGS_FILE"
read -r ans || true
ans=${ans:-Y}
case "$ans" in
[nN]|[nN][oO])
echo "[INFO] User aborted tag update; leaving $TAGS_FILE unchanged." | tee -a "$SUMMARY_LOG"
exit 0
;;
esac
fi
# Write back # Write back
{ {
for k in "${!cur[@]}"; do for k in "${!cur[@]}"; do
@ -91,4 +110,4 @@ done
done | sort done | sort
} > "$TAGS_FILE" } > "$TAGS_FILE"
echo "[OK] Refreshed tags written to $TAGS_FILE" | tee -a "$SUMMARY_LOG" echo "[OK] Refreshed tags written to $TAGS_FILE" | tee -a "$SUMMARY_LOG"

View File

@ -160,6 +160,8 @@ set_tags_from_args() {
fetch_latest_tags() { fetch_latest_tags() {
ensure_tags_file ensure_tags_file
backup_tags backup_tags
CHANGES_FILE="$LOG_DIR/update-delta-$TS.log"
: >"$CHANGES_FILE"
# Require curl; jq is preferred. Fallback to grep/sed if jq is missing. # Require curl; jq is preferred. Fallback to grep/sed if jq is missing.
if ! command -v curl >/dev/null 2>&1; then if ! command -v curl >/dev/null 2>&1; then
@ -217,6 +219,8 @@ fetch_latest_tags() {
map[$k]="$v" map[$k]="$v"
done <"$TAGS_FILE" done <"$TAGS_FILE"
# Build a list of changes (old -> new) according to override rules
changes=()
for k in "${!tags[@]}"; do for k in "${!tags[@]}"; do
if [[ $FORCE_UPDATE -eq 1 ]]; then if [[ $FORCE_UPDATE -eq 1 ]]; then
# Force override regardless of current value (matches FORCE=1 behavior in refresh-hypr-tags.sh) # Force override regardless of current value (matches FORCE=1 behavior in refresh-hypr-tags.sh)
@ -229,6 +233,27 @@ fetch_latest_tags() {
fi fi
done done
# Interactive confirmation before writing, if we have a TTY
if [[ -t 0 && ${#changes[@]} -gt 0 ]]; then
printf "\nPlanned tag updates (update-hyprland.sh):\n" | tee -a "$SUMMARY_LOG"
printf "%s\n" "${changes[@]}" | tee -a "$SUMMARY_LOG" | tee -a "$CHANGES_FILE"
printf "\nProceed with writing updated tags to %s? [Y/n]: " "$TAGS_FILE"
read -r ans || true
ans=${ans:-Y}
case "$ans" in
[nN]|[nN][oO])
echo "[INFO] User aborted tag update; leaving $TAGS_FILE unchanged." | tee -a "$SUMMARY_LOG"
# restore original copy
latest_bak=$(ls -1t "$TAGS_FILE".bak-* 2>/dev/null | head -n1 || true)
[[ -n "$latest_bak" ]] && cp "$latest_bak" "$TAGS_FILE"
return 0
;;
esac
else
# non-interactive: still record changes
printf "%s\n" "${changes[@]}" >>"$CHANGES_FILE" || true
fi
{ {
for k in "${!map[@]}"; do for k in "${!map[@]}"; do
echo "$k=${map[$k]}" echo "$k=${map[$k]}"
@ -479,11 +504,21 @@ run_stack() {
done done
{ {
echo "\nSummary:" printf "\nSummary:\n"
for mod in "${modules[@]}"; do for mod in "${modules[@]}"; do
printf "%-24s %s\n" "$mod" "${results[$mod]:-SKIPPED}" printf "%-24s %s\n" "$mod" "${results[$mod]:-SKIPPED}"
done done
echo "\nLogs under: $LOG_DIR. This run: $SUMMARY_LOG" # Show updated versions (final tag values)
if [[ -f "$TAGS_FILE" ]]; then
printf "\nUpdated versions (from %s):\n" "$TAGS_FILE"
grep -E '^[A-Z0-9_]+=' "$TAGS_FILE" | sort
fi
# Include change list if present
if [[ -f "$LOG_DIR/update-delta-$TS.log" ]]; then
printf "\nChanges applied this run:\n"
cat "$LOG_DIR/update-delta-$TS.log"
fi
printf "\nLogs under: %s. This run: %s\n" "$LOG_DIR" "$SUMMARY_LOG"
} | tee -a "$SUMMARY_LOG" } | tee -a "$SUMMARY_LOG"
# Non-zero on any FAILs # Non-zero on any FAILs