githubEdit

linuxArch / Derivatives

1. Updates:

Begin by updating your system:

sudo pacman -Syu
circle-info

Some updates require manual intervention, so please check the Arch News pagearrow-up-right to stay up to date.

2. Pacman Configuration:

chevron-rightMultilib:hashtag

By default on vanilla Arch, the multilib repository is disabled, and you will need to manually enable it in order to install Wine and other 32-bit software.

On Arch derivatives like EndeavourOS and CachyOS, the repository is enabled by default, so no additional steps are required. However, if your distro disables it by default, follow the steps below to enable it.

Edit the /etc/pacman.conf file and uncomment the following lines to enable it

#[multilib]
#Include = /etc/pacman.d/mirrorlist
chevron-rightMirrors:hashtag

You should also update the mirror list to use the fastest servers closest to you. This isn’t mandatory, but doing so can make updates and downloads via pacman faster.

First, back up your current mirror list so you can restore it in case something goes wrong:

sudo cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.bak

To restore the mirror list, run the following command. You must have saved a backup in order to restore it.

sudo cp /etc/pacman.d/mirrorlist.bak /etc/pacman.d/mirrorlist

Now edit the pacman.conf file and increase the number of parallel downloads to a higher value, such as 10. You can set it even higher if you have a fast internet connection, but 10 is a good sweet spot for most people. You may increase or decrease it if needed.

sudo nano /etc/pacman.conf

Now edit the following line and set it to your desired value.

ParallelDownloads = 5

Now install reflector and run it with the following parameters:

sudo pacman -S reflector
sudo reflector --verbose --latest 10 --protocol https --sort rate --save /etc/pacman.d/mirrorlist

This will sort the fastest 10 servers and save them to your mirror list.

chevron-rightPacman Progress Bar:hashtag

This replaces the default progress bar in Arch with a Pacman-themed progress bar.

This will change the progreess bar from this:

[######################---------]

To this:
[-----------c o  o  o  ]

Edit the pacman.conf file, uncomment the Color line, and add ILoveCandy below it.

Color
ILoveCandy

3. Drivers:

If you're using an NVIDIA GPU, you’ll need to install the required drivers manually. AMD users can skip this, as the Mesa drivers are included in the kernel and work out of the box. However, if you want to install all the 32-bit libraries and Vulkan support, follow the instructions below. The same applies to Intel GPUs.

Unlike Windows, most drivers are already included in the Linux kernel and the rest of the drivers is usually included in the linux-firmware package. You usually don’t need to install them manually.

Nvidia:

The NVIDIA proprietary driver has been removed from the repositories and replaced by the newer nvidia-open driver. For GPUs newer than Pascal, you should install the nvidia-open driver. nvidia-open does not support the GTX 10series (Pascal) or older cards.

For Turing and newer GPUs, the nvidia-open driver functions largely the same as the older proprietary driver.

If your GPU isn’t listed (Pascal and older, or Quadro/Studio cards), please refer to the Arch Wiki page for NVIDIA driversarrow-up-right to determine which driver version is supported for your GPU.

circle-info

The earliest TUF models came with 10XX series GPUs, and those laptops are now quite old. Most of them are likely no longer in use, so they are excluded from this guide. However, the steps to install the drivers can still be found in the Arch Wiki linked above.

You can compare your gpu architecture in the chart below:

GPU Generation

Architecture

RTX 50 Series Laptop GPU

Blackwell

RTX 40 Series Laptop GPU

Ada Lovelace

RTX 30 Series Laptop GPU

Ampere

RTX 20 Series Laptop GPU

Turing

GTX 16 Series

Turing

GTX 10 Series

Pascal

circle-exclamation

Assuming the system is up to date, begin by checking whether your NVIDIA GPU is detected and visible to the system:

If it doesn’t show, try switching to Hybrid GPU mode using supergfxctl and run the command again.

chevron-rightArch:hashtag

Begin by checking which kernel is installed by running:

Now, depending on the kernel you are using, you may need to install a specific variant of the NVIDIA driver. For the default (linux) and LTS (linux-lts) kernels, you can choose between the non-DKMS and DKMS packages. Functionally, both provide the same NVIDIA driver and features.

The main difference is how kernel compatibility is handled. The non-DKMS package (for example nvidia-open) is built specifically for a particular kernel version and must be updated whenever that kernel is updated. In contrast, the DKMS variant builds the kernel module automatically for any installed kernel, including future updates, as long as the kernel headers are present.

For other kernels such as linux-zen or linux-hardened, the DKMS package is required, as prebuilt non-DKMS modules are not provided for those kernels.

For Linux:

For Linux-lts:

For other kernels:

You must install the headers package for your specific kernel before installing the DKMS drivers. The package name varies depending on the kernel. For example, for the Zen kernel it is called linux-zen-headers, and for the Hardened kernel it is called linux-hardened-headers.

chevron-rightEndeavourOS/CachyOS:hashtag

CachyOS:

The drivers should already be installed by default, and no additional steps are required.

You can verify if they are installed and running with:

EndeavourOS:

Install nvidia-inst using yay, then run it. It should automatically detect your GPU and install all required drivers, with no additional steps needed.

circle-info

After installation, wait for the initramfs to be regenerated.

Finally, after installation, verify if the driver is installed and working by running nvidia-smi.

AMD:

The drivers for AMD are usually installed out of the box since they’re part of the Linux kernel. If you want to make sure you have everything, including the 32-bit libraries and Vulkan, simply run the command below.

Intel:

The drivers for Intel are usually installed out of the box since they’re part of the Linux kernel. If you want to make sure you have everything, including the 32-bit libraries and Vulkan, simply run the command below.

4. AUR:

One of the most prominent and enticing features of Arch Linux is the Arch User Repository (AUR). The AUR is a community-driven repository that provides package descriptions (PKGBUILDs). These allow you to compile software from source using makepkg and then install it with pacman.

An AUR helper is recommended for installing packages from the AUR, as it simplifies the process. You can install packages without an AUR helper, but using one makes it much easier. Distros like EndeavourOS and other Arch-based distros usually include an AUR helper by default, but on vanilla Arch Linux, you need to install it yourself.

circle-info

Arch Derivatives usually ship with an AUR helper by default, so make sure to check your distro’s wiki to confirm that it includes one.

Yay works well for most cases, but there are other helpers like Paru and Pikaur. If you’re not sure which to choose, just use Yay.

Yay (Yet Another Yogurt):

triangle-exclamation

5. Asus Software:

There are currently two ways to get asusctl and supergfxctl. You can either add the g14 repositoryarrow-up-right by following the instructions provided by the asus-linux teamarrow-up-right, which allows you to install these tools along with other software like a custom kernel, or you can simply use the AUR. I highly recommend following the instructions from the asus-linux site, but the choice is yours.

Since all the repository instructions are already covered by the asus-linux team, I’ll focus on installation via the AUR instead.

circle-info

If you decide to use the AUR, you will need to compile everything from source. Compiling asusctl and supergfxctl won’t take long, but if you choose to use the custom G14 kernel from the AUR, it will take a significantly longer time to complete.

Installation:

Enable GPU switching daemon:

circle-info

After installation, you may see the following message in rog-control-center "Asus kernel isn’t loaded." You will get this warning if you don’t use the custom kernel. You can choose not to use the custom kernel, and the app will still function normally for all other features, but you won’t have access to power limits.

GUI:

rog-control-center Center is the GUI for asusctl. You can also use asusctl without the GUI if you prefer. The same applies to supergfxctl , it’s a terminal only tool by default, but you can install the GNOME extension or KDE applet to get a graphical interface.

GNOME: Install the supergfxctl-gex extension.

KDE:

Log out and log back in for the applet to appear on the taskbar.

Switch to Hybrid mode:

circle-info

Changing to/from Hybrid mode requires logout. Ultimate mode requires a reboot.

Hotkeys:

circle-info

Some hotkeys are handled by the BIOS directly and can’t be remapped. Test by creating a shortcut and see if it registers.

chevron-rightGNOMEhashtag

Go the following: Settings > Keyboard > View and Customize Shortcuts > Custom Shortcuts

Then, click Add a Shortcut.

Next, enter the command in the Command field. For the shortcut, click Set Shortcut and press the hotkey you want to assign. After that, give your shortcut a name, and finally, click Add. The shortcut should now work normally.

chevron-rightKDEhashtag

Go to Settings > Keyboard > Shortcuts and click Add New (Command or Script).

Enter the command and assign a name for the hotkey.

Locate the command you just added in the Command section, then click Add under Custom Shortcuts.

Assign the key combination you want, then click Apply.

Commands:

  • Open Armoury Crate: rog-control-center

  • Toggle Aura lighting: asusctl aura -n

  • Change performance profile: asusctl profile -n

Last updated