Keep existing wine when installing Lutris - #11364
Conversation
wine-staging conflicts with wine. If wine is already installed, keep it and still install Lutris plus the rest of the stack instead of aborting the unattended pkg add. Fixes omacom#11301
johnpippett
left a comment
There was a problem hiding this comment.
The installer keeps the existing wine package in the automatic checks. New installations still select wine-staging. The checks found no regression in these cases.
Head: 1964c3b34b60a58c1ae7a4dabd82a6e4ebcedf90
Base: 31bd80daa4613ffdee995ac27467fce5a2990806
A test harness did 16 scenarios on each revision. All 32 executions gave the specified results.
| Package state | Base result | Head result |
|---|---|---|
wine installed |
Package-conflict error; installer stops | Installer selects wine and completes |
| No Wine package installed | Installer selects wine-staging and completes |
Same |
wine-staging installed |
Installer keeps wine-staging and completes |
Same |
Complete package set with wine |
Package-conflict error | Installer completes without a package transaction |
Cases also included package errors, missing packages after a transaction, graphics-package errors, and a shebang-edit error. These errors stopped application launch.
The harness used the installer, package helpers, and graphics-package helper from each source revision. Package-manager and command stubs supplied package states and recorded external operations. The tests did not install packages or start Lutris.
Environment: Linux x86_64, Bash 5.3.15, Python 3.14.7, and bubblewrap 0.11.2. Each test process had an empty home directory and no network or desktop access. Further tests are necessary for actual dependency resolution and graphical operation.
The new test/shell.d/lutris-wine-conflict-test.sh gave the required result, but it only searches source text. Its wine_pkg=wine search also finds wine_pkg=wine-staging. A runtime test with package stubs can show the selected package and error behavior directly.
Codex agents did these tests and prepared this review.
Summary
omarchy install gaming lutrisalwaysomarchy-pkg-addswine-staging. Ifwineis already installed, pacman reports an unresolvable conflict (wine-stagingvswine) and the unattended--noconfirminstall aborts.If
wineis present andwine-stagingis not, keepwineand still install Lutris plus the rest of the stack. Fresh installs still getwine-staging. Replacing wine remains a decision for the person at the machine.Fixes #11301
Test plan
bash test/shell.d/lutris-wine-conflict-test.shwineinstalled, nowine-staging→ installer should not requestwine-staging.