Unfreeze Logi Options+ (macOS) - #50372
Conversation
Removes "frozen": true and regenerates the output manifest so test-fma-darwin-pr-only can validate logi-options+/darwin at its current upstream version. Claude-Session: https://claude.ai/code/session_01EBxhs5D65LRUwCEJejBLJH
Script Diff Resultsee/maintained-apps/outputs/logi-options+/darwin.json=== Install Script (no changes) ===
=== Uninstall // a6d04b86 -> 21351b22 ===
--- /tmp/old.5wMHdQ 2026-08-01 02:05:08.548463334 +0000
+++ /tmp/new.YlPUsU 2026-08-01 02:05:08.549463361 +0000
@@ -78,38 +78,63 @@
echo "Removing launchctl service ${service}"
- for should_sudo in "${booleans[@]}"; do
- plist_status=$(launchctl list "${service}" 2>/dev/null)
-
- if [[ $plist_status == \{* ]]; then
- if [[ $should_sudo == "true" ]]; then
- sudo launchctl remove "${service}"
- else
- launchctl remove "${service}"
- fi
- sleep 1
+ # A wildcard label can't be used with launchctl or as a plist name, so expand
+ # it to the labels of currently loaded services that match the pattern.
+ local services=("$service")
+ if [[ "$service" == *"*"* ]]; then
+ local regex
+ # Escape regex metacharacters, turn '*' into '.*', and anchor the pattern so
+ # it matches a full label rather than a substring.
+ regex=$(printf '%s' "$service" | sed -e 's/[][(){}.^$+?|\\]/\\&/g' -e 's/\*/.*/g')
+ regex="^${regex}$"
+ services=()
+ local id
+ # Match every loaded job by label regardless of PID; launchctl list reports
+ # loaded-but-not-running jobs with a "-" in the PID column.
+ while read -r _ _ id; do
+ [[ "$id" =~ $regex ]] && services+=("$id")
+ done < <(launchctl list 2>/dev/null | tail -n +2)
+ if [[ ${#services[@]} -eq 0 ]]; then
+ echo "No loaded launchctl service matches ${service}"
+ return
fi
+ fi
- paths=(
- "/Library/LaunchAgents/${service}.plist"
- "/Library/LaunchDaemons/${service}.plist"
- )
-
- # if not using sudo, prepend the home directory to the paths
- if [[ $should_sudo == "false" ]]; then
- for i in "${!paths[@]}"; do
- paths[i]="${HOME}${paths[i]}"
- done
- fi
+ local service_label
+ for service_label in "${services[@]}"; do
+ for should_sudo in "${booleans[@]}"; do
+ plist_status=$(launchctl list "${service_label}" 2>/dev/null)
- for path in "${paths[@]}"; do
- if [[ -e "$path" ]]; then
+ if [[ $plist_status == \{* ]]; then
if [[ $should_sudo == "true" ]]; then
- sudo rm -f -- "$path"
+ sudo launchctl remove "${service_label}"
else
- rm -f -- "$path"
+ launchctl remove "${service_label}"
fi
+ sleep 1
fi
+
+ paths=(
+ "/Library/LaunchAgents/${service_label}.plist"
+ "/Library/LaunchDaemons/${service_label}.plist"
+ )
+
+ # if not using sudo, prepend the home directory to the paths
+ if [[ $should_sudo == "false" ]]; then
+ for i in "${!paths[@]}"; do
+ paths[i]="${HOME}${paths[i]}"
+ done
+ fi
+
+ for path in "${paths[@]}"; do
+ if [[ -e "$path" ]]; then
+ if [[ $should_sudo == "true" ]]; then
+ sudo rm -f -- "$path"
+ else
+ rm -f -- "$path"
+ fi
+ fi
+ done
done
done
} |
There was a problem hiding this comment.
Pull request overview
Updates the Fleet-maintained app (FMA) metadata for Logi Options+ (macOS) by unfreezing the Homebrew input and regenerating the corresponding output manifest so validation can run against the current upstream release.
Changes:
- Unfreezes the
logi-options+/darwininput by removing"frozen": true. - Regenerates the macOS output manifest to bump the app version and update the “patched” query threshold.
- Updates the output manifest’s
uninstall_script_refto the latest generated script reference.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| ee/maintained-apps/outputs/logi-options+/darwin.json | Regenerated output manifest: version bump, updated patched query, and updated uninstall script ref. |
| ee/maintained-apps/inputs/homebrew/logi-options+.json | Removes the frozen flag so automated validation/updates can proceed. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
WalkthroughThe PR removes the frozen status from the Logi Options+ Homebrew configuration. It updates the macOS app version and patched-version query from Possibly related PRs
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Automated unfreeze probe. Removes
"frozen": trueand regenerates the output manifest sotest-fma-darwin-pr-onlycan validatelogi-options+/darwinat its current upstream version.Frozen since: 2026-04-03 (#42984, automated FMA update run)
Version: 2.4.903778 -> 2.5.926888
Note: the regenerated manifest also picks up a newer
uninstall_script_ref, because the frozenoutput missed the script-template updates that landed on main while it was pinned.
Draft until validation reports. Merge only if the FMA checks are green and the validate shard
actually ran for this slug.
Related issue: NA
Checklist for submitter
Generated by Claude Code
Summary by CodeRabbit