Skip to content

workstation-v0: add GNOME extension/dock validation helper#131

Open
Copilot wants to merge 2 commits intomainfrom
copilot/add-gnome-dock-validation-helper
Open

workstation-v0: add GNOME extension/dock validation helper#131
Copilot wants to merge 2 commits intomainfrom
copilot/add-gnome-dock-validation-helper

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 2, 2026

CI and doctor had no lightweight way to reason about the Dash-to-Dock / AppIndicator extension lane without a live GNOME session.

Changes

  • gnome/check-gnome-extensions.sh — new standalone helper emitting key=value status for the extension/dock lane; degrades gracefully when gnome-extensions or gsettings are absent
gnome_detected=no
gnome_extensions_cli=missing
gsettings=present
dash_to_dock=unknown        # enabled | present | missing | unknown
appindicator=unknown
favorite_apps=unknown
dock_position=unknown
dock_autohide=unknown
dock_intellihide=unknown
  • .github/workflows/workstation-gnome-ext.yml — focused CI smoke: bash -n syntax check, all-keys-present assertion in a non-GNOME env, and three stub scenarios exercising enabled / present / missing extension states

  • tests/workstation-gnome-ext-contract.nix — Nix static contract: file existence, bash -n, key/UUID grep, runtime key-presence check in a headless sandbox

  • gnome/README.md — documents the helper, key table, value semantics, and known gaps (schema absent → unknown)

- Add gnome/check-gnome-extensions.sh emitting key=value status for
  gnome_detected, gnome_extensions_cli, gsettings, dash_to_dock,
  appindicator, favorite_apps, dock_position, dock_autohide,
  dock_intellihide. Degrades gracefully outside a GNOME session.
- Add .github/workflows/workstation-gnome-ext.yml with focused CI smoke:
  syntax check, key-presence assertions, and stub-based extension state
  tests (enabled / present-but-not-enabled / missing).
- Add tests/workstation-gnome-ext-contract.nix: static Nix contract
  covering file existence, bash -n, key/UUID grep, and runtime key
  presence.
- Update gnome/README.md with helper documentation and key table.

Agent-Logs-Url: https://github.com/SociOS-Linux/source-os/sessions/4cdc1910-e33b-47d2-a594-c5ac40f5204a

Co-authored-by: mdheller <21163552+mdheller@users.noreply.github.com>
Copilot AI changed the title [WIP] Add GNOME dock and extension validation helper workstation-v0: add GNOME extension/dock validation helper May 2, 2026
Copilot AI requested a review from mdheller May 2, 2026 18:58
@mdheller mdheller marked this pull request as ready for review May 3, 2026 01:54
Copy link
Copy Markdown
Member

mdheller commented May 5, 2026

Replay review:

This PR contains useful GNOME dock/extension validation work, but it is non-mergeable against current main; do not merge stale history.

Preserve the useful content:

  • check-gnome-extensions.sh as a headless-safe key=value status helper;
  • CI smoke coverage for enabled / present / missing extension states;
  • Nix/static contract coverage for required keys and extension UUIDs;
  • README documentation for value semantics and known gaps.

Recommended action: replay this helper into the fresh workstation acceptance cleanup branch, then wire it into the aggregate polish helper using the better #146 pattern. Close this PR as superseded after the fresh replay PR opens.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

workstation-v0: add GNOME dock and extension validation helper

2 participants