Automatic fallback to Alacritty for legacy GPUs when install Omarchy
Description:
Closes https://github.com/basecamp/omarchy/issues/3581
Context
Ghostty requires modern GPU acceleration (OpenGL/Vulkan) which is often unstable or missing on legacy hardware, specifically pre-GCN AMD GPUs using the radeon kernel driver. On these systems, Ghostty may crash immediately, rendering the system difficult to use post-install.
https://github.com/user-attachments/assets/dcf2f804-d903-4cfb-9d4e-a44e88470800
Changes
This PR implements an automatic detection and fallback mechanism:
Detection:
Added bin/omarchy-detect-legacy-gpu which checks for the presence of the radeon driver in /sys/class/drm. This script is designed to be extensible for other legacy drivers in the future.
Fallback:
Added install/config/hardware/legacy-gpu-terminal.sh which runs during installation. If legacy hardware is detected, it calls omarchy-install-terminal alacritty to set Alacritty as the default terminal.
Package:
Added alacritty to install/omarchy-base.packages to ensure the fallback terminal is always available.
Hook:
Wired up the new configuration script in install/config/all.sh
Verification
- Verified that the fallback script correctly returns legacy driver name (radeon in this case):
- Verified that the fallback script works with modern GPU (in Arch linux):
Because of I do not have not legacy laptop, it worth to run this script on modern machine to check:
for d in /sys/class/drm/card*/device/driver; do basename $(readlink -f $d); done