Add migration to backfill Mesa Vulkan driver for pre-vulkan.sh installs#6090
Open
ki11e6 wants to merge 2 commits into
Open
Add migration to backfill Mesa Vulkan driver for pre-vulkan.sh installs#6090ki11e6 wants to merge 2 commits into
ki11e6 wants to merge 2 commits into
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds a migration script to backfill Mesa Vulkan ICD packages on previously installed systems so Intel/AMD/Apple GPUs have the appropriate Vulkan driver available.
Changes:
- Introduces a migration that detects GPU vendor and installs the matching Mesa Vulkan driver package(s).
- Uses an associative array mapping vendor → package and installs via
omarchy-pkg-addwhen applicable.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -0,0 +1,25 @@ | |||
| echo "Install missing Mesa Vulkan driver for Intel/AMD/Apple GPUs" | |||
Comment on lines
+9
to
+13
| declare -A VULKAN_DRIVERS=( | ||
| [Intel]=vulkan-intel | ||
| [AMD]=vulkan-radeon | ||
| [Apple]=vulkan-asahi | ||
| ) |
| @@ -0,0 +1,25 @@ | |||
| echo "Install missing Mesa Vulkan driver for Intel/AMD/Apple GPUs" | |||
Comment on lines
+17
to
+21
| for vendor in "${!VULKAN_DRIVERS[@]}"; do | ||
| if lspci | grep -iE "(VGA|Display).*$vendor" >/dev/null; then | ||
| PACKAGES+=("${VULKAN_DRIVERS[$vendor]}") | ||
| fi | ||
| done |
Author
|
Thanks for the review. Addressing the automated feedback:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds a migration that installs the Mesa Vulkan driver (
vulkan-intel/vulkan-radeon/vulkan-asahi) on systems that were set up beforeinstall/config/hardware/vulkan.shwas added (commit 694eb8c, 2026-02-20).Fixes #6089.
Why
install/scripts only run once, at initial setup.vulkan.shwas introduced as an install-time step but no migration was shipped, so it never reaches pre-existing machines. Intel/AMD systems installed before that date have no Mesa Vulkan ICD to this day.On hybrid (Optimus) laptops the impact is user-visible: NVIDIA Vulkan ships via
nvidia-utils, so the discrete GPU becomes the only Vulkan device.mpv(defaultvo=gpu-next/Vulkan) then renders on the dGPU and cross-presents to the iGPU-driven compositor, which stalls ("Application Not Responding"). Installingvulkan-intelrestored the iGPU as a Vulkan device and fixed it.How
The migration mirrors the detection in
vulkan.shand relies onomarchy-pkg-add, which is idempotent (pacman -S --needed) — so it is a no-op on systems that already have the driver (e.g. fresh installs). The migration timestamp (1780929365) is derived from the currentdevHEAD commit, peromarchy-dev-add-migrationconvention, and sorts after the latest existing migration.Testing
Verified on an affected machine (Omarchy 3.8.2, Intel UHD 630 + NVIDIA GTX 1650, installed 2026-02-18):
vulkan-intelwas absent, the dGPU was the only Vulkan device, and mpv froze. After installingvulkan-intel, both GPUs appear as Vulkan devices and mpv renders on Intel without stalling.