Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion bin/omarchy-install-gaming-lutris
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,16 @@
set -e

echo "Installing Lutris..."
omarchy-pkg-add lutris umu-launcher wine-staging wine-mono wine-gecko winetricks python-protobuf

# wine-staging conflicts with wine. If wine is already installed, keep it
# and still install Lutris plus the rest of the stack. Replacing wine is a
# decision for the person at the machine, not a silent --noconfirm swap.
wine_pkg=wine-staging
if pacman -Qq wine >/dev/null 2>&1 && ! pacman -Qq wine-staging >/dev/null 2>&1; then
wine_pkg=wine
fi

omarchy-pkg-add lutris umu-launcher "$wine_pkg" wine-mono wine-gecko winetricks python-protobuf
omarchy-install-gaming-gpu-lib32

# Lutris ships with `#!/usr/bin/env python3`, which resolves to mise's Python and
Expand Down
18 changes: 18 additions & 0 deletions test/shell.d/lutris-wine-conflict-test.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#!/bin/bash

set -euo pipefail

source "$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)/base-test.sh"

install_script="$ROOT/bin/omarchy-install-gaming-lutris"

grep -F 'wine-staging' "$install_script" >/dev/null ||
fail "Lutris installer still prefers wine-staging when wine is not already installed"

grep -F 'pacman -Qq wine' "$install_script" >/dev/null ||
fail "Lutris installer does not detect an existing wine package before adding wine-staging"

grep -F 'wine_pkg=wine' "$install_script" >/dev/null ||
fail "Lutris installer does not keep existing wine instead of conflicting with wine-staging"

pass "Lutris installer keeps existing wine instead of conflicting with wine-staging"