v0.1.7 — fix AMD Steam bootstrap, drop redundant deps
Steam was failing to bootstrap on AMD systems during install. The homegrown `setsid gtk-launch steam` path silently no-op'd when `gtk-launch` wasn't available (gtk3 isn't a hard dep of `steam` or any AMD-specific package, so leaner AMD setups never had it; NVIDIA systems usually pulled it in via nvidia-settings). Now delegates to `omarchy-install-gaming-steam`, which is the canonical install + bootstrap path on Omarchy and is exercised on AMD/Intel/NVIDIA by the upstream Omarchy tests. It's idempotent — `omarchy-pkg-add steam` no-ops if Steam is already present. Cleanup pass on dep lists now that the bootstrap is delegated: - core_deps: drop `steam` (installed by omarchy-install-gaming-steam) and `mesa-utils` (glxinfo/glxgears never called by the script). - gpu_deps: drop `lib32-nvidia-utils`, `lib32-nvidia-580xx-utils`, `lib32-vulkan-radeon`, `lib32-vulkan-intel` — all now installed by `omarchy-install-gaming-gpu-lib32` (called by omarchy-install-gaming-steam). - optional_deps: drop `xf86-video-amdgpu` — X11 DDX driver, useless under Hyprland (Wayland-only). - setup_requirements: drop `steam` from required_packages (same reason as core_deps). 64-bit GPU drivers (`vulkan-radeon`, `vulkan-intel`, `nvidia-utils`, etc.) kept because `omarchy-install-gaming-gpu-lib32` only handles the lib32 side. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e54f45723f
commit
ba86b8c777
1 changed files with 11 additions and 18 deletions
29
deckshift.sh
29
deckshift.sh
|
|
@ -34,7 +34,7 @@ set -Euo pipefail
|
||||||
# -u: Treat unset variables as errors (catches typos in variable names)
|
# -u: Treat unset variables as errors (catches typos in variable names)
|
||||||
# -o pipefail: A pipeline fails if ANY command in it fails, not just the last one
|
# -o pipefail: A pipeline fails if ANY command in it fails, not just the last one
|
||||||
|
|
||||||
DECKSHIFT_VERSION="0.1.6"
|
DECKSHIFT_VERSION="0.1.7"
|
||||||
|
|
||||||
# Resolve the directory this script lives in so we can find sibling files like
|
# Resolve the directory this script lives in so we can find sibling files like
|
||||||
# bin/deckshift-settings and applications/deckshift-settings.desktop when
|
# bin/deckshift-settings and applications/deckshift-settings.desktop when
|
||||||
|
|
@ -493,12 +493,10 @@ check_steam_dependencies() {
|
||||||
local -a optional_deps=()
|
local -a optional_deps=()
|
||||||
|
|
||||||
local -a core_deps=(
|
local -a core_deps=(
|
||||||
"steam"
|
|
||||||
"lib32-vulkan-icd-loader"
|
"lib32-vulkan-icd-loader"
|
||||||
"vulkan-icd-loader"
|
"vulkan-icd-loader"
|
||||||
"lib32-mesa"
|
"lib32-mesa"
|
||||||
"mesa"
|
"mesa"
|
||||||
"mesa-utils"
|
|
||||||
"lib32-glibc"
|
"lib32-glibc"
|
||||||
"lib32-gcc-libs"
|
"lib32-gcc-libs"
|
||||||
"lib32-libx11"
|
"lib32-libx11"
|
||||||
|
|
@ -547,7 +545,6 @@ check_steam_dependencies() {
|
||||||
info "NVIDIA driver branch: modern (nvidia-utils)"
|
info "NVIDIA driver branch: modern (nvidia-utils)"
|
||||||
gpu_deps+=(
|
gpu_deps+=(
|
||||||
"nvidia-utils"
|
"nvidia-utils"
|
||||||
"lib32-nvidia-utils"
|
|
||||||
"nvidia-settings"
|
"nvidia-settings"
|
||||||
"libva-nvidia-driver"
|
"libva-nvidia-driver"
|
||||||
)
|
)
|
||||||
|
|
@ -559,7 +556,6 @@ check_steam_dependencies() {
|
||||||
info "NVIDIA driver branch: legacy 580xx (Maxwell/Pascal/Volta)"
|
info "NVIDIA driver branch: legacy 580xx (Maxwell/Pascal/Volta)"
|
||||||
gpu_deps+=(
|
gpu_deps+=(
|
||||||
"nvidia-580xx-utils"
|
"nvidia-580xx-utils"
|
||||||
"lib32-nvidia-580xx-utils"
|
|
||||||
"nvidia-settings"
|
"nvidia-settings"
|
||||||
"libva-nvidia-driver"
|
"libva-nvidia-driver"
|
||||||
)
|
)
|
||||||
|
|
@ -571,7 +567,6 @@ check_steam_dependencies() {
|
||||||
info "NVIDIA detected but driver branch unrecognised; defaulting to modern (nvidia-utils)"
|
info "NVIDIA detected but driver branch unrecognised; defaulting to modern (nvidia-utils)"
|
||||||
gpu_deps+=(
|
gpu_deps+=(
|
||||||
"nvidia-utils"
|
"nvidia-utils"
|
||||||
"lib32-nvidia-utils"
|
|
||||||
"nvidia-settings"
|
"nvidia-settings"
|
||||||
"libva-nvidia-driver"
|
"libva-nvidia-driver"
|
||||||
)
|
)
|
||||||
|
|
@ -581,17 +576,14 @@ check_steam_dependencies() {
|
||||||
if $has_amd; then
|
if $has_amd; then
|
||||||
gpu_deps+=(
|
gpu_deps+=(
|
||||||
"vulkan-radeon"
|
"vulkan-radeon"
|
||||||
"lib32-vulkan-radeon"
|
|
||||||
"libvdpau"
|
"libvdpau"
|
||||||
"lib32-libvdpau"
|
"lib32-libvdpau"
|
||||||
)
|
)
|
||||||
! check_package "xf86-video-amdgpu" && optional_deps+=("xf86-video-amdgpu")
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if $has_intel; then
|
if $has_intel; then
|
||||||
gpu_deps+=(
|
gpu_deps+=(
|
||||||
"vulkan-intel"
|
"vulkan-intel"
|
||||||
"lib32-vulkan-intel"
|
|
||||||
"intel-media-driver"
|
"intel-media-driver"
|
||||||
)
|
)
|
||||||
fi
|
fi
|
||||||
|
|
@ -778,14 +770,15 @@ check_steam_dependencies() {
|
||||||
|
|
||||||
check_steam_config
|
check_steam_config
|
||||||
|
|
||||||
# Bootstrap Steam — launches it in the background so its first-run client
|
# Bootstrap Steam via Omarchy's installer — idempotent and the canonical
|
||||||
# update happens in parallel with the rest of the install. Same pattern as
|
# path on AMD/Intel/NVIDIA. Handles lib32 GPU drivers + setsid gtk-launch
|
||||||
# omarchy-install-gaming-steam. Skipped silently if Steam isn't installed
|
# in one shot; previous homegrown gtk-launch call silently no-op'd on
|
||||||
# (e.g. user declined to install missing required deps).
|
# AMD systems that lacked gtk3.
|
||||||
if check_package steam && command -v gtk-launch >/dev/null 2>&1; then
|
if command -v omarchy-install-gaming-steam >/dev/null 2>&1; then
|
||||||
info "Launching Steam to complete its first-run download..."
|
info "Bootstrapping Steam via omarchy-install-gaming-steam..."
|
||||||
setsid gtk-launch steam >/dev/null 2>&1 < /dev/null &
|
omarchy-install-gaming-steam || warn "omarchy-install-gaming-steam returned non-zero"
|
||||||
disown 2>/dev/null || true
|
else
|
||||||
|
warn "omarchy-install-gaming-steam not found — skipping Steam bootstrap"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1144,7 +1137,7 @@ restart_elephant_walker() {
|
||||||
# After installing packages, it also runs the sub-setup functions for
|
# After installing packages, it also runs the sub-setup functions for
|
||||||
# performance permissions, shader cache, and gamescope capabilities.
|
# performance permissions, shader cache, and gamescope capabilities.
|
||||||
setup_requirements() {
|
setup_requirements() {
|
||||||
local -a required_packages=("steam" "gamescope" "mangohud" "python" "python-evdev" "libcap" "gamemode" "curl" "pciutils" "ntfs-3g" "xcb-util-cursor")
|
local -a required_packages=("gamescope" "mangohud" "python" "python-evdev" "libcap" "gamemode" "curl" "pciutils" "ntfs-3g" "xcb-util-cursor")
|
||||||
local -a packages_to_install=()
|
local -a packages_to_install=()
|
||||||
for pkg in "${required_packages[@]}"; do
|
for pkg in "${required_packages[@]}"; do
|
||||||
check_package "$pkg" || packages_to_install+=("$pkg")
|
check_package "$pkg" || packages_to_install+=("$pkg")
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue