Skip to content

Protect qt6-wayland from orphan cleanup - #7396

Open
mdenesfe wants to merge 2 commits into
basecamp:quattrofrom
mdenesfe:fix/7327-qt6-wayland
Open

Protect qt6-wayland from orphan cleanup#7396
mdenesfe wants to merge 2 commits into
basecamp:quattrofrom
mdenesfe:fix/7327-qt6-wayland

Conversation

@mdenesfe

Copy link
Copy Markdown

Fixes #7327.

qt6-wayland could remain dependency-marked after upgrading an existing installation to Quattro. This caused it to appear in pacman -Qdtq, allowing orphan cleanup to remove the Wayland platform plugin required by Quickshell and Qt6 applications.

This adds qt6-wayland to the upgrade's core_packages list. The existing installation and mark_packages_explicit steps now ensure the package is explicitly installed, matching fresh-install behavior.

A regression test verifies that qt6-wayland remains in the explicitly marked core package set.

Tested with:

  • bash test/shell.d/upgrade-to-quattro-test.sh
  • git diff --check

Copilot AI balanced review requested due to automatic review settings August 18, 2026 16:08

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

This PR ensures qt6-wayland is treated as a core package during the Omarchy 4 (“quattro”) upgrade so it won’t be removed during orphan cleanup.

Changes:

  • Add qt6-wayland to the upgrade script’s core_packages list.
  • Extend the shell test to assert qt6-wayland is explicitly included and that core packages are marked explicit.

Reviewed changes

Copilot reviewed 1 out of 2 changed files in this pull request and generated 2 comments.

File Description
test/shell.d/upgrade-to-quattro-test.sh Adds assertions that qt6-wayland is present in the core_packages block and that mark_packages_explicit is called.
bin/omarchy-upgrade-to-quattro Adds qt6-wayland to the core_packages array to protect it from orphan cleanup.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread test/shell.d/upgrade-to-quattro-test.sh Outdated
pass "Omarchy 4 upgrade completes package update checks"

core_packages_body=$(sed -n '/ local core_packages=(/,/ )/p' "$upgrade_to_quattro")
grep -Fx ' qt6-wayland' <<<"$core_packages_body" >/dev/null ||
Comment thread test/shell.d/upgrade-to-quattro-test.sh Outdated
Comment on lines +31 to +32
core_packages_body=$(sed -n '/ local core_packages=(/,/ )/p' "$upgrade_to_quattro")
grep -Fx ' qt6-wayland' <<<"$core_packages_body" >/dev/null ||
Copilot AI review requested due to automatic review settings August 18, 2026 16:11

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 2 changed files in this pull request and generated no new comments.

Suppressed comments (2)

test/shell.d/upgrade-to-quattro-test.sh:32

  • The test’s parsing of core_packages is fairly brittle: the sed end pattern only matches a line that is exactly ) and the grep requires qt6-wayland to be the only token on its line. This can break if the array close is formatted as ), or if an inline comment is added (e.g., qt6-wayland # needed for ...). Consider loosening the patterns (e.g., allow whitespace around ) and allow trailing comments/whitespace after qt6-wayland) so the test verifies intent without being sensitive to formatting changes.
core_packages_body=$(sed -n '/^[[:space:]]*local core_packages=(/,/^[[:space:]]*)$/p' "$upgrade_to_quattro")
printf '%s\n' "$core_packages_body" | grep -Eq '^[[:space:]]*qt6-wayland$' ||

test/shell.d/upgrade-to-quattro-test.sh:33

  • This failure message reads like an affirmative statement rather than describing the observed failure. Consider rewording to something like: “Omarchy 4 upgrade does not install qt6-wayland as an explicit core package” (or “Expected qt6-wayland in core_packages”). This makes CI failures faster to interpret.
  fail "Omarchy 4 upgrade installs qt6-wayland as an explicit core package"

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.

omarchy-upgrade-to-quattro leaves qt6-wayland dependency-marked, so the shell's Wayland platform support shows as a removable orphan

2 participants