updated Arch Installation Guides

This commit is contained in:
Houtworm 2025-05-05 03:40:57 +02:00
parent 21727df7fb
commit 16627bf31e

View File

@ -120,9 +120,6 @@ to force an action like `q` and `w` add `!` to your command like this `:q!` or `
You can also combine actions like so `:wq!`
to execute a terminal command type `:! command` and press enter
## Next
Congratulations, You already know more about Linux and Vim than the average person lets move on to the preparation
# Preparation
## Creating the Bootable USB
@ -365,7 +362,7 @@ Then enable swap on partition 3
swapon /dev/nvme0n1p3
## Full Disk Encryption (Optional)
Encryption is completely optional, If you don't want it, just skip this step completely.
**Encryption is completely optional, If you don't want it, just skip this step completely.**
Many things can go wrong, and if you forget your password the data is lost, Nothing you can do to recover it. Use it at your own risk.
@ -535,7 +532,7 @@ You can use the tab key for the spaces to make it lign up properly
Hit esc then :wq and enter to save and quit
# Set the root password
## Set the root password
now we have to set a root password
The root user is like the superuser or administrator account, You will need this password to update your system or change anything outside your personal home folder.
@ -544,7 +541,7 @@ run the following command then type your new password, hit enter, then again to
passwd
# Configure Pacman
## Configure Pacman
Pacman is the PACkage MANager of Arch Linux, It is great, but we can make it even better :)
First we are going to open the pacman.conf file to make some adjustments
@ -582,7 +579,7 @@ then just run reflector with the following command
You will see a bunch of errors but that is normal, just let it run and wait untill the prompt shows up again.
# Install Microcode (Optional) PROPRIETARY
## Install Microcode (Optional) PROPRIETARY
Now we are going to install the microcode, this is PROPRIETARY but it will improve stability, choose the right one for your CPU, you can install none if you are in doubt or don't want any non free software on your machine.
AMD
@ -593,7 +590,7 @@ Intel
pacman -S intel-ucode
# install and configure grub
## install and configure grub
grub stands for GRand Unified Bootloader just so you know.
Now we are going to install grub, only do UEFI or BIOS depending on your system
@ -613,7 +610,7 @@ BIOS
grub-mkconfig -o /boot/grub/grub.cfg
# Full Disk Encryption (Optional)
## Full Disk Encryption (Optional)
if you did the first Encryption part you can NOT skip this step
If you did not go for disk encryption after formatting the disks you MUST skip this step
@ -662,7 +659,7 @@ finally run the following command to generate the new image
mkinitcpio -p linux
# Creating the user
## Creating the user
Now it is time to create a user account, This is where you log into, It can do almost everything except install software or change things outside of your personal folder.
you need to remember your username and you can not have capital letters in your username
@ -675,7 +672,7 @@ Set a password for the user, You will log into the device with this password, Yo
enter a new password and press enter twice
# install and configure sudo
## install and configure sudo
Sudo allows you to do root stuff while logged in as a user, It will probably become your most used command so install it.
pacman -S sudo
@ -701,7 +698,7 @@ Hit esc then :wq and Enter to save and quit
# DE Installation
# Installing GNOME
## Installing GNOME
First we are going to install bare GNOME with its desktop manager, networkmanager and a terminal, because we won't get anywhere without it :P
pacman -S gnome-desktop gdm gnome-control-center gnome-keyring gnome-themes-extra networkmanager alacritty
@ -714,7 +711,7 @@ Now we need to enable the needed services for loading the Desktop Manager and Ne
systemctl enable NetworkManager
# Reboot into Desktop Environment
## Reboot into Desktop Environment
Run the following command to escape from the chroot
exit
@ -727,7 +724,7 @@ Remove the USB when your screen turns black and it should boot into gdm, here yo
If you use wifi, but you can't see the card, go back in with the USB again and install linux-firmware.
# Installing basic GNOME programs (Optional)
## Installing basic GNOME programs (Optional)
All of these are optional, and if you plan to use another program for it then don't install it, If you are unsure I would recommend installing them all.
Who doesn't need a calculator?
@ -786,7 +783,7 @@ Something to view the weather?
pacman -S gnome-weather
# Installing a nice icon theme (Optional)
## Installing a nice icon theme (Optional)
Clone the repository
git clone https://aur.archlinux.org/numix-icon-theme-git.git
@ -819,7 +816,7 @@ It will not change directly, We will do that in the next section.
Ofcourse you can install any icon theme you want, I just like this GPL icon theme.
# Gnome Extensions (Optional)
## Gnome Extensions (Optional)
The Gnome desktop is missing some obvious functions by default. that's where extensions come in.
To enable gnome extensions being installed from their website you need to install a package.
@ -896,8 +893,8 @@ https://extensions.gnome.org/extension/600/launch-new-instance/
You can install any more you like, Some might not work due to a version mismatch, but there are plenty available, Try not to overdo it, It can slow down your system.
# Tweaking the DE (Optional)
## Gnome Settings
## Tweaking the DE (Optional)
### Gnome Settings
First we are going to look at the default gnome settings, Click the power button in the top right corner and then press the gear in the menu that appears.
#### Network
@ -955,7 +952,7 @@ Under Language you can set the language you prefer, note that you first need to
#### Date & Time
Click the unlock button to enter your password, turn on Automatic Date & Time and set your correct timezone, You can also set a 24/12H clock here.
## Gnome Tweak Tool
### Gnome Tweak Tool
Tweak tool allows you to set a bunch settings so install it.
sudo pacman -S gnome-tweaks
@ -985,7 +982,9 @@ Same thing applies here, Enable the 2 extra buttons, Minimize and Maximize.
The rest of the settings are fine by default.
# Installing ZSH
# Terminal
## Installing ZSH
ZSH is a pretty cool lightweight shell that is very configurable, Install it with the following command
sudo pacman -S zsh
@ -1023,14 +1022,14 @@ Save and exit
ZSH should be functional with a terrible prompt, so lets fix that first.
# Installing a Powerline Font
## Installing a Powerline Font
We are gonna need the right fonts for all the icons
sudo pacman -S ttf-meslo-nerd
Change the terminal/monospace font to MesloLGS NF Regular in your terminal or DE settings
# Configuring Guake
## Configuring Guake
Guake is my terminal of choice, I like that it can split the window and it opens and closes fullscreen with a single button nice quick and easy. For KDE users there is Yauake, It is very much like Guake, but there are a ton more Guake clones out there, You should be able to follow this guide for most of them.
Install Guake with the following command
@ -1049,7 +1048,7 @@ Under Keyboard Shortcuts I set "Toggle Guake Visibility" to \`, this can give pr
Ofcourse you can config anything else you like, but for me this is enough
# Configuring Alacritty
## Configuring Alacritty
I use Alacritty for a quick and fast terminal it works especially great with tiling window managers you can install it with the following command
sudo pacman -S alacritty
@ -1073,7 +1072,7 @@ Now it is time to configure alacritty using the file
We are gonna need some fonts to properly display the icons with our theme so add in the following lines, you can change the font, But I recommend putting this one first to follow along with the guide.
```
#MesloLGS font
# MesloLGS font
font:
normal:
family: MesloLGS Nerd Font
@ -1129,7 +1128,7 @@ key_bindings:
- { key: N, mods: Control|Shift, action: SpawnNewInstance }
```
# Powerlevel10K
## Powerlevel10K
Powerlevel10K is a great theme for ZSH, it is very configurable and has a lot of cool features
Sadly it is unmaintained, but it works fine, we can clone the repo into our /usr/share folder.
@ -1162,7 +1161,7 @@ Now we just need to symlink the config file to the expected location
When you exit the terminal and start it again it should look all nice :)
# Installing LSD
## Installing LSD
lsd is like ls with colors, nice icons and other visual cues that help you.
It is in the repos, simply install it with the following command
@ -1175,7 +1174,7 @@ try the following command for example
lsd -la ~
# Adding ZSH Options and Keybinds
## Adding ZSH Options and Keybinds
ZSH options change the default behavior so do keybinds
You can add them all or just the ones you like to your zshrc-global file
@ -1234,7 +1233,7 @@ bindkey "^[[5~" beginning-of-line
bindkey "^[[6~" end-of-line
```
# Adding Aliases
## Adding Aliases
Aliases are simply alternatives for a string of text, as an easy example, v will type nvim, and sv will type sudo nvim. You can also chose to remove some or add more.
Simply add the following text to one of your ~/config/zshrc files, user will set it for you, and global will set it for everyone,
@ -1319,7 +1318,7 @@ alias normsh="checkbashisms"
alias banned='sudo fail2ban-client banned | tr -t "[{" " \n" | tr -d ":]},"'
```
# Adding ZSH Functions
## Adding ZSH Functions
ZSH functions are like tiny scripts that perform a task, you can add the ones you think are useful to you to one of the zshrc files, I suggest global so anyone can use them :)
Press Ctrl + Z to bring stuff to the background but also bring stuff back to the foreground instead of typing fg
@ -1509,7 +1508,7 @@ unban () {
}
```
# ZSH Plugins
## ZSH Plugins
To add plugins to ZSH we simply need to download them and source the main .zsh file of that plugin in one of your zshrc files. Below are the ones I use
Fast Syntax Highlighting is great, it gives your input color based on brackets, if it is correct or not, etc
@ -1567,7 +1566,7 @@ export ZSHZ_DATA=~/.config/zsh/.z
You can install any more you like, just be sure it doesn't slow down your shell.
# Updating ZSH Plugins with Pacman
## Updating ZSH Plugins with Pacman
Updating these plugins is important for compatibility and new features.
Create a file for the script
@ -1602,7 +1601,7 @@ Exec = /bin/bash /home/USERNAME/Scripts/update-zshplugins.sh
Save and exit and try to update your system, if you are lucky you have an update and you can see the script in action after the update.
# ZSH Hotkeys
## ZSH Hotkeys
Just a simple overview of all the hotkeys you can use
Up and Down Arrow = Browse history matching current line
Ctrl + A = Go to start of line
@ -1632,7 +1631,7 @@ Ctrl + X = Nothing
Ctrl + Y = Undo
Ctrl + Z = toggle program to background and foreground
# Installing Neofetch
## Installing Neofetch
Neofetch is a cool tool that shows some system information and a asci art logo of your distro. Install it with the following command
sudo pacman -S neofetch
@ -1642,7 +1641,7 @@ Now you can run it by just typing neofetch in a terminal :)
# Programming
Even if you are not into programming and have no interest in learning it, some of these programs might be useful, in the case of Neovim it is a lot easier to read configuration files for example, If you want to get into programming these programs are an absolute must.
# Installing Neovim
## Installing Neovim
We are using Neovim over Vim because Neovim has LSP support
install it using pacman
@ -1651,7 +1650,7 @@ install it using pacman
We will configure it later, we will start with ZSH
# Neovim Options and Keybinds
## Neovim Options and Keybinds
We already installed Neovim in the first step, but we still need to configure it the way we want to. First we need create config files
touch ~/Config/init.vim ~/Config/sysinit.vim
@ -1784,7 +1783,7 @@ vmap <A-left> <
vmap <A-right> >
```
# Neovim Plugins
## Neovim Plugins
Vim Plug will be our plugin manager, It will handle most of the work
We will install it system wide
@ -1922,7 +1921,7 @@ Plug 'jiangmiao/auto-pairs'
Plug 'pbondoer/vim-42header'
```
# Neovim LSP Config
## Neovim LSP Config
Language Server Protocol is used for live code checking using external Language Servers
For the scope of this guide we will set up a few languages but first we need to install the nvim-lspconfig plugin to make it all a bit easier
@ -2041,7 +2040,7 @@ lua require'lspconfig'.yamlls.setup{}
You can add many many more, just look for nvim plugins online
# Hotkeys
## Hotkeys
Just a simple overview of all the hotkeys you can use
```
@ -2188,16 +2187,18 @@ Alt + Y = Nothing
Alt + Z = Nothing
```
# Pacman Hooks for Updating Plugins
## Pacman Hooks for Updating Plugins
It is important that we update our plugins regularly, I will add more later WIP!
# GDB
## GDB
GDB is the GNU Debugger, It is extremely powerfull, I will add this one later WIP!
# Valgrind
## Valgrind
Valgrind is the best memory checker I have used, I will add this one later WIP!
# Installing Nextcloud
# Basic Programs
## Installing Nextcloud
If you don't use Nextcloud, Go buy a raspberry pi now, Or build a small server if you really want to get serious in self hosting. You can also sign up at one of the many Nextcloud providers. It is a free and open source Cloud storage and syncing tool, for all your files, contacts, passwords, bookmarks, you name it, It even syncs everything with your phone, Desktop, anything really, It has some amazing features.
To clarify, This installs the Nextcloud sync client, You will need a provider or your own Nextcloud installation on a server.
@ -2228,7 +2229,7 @@ Now build and install the package
Give it your password when it asks you for it and answer yes to every question.
# Install a Graphical User Interface for Pacman
## Install a Graphical User Interface for Pacman
Now we are going to install pamac, Which is a front end for pacman the default package manager in Arch.
be sure to install git if you have not done this already
@ -2271,7 +2272,7 @@ Now we need to enable AUR support, The AUR is the Arch User Repository, Here Arc
You can now install any program you want from this "app store"
# Install and Configure the Browser
## Install and Configure the Browser
First we need to install Firefox with the following command, Open it after it is done.
sudo pacman -S firefox
@ -2290,7 +2291,7 @@ Close firefox, remove all contents in the folder and then copy the contents of t
Start Firefox, wait a bit, close it and start it again, All extensions settings and configuration should be done :)
# Install instant Messaging clients
## Install instant Messaging clients
Surely there are a lot of chat services, And you probably need more than 1, In that case I would recommend using Rambox or Ferdium, They have the advantage of having all web based chat services in 1 program, From Whatsapp to Discord and from IRC to Riot.
The following steps will install Ferdium on your system
@ -2311,7 +2312,7 @@ Give it your password when it asks you for it and answer yes to every question.
Now you can open Ferdium, go to the settings, Disable every setting under general, and enable every setting under Appearance. Now you can go to services and enable any chat service you need.
# Install Mumble
## Install Mumble
Mumble is an encrypted UDP voice chat service, you can host your own servers or use one of the many public ones to chat to your friends using the highest quality possible.
Install it with the following command
@ -2320,19 +2321,19 @@ Install it with the following command
If you need a good public server you can use mine on houtworm.im :)
# Install some handy fonts
## Install some handy fonts
If you want to see the unicode emoticons you need to install the emoticon pack.
sudo pacman -S noto-fonts-emoji
# Install Transmission
## Install Transmission
If you ever download stuff, try to use Torrents where possible, you do need a Torrent Client for that and Transmission is a great one, you can install it with the following command
sudo pacman -S transmission-gtk
now you can use Torrents instead of overloading your favorite distros by downloading distro images over HTTP :)
# Installing Virtualbox
## Installing Virtualbox
Virtualbox is a Virtual Machine manager, You can run operating systems within your current operating system. This can be handy if you like to mess around with systems, want to learn more about Linux or you need proprietary software that doesn't run trough Wine.
Install it with the following command
@ -2341,7 +2342,7 @@ Install it with the following command
When you get asked a question go with the dkms option.
# Installing Geekbench
## Installing Geekbench
Geekbench is a very nice benchmarking toolkit for benchmarking your CPU and GPU, It runs on almost everything, So you can compare your PC against your Phone and your Server for example :)
git clone https://aur.archlinux.org/geekbench.git
@ -2364,7 +2365,7 @@ GPU Vulkan
geekbench --compute vulkan
# Install MPD
## Install MPD
MPD is the Media Player Daemon, It is a media player as a service that needs an mpd client to steer it. It is great for a raspberry connected to your receiver for example. I use it on my PC with Ampache installed on my server controlling it.
sudo pacman -S mpd && systemctl --user enable mpd
@ -2373,33 +2374,33 @@ If you want media keys to work with MPD
sudo pacman -S mpd-mpris
# Install Audacious
## Install Audacious
Audacious is a nice smalll music player that will play about every format
Install it with the following command
sudo pacman -S audacious
# Install VLC
## Install VLC
Same thing applies for VLC is is a great Video player that will play anything from anywhere
Install it with the following command
sudo pacman -S vlc
# Install Sublime
## Install Sublime
Sublime is a Subsonic music player. If you have a server somewhere I would recommend installing it.
Simply search for sublime-music in pamac and you can install it easily :)
# Installing OBS
## Installing OBS
OBS Studio is the go to streaming software on all platforms, Surely not everyone streams, but it is also very handy to record your screen or from other devices.
Install it with the following command
sudo pacman -S obs-studio
# Installing NoiseTorch
## Installing NoiseTorch
NoiseTorch is simply amazing noise cancellation software, There could be a circus a mariachi band and a sporting event in your living room, and even when you are talking on a low volume, people on the other side will hear nothing but your voice. Truly amazing.
We need to install it from the AUR, so go ahead and clone the repo
@ -2416,7 +2417,9 @@ install the package
Now you can find NoiseTorch in your menu, just open it configure it and load it to use it, Unload it again to stop it.
# Installing Libreoffice
# Office Programs
## Installing Libreoffice
Libreoffice is the total office package that can do everything and open anything
Install it if you ever come across office documents.
@ -2429,12 +2432,12 @@ Exectute the following command, be sure to replace nl with your own country lett
sudo pacman -S libreoffice-fresh-nl
# Installing Spell correction
## Installing Spell correction
If you need spelling correction you can install Aspell or Hunspell or both
I would suggest using Pamac for this because you can easily see what languages are available. Just open it and search for aspell or hunspell, or both.
# Enable Printing
## Enable Printing
Surely not everyone needs this one, But if you need a printer install cups with the following command
sudo pacman -S cups cups-pdf
@ -2447,21 +2450,23 @@ The print server should be running, you can configure it by going to http://loca
There is a possibility you need custom drivers, In that case look for your printer in the AUR, it is very likely they are in there :)
# Install GIMP
## Install GIMP
GIMP (GNU Image Manipulation Program) is an amazing photoshop like tool that can do about everything with images, It might be a bit overwhelming at first, but just look for tutorials if you want to accomplish a specific task.
Install it with the following command
sudo pacman -S gimp
# Install Inkscape
## Install Inkscape
Inkscape is also a very powerful tool, Instead of raster images it tackles vector images, Which is great for designing logos and other stuff that needs to be infinitely scaleable.
Install it with the following command
sudo pacman -S inkscape
# Enable Multilib
# Gaming
## Enable Multilib
Steam is a 32 bit application, like many of the games in its library, So to be able to install it we need to add multilib to our 64 bit system.
Edit /etc/pacman.conf and uncomment the multilib section.
@ -2483,7 +2488,7 @@ If you are running KDE be sure to install lib32-fontconfig with the following co
sudo pacman -S lib32-fontconfig
# GPU Drivers
## GPU Drivers
Having the right GPU drivers is imporant, else games won't run properly.
If you have a GTX9xx or newer you need the newest drivers, If you even have an older card, manually check which driver you need: https://www.nvidia.com/Download/index.aspx?lang=en-us But install them trough the AUR.
@ -2508,7 +2513,7 @@ If you use Gnome or GDM with Nvidia you might need to disable Wayland, This is n
Remove the # in front of the #WaylandEnable=false line and it should force Xorg.
# Feral Gamemode
## Feral Gamemode
Gamemode puts all your hardware in performance mode, it fixes some common problems and it just sounds cool :P
Gamemode is in the repos these days, so simply run the following command to install gamemode.
@ -2527,7 +2532,7 @@ To use it in Steam edit the launch option for the desired game to
gamemoderun %command%
# Nvidia Improvements
## Nvidia Improvements
Nvidia users might want to enable all options listed here to improve performance in games
Force Full Composition Pipeline avoids screen tearing by letting the GPU do all the scaling.
@ -2578,7 +2583,7 @@ Alternatively you can just completely remove the file with the following command
sudo rm /etc/X11/xorg.conf.d/20-nvidia.conf
# Libstrangle
## Libstrangle
Libstrangle is a tool that helps you control framerates but also vsync settings. This is especially handy for games that do not support these features, You would like to half your framerate to make it run better save some power or just give your hardware a break.
Install it with the following command
@ -2606,7 +2611,7 @@ To set the framerate of a vulkan game on Steam to 120 fps but 60 on battery powe
strangle -v 3 120:60 %command%
# Mangohud
## Mangohud
Mangohud is a monitoring tool for Vulkan and OpenGL applications. It can show CPU and GPU usage, temps, But also framerates, frametimes and a lot more.
Install it with the following command
@ -2668,7 +2673,7 @@ Some games might need the 32 bit version, try this if the normal command fails.
mangohud.x86 %command%
# VKBasalt
## VKBasalt
VKBasalt is a post processing layer for Vulkan which enables you to enhance graphics further. It only works with Vulkan, This includes all Proton games.
Install it with the following command
@ -2689,7 +2694,7 @@ You can also start non Steam games this way by typing the following command
ENABLE_VKBASALT=1 supertuxkart
# GOverlay
## GOverlay
GOverlay is a Graphical User Interface for managing MangoHud and VKBasalt
git clone https://aur.archlinux.org/vkbasalt.git && cd vkbasalt && makepkg -si && cd
@ -2699,64 +2704,64 @@ Install them with the following command
sudo pacman -S mesa-demos vulkan-tools
# AOC Compiler
## AOC Compiler
WIP!
# fsync
## fsync
WIP!
# Freesync
## Freesync
WIP!
# Gsync
## Gsync
WIP!
# Monitor switching hotkey
## Monitor switching hotkey
WIP!
# disabling composition
## disabling composition
WIP!
# Open Joystick Display
## Open Joystick Display
WIP!
# Gamescope
## Gamescope
WIP!
# Using a separate special gaming DE at login
## Using a separate special gaming DE at login
WIP!
# Emulation
If you want to play console games on your system you need some emulators, If you only want to play Windows PC games you can just scroll down to the Steam Play section.
# RetroArch
## RetroArch
WIP!
# Dolphin
## Dolphin
WIP!
# Yuzu
## Yuzu
WIP!
# Duckstation
## Duckstation
WIP!
# PCSX2
## PCSX2
WIP!
# RPCS3
## RPCS3
WIP!
# Flycast
## Flycast
WIP!
# Xemu
## Xemu
WIP!
# Steam Rom Manager
## Steam Rom Manager
WIP!
# Steam Play
## Steam Play
Steam Play Compatibility Tools are great for running Steam games that do not work natively on your system. Of course there is no guarantee games will work, But it certainly boosts the list of playable games on Steam for Linux. You can run Windows games or DOS games on Linux, You can even run Linux games that fail to run when you start them normally.
First up we need to enable Steam Play in the Steam settings,
@ -2778,18 +2783,18 @@ Now Save and Steam will restart, To actually use it now we need to force it for
Below I will list all Steam Play Compatibility tools out there, describe what they do and how to install them.
## Proton
### Proton
This is Valves own fork of Wine, It will be installed automatically if you select it as the tool of choice in any games properties. Proton should be the go to tool if you want to play Windows games.
## ProtonDB
### ProtonDB
protondb.com is a Proton DataBase, Here anyone can report how well games run for them with Proton, It creates some nice stats and it is a useful place to check which games you will be able to play.
I would also urge everyone to report the games you have played, It helps a lot. Good or bad, even if there are already hundreds of reports. Also check out this Curator who lists Platinum rated games.
## Proton Github
### Proton Github
The Proton Github is where you can report problems with games, It probably won't get fixed because of it, but it is good to let everyone know there is interest, and who knows maybe the community finds a fix together.
## Protontricks
### Protontricks
Winetricks is a tool that helps you set certain tweaks to Wine to help make programs run or run better. Protontricks is just a simple wrapper which deals with proton directories in a manageable way.
Install it with the following command
@ -2798,7 +2803,7 @@ WIP!
Now you should be able to execute protontricks commands in your terminal, If a listing on ProtonDB works by using a certain protontricks command you can make the adjustment pretty easily
## Proton GE
### Proton GE
Proton GE is a fork of proton by Glorious Eggroll, That's where the GE comes from. It fixes a lot of game specific bugs, so if your game does not work with Proton, You can always try this one.
Install it with the following command
@ -2807,7 +2812,7 @@ WIP!
Now you should be able to restart steam and the compatibility tool should show up in the game properties when you enable Force the use of a specific Steam Play compatibility tool.
## Boxtron
### Boxtron
Boxtron is a tool to run DOS games with DOSBox right from the Steam Client, This fixes some broken DOS games on the Steam Store, and it enhances the performance for most. You can check this Curator for supported games
Install it with the following command
@ -2816,7 +2821,7 @@ WIP!
Now you should be able to restart steam and the compatibility tool should show up in the game properties when you enable Force the use of a specific Steam Play compatibility tool.
## Roberta
### Roberta
Roberta is a tool to run SCUMM games with ScummVM right from the Steam Client, This Enables you to play some Windows ports on the Steam Store with a Native Linux Engine. which greatly improves everything ofcourse. Also check out this Curator that lists compatible games.
Install it with the following command
@ -2825,7 +2830,7 @@ WIP!
Now you should be able to restart steam and the compatibility tool should show up in the game properties when you enable Force the use of a specific Steam Play compatibility tool.
## Luxtorpeda
### Luxtorpeda
Luxtorpeda is a tool that makes Windows only games run natively running the game with the official game assets using open source engines like OpenMW, OpenXcom, GZDoom and much more.
Install it with the following command
@ -2834,12 +2839,14 @@ WIP!
Now you should be able to restart steam and the compatibility tool should show up in the game properties when you enable Force the use of a specific Steam Play compatibility tool.
## Steam Linux Runtime
### Steam Linux Runtime
Steam Linux Runtime is a container for your native Linux games, it will use more of Steams own libraries instead of the ones from your system. If a game does not run normally you could try this one.
Steam Linux Runtime has a few advantages for users; Games can not access your home directory, they are isolated in their own little container. It can help support older games that don't work on newer systems. For developers it creates a single runtime they can test against.
# Programmable Mouse
# Special Hardware
## Programmable Mouse
If you have a mouse with profiles or adjustable DPI, there is a chance it is supported by Piper, If you are in doubt you can simply try it and remove Piper if it doesn't work
install it with the following command
@ -2848,11 +2855,11 @@ install it with the following command
Now open the program and check if it detects your mouse
# BlackMagic Capture Cards
## BlackMagic Capture Cards
WIP!
# Xbox One Controller
## Xpad
## Xbox One Controller
### Xpad
xpad works great, is the default on modern Linux distros and supports a wide range of controllers
For Bluetooth to work with xpad and the Xbox One controllers you need to disable ertm (This is not needed for xpadneo)
@ -2867,7 +2874,7 @@ Add the following line to the document and save and exit with CTRL + X.
options bluetooth disable_ertm=1
```
## Xpadneo
### Xpadneo
xpadneo is a better driver for xbox one controllers if you use bluetooth, It enables vibration and even the vibration inside the triggers, It supports battery level indication, It also fixes the mapping in many many games that where previously unplayable with a Xbox One controller on Linux.
Install the dependencies
@ -2880,13 +2887,13 @@ Install xpadneo from the AUR
Now you should be able to reboot and it should be all good, Having the controllers vibrate for a second when connected is a good indicator that it works.
## Xow
### Xow
Xow is a better driver for xbox one controllers if you use the official wireless controller dongle from Microsoft, I don't own one so I can't test anything I would write here, So I just don't, I do mention it in case you have one.
# Racing Wheels
## Racing Wheels
Racing wheels should work out of the box on Linux, Including Force Feedback, Shifters, pedals and most things you can throw at it. But if you like to fine tune some things you may need some software. This is mostly not even the case, I played a long time just using the default kernel drivers, But some of these tools might come in very handy if you play different games, with different settings or with unsupported wheels.
## Oversteer
### Oversteer
Oversteer will enable a few cool things like Turning Degree and Lock if the game you want to play doesn't support it. It also enables you to set profiles for games and gives you compatibility modes so that you can play older games that expect a G27 for example.
Install it with the following command
@ -2895,14 +2902,14 @@ Install it with the following command
You can open the program now and check some things out.
## lg4ff
### lg4ff
lg4ff is a kernel module for steering wheels which enables you to adjust the lights on a G29 for example, It also allows you to fine tune and even amplify the Force Feedback, Aplify it on your own risk tho, I already wrecked a G29, The inner housing broke, don't worry about it overheating or anything.
Install it with the following command
git clone https://aur.archlinux.org/new-lg4ff-dkms-git.git && cd new-lg4ff-dkms-git && makepkg -si
# Handbrake
### Handbrake
Handbrakes are not that common sadly, You can purchase an expensive one from Fanatec, buy one from Aliexpress or create your own.
If you use a Fanatec Handbrake You just need to add a few lines with the correct ProductID and VendorID to the inputdevices.json file of the game. For Feral games it will be located in the installation folder under the /Share directory. Just add the folllowing lines with the correct ProductID and VendorID before the last ] of the file. These Product and Vendor IDs are for a Arduino Leonardo. You can find the right Product and Vendor IDs by typing lsusb -v in a terminal when the device is connected.
@ -2955,3 +2962,28 @@ Make sure you put the right Arduino model and the right USB port in tools, Then
If needed you can adjust the values (rawValue, 750, 1023, 0, 255). These may be different depending on how you built it
Now the Arduino is a functional Handbrake in Racing games :)
# Cleaning up and maintaining the system
Lastly we are going to clean up a bit, We left a lot of mess in your home directory during in the few hours, You can remove all the folders we used for installing the AUR packages, like pamac-aur, nautilus-nextcloud, numix-square-icons, etc
To maintain your system all you have to do is update it, you can run the following command to update your entire system.
sudo pacman -Syu
If you followed the complete guide and installed Pamac, you can just use pamac to update all packages on your system including the ones from the AUR.
You don't have to update every day, You can ofcourse, But if you want to update every week or every 2 weeks that is fine too, I do think the sweet spot is between 3 days and a week. Unless you don't use the device I would not wait longer than a month with updates, some of the updates are pretty important for the security of the device, Which is the main reason why you MUST update.
You can also remove orphaned packages every once in a while with the following command
sudo pacman -Rnsc $(pacman -Qqdt)
You do this in pamac by going to the installed tab, then click on orphans and then select all to remove them.
I would be careful with executing commands from the internet, especially the sudo command, It is extremely powerful, You could mess up everything with many simple commands.
If you need extra software, always try the repos first! Nothing wrong with needing something from the AUR, but try to keep it to a minimum, and regularly check the "Foreign Packages" under installed in Pamac to check what AUR packages are still installed, If you see anything you don't recognize, try to remove it, If it is a dependency Pamac will warn you and you can always cancel.
I would recommend against Installing software from git, web, trough scripts, make, curl, wget, etc. Don't unless you absolutely need it and know what you are doing, But by that time I would recommend to just add it to the AUR yourself.
I would also recommend keeping your home directory nice and orderly.