Skip to content

Conversation

@w1l238
Copy link

@w1l238 w1l238 commented Dec 4, 2025

Installs mesa & xf86-video-nouveau for older NVIDIA GPUs, defaults back to nvidia-lts for modern NVIDIA GPUs.

Type of Change

  • New feature
  • Bug fix
  • Documentation update
  • Refactoring
  • Hotfix
  • Security patch
  • UI/UX improvement

Description

This pull request addresses an issue from #1129 where the Arch Server setup fails on systems with older NVIDIA GPUs (e.g., Optimus configs like GT 220M). The original script installed the 'nvidia-lts' package, which is incompatible with legacy hardware, causing the system to hang indefinitely (according to #1129).

To resolve this, I added a user prompt within the graphics drivers installation section in '~/core/tabs/system-setup/arch/server-setup.sh' that prompts the user to select the type of NVIDA GPU drivers to install.

  • When a NVIDIA GPU is detected, the script now asks the user if they are using an older model that may require 'nouveau' drivers.
  • If the user answers 'yes' (y/Y), the script installs 'mesa' and 'xf86-video-nouveau'.
  • If the user answers 'no' (the default), the script proceeds with the original behavior of installing 'nvidia-lts' for modern GPUs.

This change now enables people with older GPUs to install arch onto their machines via the 'Arch Server Setup'.

Testing

To validate the changes, I performed the following tests in a virtual machine environment:

  • Non-NVIDIA System: I ran the modified server-setup.sh script in a fresh Arch Linux VM without GPU passthrough. The script completed successfully, and the new NVIDIA-specific logic was correctly skipped as expected.
  • Modern NVIDIA Path (Simulated): While I do not have a physical legacy NVIDIA GPU for end-to-end testing of the nouveau path, the logic for the default path (installing nvidia-lts) remains the same and was verified to not be broken by the changes.

The core change is the addition of a conditional check, which has been reviewed for correctness.

Impact

  • Behavioral Change: The installation process now is interactive with this change.
  • Dependencies: No new hard dependencies are added. 'xf86-video-nouveau' is only installed if the user explicitly opts in.
  • Compatibility: This improves compatibility for a wider range of NVIDIA GPUs.

Issues / other PRs related

Additional Information

Checklist

  • My code adheres to the coding and style guidelines of the project.
  • I have performed a self-review of my own code.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have made corresponding changes to the documentation (cargo xtask docgen).
  • My changes generate no errors/warnings/merge conflicts.

Installs mesa & xf86-video-nouveau for older NVIDIA GPUs, defaults back to nvidia-lts for modern NVIDIA GPUs.
@ChrisTitusTech
Copy link
Owner

bashisms and shellcheck errors need to be cleaned up

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request]: Arch Server Install nouveau option

2 participants