feat(bootstrap): install vendor-matched hardware packages
This commit is contained in:
183
roles/bootstrap/vars/hardware.yml
Normal file
183
roles/bootstrap/vars/hardware.yml
Normal file
@@ -0,0 +1,183 @@
|
||||
---
|
||||
# Hardware-aware package definitions keyed by os_family. Schema:
|
||||
# cpu_microcode[intel|amd] CPU vendor microcode
|
||||
# firmware_base unconditional firmware packages
|
||||
# firmware[<vendor>] vendor-split firmware (intel|amd|nvidia|
|
||||
# atheros|broadcom|mediatek|marvell|realtek|
|
||||
# qcom|cirrus|other)
|
||||
# gpu_base mesa + vulkan loader
|
||||
# gpu[intel|amd] per-GPU userspace
|
||||
# gpu_nvidia[open|proprietary|nouveau] nvidia driver flavor
|
||||
# peripherals_base webcam/scanner stack
|
||||
# peripherals_fingerprint fprintd + libfprint
|
||||
# peripherals_displaylink evdi kernel module + DisplayLink helpers
|
||||
# Only packages matching detected hardware are installed; families without
|
||||
# vendor splits collapse to a single firmware meta package.
|
||||
bootstrap_hardware_packages:
|
||||
Archlinux:
|
||||
cpu_microcode:
|
||||
intel: [intel-ucode]
|
||||
amd: [amd-ucode]
|
||||
firmware_base: []
|
||||
firmware:
|
||||
intel: [linux-firmware-other] # iwlwifi + i915 firmware live here
|
||||
amd: [linux-firmware-amdgpu]
|
||||
nvidia: [linux-firmware-nvidia]
|
||||
atheros: [linux-firmware-atheros]
|
||||
broadcom: [linux-firmware-broadcom]
|
||||
mediatek: [linux-firmware-mediatek]
|
||||
marvell: [linux-firmware-marvell]
|
||||
realtek: [linux-firmware-realtek]
|
||||
qcom: [linux-firmware-qcom]
|
||||
cirrus: [linux-firmware-cirrus]
|
||||
other: [linux-firmware-other]
|
||||
gpu_base: [mesa, vulkan-icd-loader]
|
||||
gpu:
|
||||
intel: [vulkan-intel, intel-media-driver]
|
||||
amd: [vulkan-radeon, libva-mesa-driver]
|
||||
gpu_nvidia:
|
||||
open: [nvidia-open-dkms, nvidia-utils]
|
||||
proprietary: [nvidia-dkms, nvidia-utils]
|
||||
nouveau: [xf86-video-nouveau, vulkan-nouveau]
|
||||
peripherals_base: [v4l-utils]
|
||||
peripherals_fingerprint: [fprintd, libfprint]
|
||||
peripherals_displaylink: [] # AUR only; user must wire in AUR helper
|
||||
|
||||
Debian:
|
||||
cpu_microcode:
|
||||
intel: [intel-microcode]
|
||||
amd: [amd64-microcode]
|
||||
firmware_base: [firmware-linux-free]
|
||||
firmware:
|
||||
intel: [firmware-iwlwifi, firmware-misc-nonfree]
|
||||
amd: [firmware-amd-graphics, firmware-misc-nonfree]
|
||||
nvidia: [firmware-misc-nonfree]
|
||||
atheros: [firmware-atheros]
|
||||
broadcom: [firmware-brcm80211]
|
||||
mediatek: [firmware-misc-nonfree]
|
||||
marvell: [firmware-misc-nonfree]
|
||||
realtek: [firmware-realtek]
|
||||
qcom: [firmware-misc-nonfree]
|
||||
cirrus: [firmware-misc-nonfree]
|
||||
other: [firmware-misc-nonfree]
|
||||
gpu_base: [mesa-vulkan-drivers, libgl1-mesa-dri]
|
||||
gpu:
|
||||
intel: [intel-media-va-driver, i965-va-driver]
|
||||
amd: [libva-glx2, mesa-va-drivers]
|
||||
gpu_nvidia:
|
||||
# Debian trixie+ ships nvidia-open-kernel-dkms; older releases only have
|
||||
# the proprietary nvidia-driver. Both come from the non-free component.
|
||||
open: [nvidia-open-kernel-dkms, nvidia-driver, nvidia-vulkan-icd]
|
||||
proprietary: [nvidia-driver, nvidia-vulkan-icd]
|
||||
nouveau: [xserver-xorg-video-nouveau]
|
||||
peripherals_base: [v4l-utils]
|
||||
peripherals_fingerprint: [fprintd, libpam-fprintd]
|
||||
peripherals_displaylink: [evdi-dkms] # userspace driver still needs vendor .run
|
||||
|
||||
RedHat:
|
||||
cpu_microcode:
|
||||
intel: [microcode_ctl]
|
||||
amd: [microcode_ctl]
|
||||
firmware_base: [linux-firmware]
|
||||
firmware:
|
||||
intel: []
|
||||
amd: []
|
||||
nvidia: []
|
||||
atheros: []
|
||||
broadcom: []
|
||||
mediatek: []
|
||||
marvell: []
|
||||
realtek: []
|
||||
qcom: []
|
||||
cirrus: []
|
||||
other: []
|
||||
gpu_base: [mesa-dri-drivers, mesa-vulkan-drivers, vulkan-loader]
|
||||
gpu:
|
||||
intel: [intel-media-driver, libva-intel-driver]
|
||||
amd: [mesa-va-drivers]
|
||||
gpu_nvidia:
|
||||
# akmod packages from RPMFusion non-free; repo enabled by _hardware.yml.
|
||||
open: [akmod-nvidia-open, xorg-x11-drv-nvidia, xorg-x11-drv-nvidia-cuda]
|
||||
proprietary: [akmod-nvidia, xorg-x11-drv-nvidia, xorg-x11-drv-nvidia-cuda]
|
||||
nouveau: [xorg-x11-drv-nouveau]
|
||||
peripherals_base: [v4l-utils]
|
||||
peripherals_fingerprint: [fprintd, fprintd-pam]
|
||||
peripherals_displaylink: [evdi] # COPR-supplied; repo enablement deferred
|
||||
|
||||
Suse:
|
||||
cpu_microcode:
|
||||
intel: [ucode-intel]
|
||||
amd: [ucode-amd]
|
||||
firmware_base: [kernel-firmware-all]
|
||||
firmware: {}
|
||||
gpu_base: [Mesa, Mesa-libGL1, libvulkan1]
|
||||
gpu:
|
||||
intel: [libvulkan_intel]
|
||||
amd: [libvulkan_radeon]
|
||||
gpu_nvidia:
|
||||
# NVIDIA SUSE repo packages; repo enablement out of scope for v1.
|
||||
open: [nvidia-open-driver-G06-signed-kmp-default]
|
||||
proprietary: [x11-video-nvidiaG06]
|
||||
nouveau: [xf86-video-nouveau]
|
||||
peripherals_base: [v4l-utils]
|
||||
peripherals_fingerprint: [fprintd, libfprint-2-2]
|
||||
peripherals_displaylink: []
|
||||
|
||||
Alpine:
|
||||
cpu_microcode:
|
||||
intel: [intel-ucode]
|
||||
amd: [amd-ucode]
|
||||
firmware_base: []
|
||||
firmware:
|
||||
intel: [linux-firmware-other, linux-firmware-i915]
|
||||
amd: [linux-firmware-amdgpu]
|
||||
nvidia: [linux-firmware-nvidia]
|
||||
atheros: [linux-firmware-ath10k_pci, linux-firmware-ath11k]
|
||||
broadcom: [linux-firmware-brcm]
|
||||
mediatek: [linux-firmware-mediatek]
|
||||
marvell: [linux-firmware-mrvl]
|
||||
realtek: [linux-firmware-rtl_nic, linux-firmware-rtlwifi]
|
||||
qcom: [linux-firmware-qcom]
|
||||
cirrus: [linux-firmware-cirrus]
|
||||
other: [linux-firmware-other]
|
||||
gpu_base: [mesa, mesa-dri-gallium]
|
||||
gpu:
|
||||
intel: [mesa-vulkan-intel, intel-media-driver]
|
||||
amd: [mesa-vulkan-ati, mesa-va-gallium]
|
||||
gpu_nvidia:
|
||||
# Alpine ships only the open-kernel-modules variant in community.
|
||||
open: [nvidia-open-gpu-kernel-modules]
|
||||
proprietary: [] # not packaged on Alpine
|
||||
nouveau: [mesa-vulkan-nouveau]
|
||||
peripherals_base: [v4l-utils]
|
||||
peripherals_fingerprint: [fprintd, libfprint]
|
||||
peripherals_displaylink: []
|
||||
|
||||
Void:
|
||||
cpu_microcode:
|
||||
intel: [intel-ucode]
|
||||
amd: [linux-firmware-amd]
|
||||
firmware_base: [linux-firmware]
|
||||
firmware:
|
||||
intel: [linux-firmware-intel, linux-firmware-network]
|
||||
amd: [linux-firmware-amd]
|
||||
nvidia: [linux-firmware-nvidia]
|
||||
atheros: [linux-firmware-network]
|
||||
broadcom: [linux-firmware-broadcom]
|
||||
mediatek: [linux-firmware-network]
|
||||
marvell: [linux-firmware-network]
|
||||
realtek: [linux-firmware-network]
|
||||
qcom: [linux-firmware-network]
|
||||
cirrus: [linux-firmware]
|
||||
other: [linux-firmware]
|
||||
gpu_base: [mesa, mesa-dri]
|
||||
gpu:
|
||||
intel: [mesa-vulkan-intel, intel-video-accel]
|
||||
amd: [mesa-vulkan-radeon, mesa-vaapi]
|
||||
gpu_nvidia:
|
||||
open: [nvidia-open] # in nonfree repo
|
||||
proprietary: [nvidia] # in nonfree repo
|
||||
nouveau: [xf86-video-nouveau]
|
||||
peripherals_base: [v4l-utils]
|
||||
peripherals_fingerprint: [fprintd, libfprint]
|
||||
peripherals_displaylink: []
|
||||
Reference in New Issue
Block a user