updated Arch Installation Guides
This commit is contained in:
parent
21727df7fb
commit
16627bf31e
@ -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.
|
||||
|
Loading…
x
Reference in New Issue
Block a user