Artix Linux installation guide
In inglese perché ao arrangiatevi mannaggiadd
Intro¶
Welcome to the Artix Linux installation tutorial!
Artix Linux is a Linux distribution based on Arch Linux, but with one very important difference: it does not use Systemd as its init system.
Preparation¶
Live ISO download and USB preparation¶
Go on the Artix Linux download page and download the stable ISO file artixlinux-base-{your chosen init}-{YYYYMMDD}-{your cpu architecture}.iso
.
Write the ISO on a storage media (USB/CD/DVD):
If you plan on using an USB support to install Artix, this guide recommends you the use of balenaEtcher or ROSA ImageWriter to write it.
Booting into the live ISO¶
Remember to disable Secure Boot from the UEFI Settings to install and use the distro.
If you are unable to boot after disabling Secure Boot, make sure that your storage configuration is set to AHCI.
Choose the appropriate keyboard layout and timezone, then boot to the live ISO with the correct option.
Login¶
On the live ISO you have two possibilities regarding login:
- User root
, password artix
- User artix
, password artix
: all important commands must be prefixed with sudo
.
Connecting to the Internet¶
Using an Ethernet cable¶
Make sure your Ethernet cable is plugged in correctly; you can check the status of your Ethernet connection via this command:
$ ip addr
You should see your Ethernet connection there, along with your local IP address. If everything shows up correctly, you can move on.
Using Wi-Fi¶
To check if your Wi-Fi card is enabled you can run this command:
$ connmanctl technologies
You can, then, check for the line that says Powered: True/False
.
To enable your Wi-Fi card, in case it is disabled, simply run:
$ connmanctl enable wifi
To scan for nearby Wi-Fi access points, you can issue the following command:
$ connmanctl scan wifi
$ connmanctl services
The second command will output something like this:
*AO MyNetwork wifi_dc85de828967_68756773616d_managed_psk
OtherNET wifi_dc85de828967_38303944616e69656c73_managed_psk
AnotherOne wifi_dc85de828967_3257495245363836_managed_wep
FourthNetwork wifi_dc85de828967_4d7572706879_managed_wep
AnOpenNetwork wifi_dc85de828967_4d6568657272696e_managed_none
Connecting to an open access point¶
To connect to an open network, use the second field beginning with wifi_
:
$ connmanctl connect wifi_dc85de828967_4d6568657272696e_managed_none
You should now be connected to the network.
Connecting to a protected access point¶
The commands in this section show how to run connmanctl
in interactive mode; it is required for running the agent
command. To start interactive mode simply type:
$ connmanctl
You need to register the agent to handle user requests. The command is:
connmanctl> agent on
You now need to connect to one of the protected services. If you were connecting to OtherNET
in the example above you would type:
connmanctl> connect wifi_dc85de828967_38303944616e69656c73_managed_psk
The agent will then ask you to provide the passphrase, like so:
Agent RequestInput wifi_dc85de828967_38303944616e69656c73_managed_psk
Passphrase = [ Type=psk, Requirement=mandatory ]
Passphrase?
Provide the passphrase and then quit the interactive shell:
connmanctl> quit
You should now be connected to the protected access point.
Checking the connection¶
Check your internet connection with ping
:
$ ping artixlinux.org
Hopefully it is all connected; if it is not, please double check your Internet connection steps.
Installation¶
Disk partitioning and file system creation¶
You need to figure out which disk you want to install Artix on. blkid
is a utility that lists the available disks, and usually one invocation of it is enough to figure out which disk you have to work on.
For simplicity, this guide will assume the disk is /dev/sda
.
- If you need to reinitialize the disk in question (no partition table), the command to issue is:
# cfdisk -z /dev/sda
- if, on the other hand, you only need to modify the partition table of an existing disk (e.g. dual booting), the command to be issued is:
# cfdisk /dev/sda
The cfdisk
partition manager will open.
If you are creating the partition table now and are on UEFI or a Legacy BIOS that supports booting from GPT disks, choose gpt
; otherwise choose msdos
.
Create the following partitions:
- If you are booting from a legacy BIOS and have chosen a GPT partition table, the first partition must be of type
BIOS boot
and of size1M
; In case you are booting from a legacy BIOS which only boots from MBR (msdos
) partition tables, then there is no need to create this partition. - If you don't already have it, add the boot partition; it must be about 500 MB and preferably of
EFI System
type; - Add a partition for the root file system (and leave it flagged as
Linux filesystem
); - If you want, you can add a swap partition by creating it and flagging it as
Linux swap
.
In a GPT partition table, pre-flagging the boot partition as ESP even if you are on Legacy BIOS is useful to make a possible conversion from Legacy BIOS to UEFI easier.
Confirm the changes by issuing the Write
command; confirm by typing yes
and then quit the partition manager by issuing the commandQuit
.
For ease of reference, the disk used in this guide will be /dev/sda
and it will be partitioned as follows:
/dev/sda
- /dev/sda1 -> EFI System
- /dev/sda2 -> Linux filesystem
- /dev/sda3 -> Linux swap
Create the file systems now:
The boot partition will be /dev/sda1
so do:
# mkfs.fat -F 32 /dev/sda1
The Linux root partition will be
/dev/sda2
. If you want a simple ext4 formatted root file system, do:# mkfs.ext4 /dev/sda2
Then, mount the root filesystem on
/mnt
:# mount /dev/sda2 /mnt
However, it is highly recommended to encrypt your Linux installation. Below are the instructions to use LUKS in conjunction with LVM2.
First, encrypt the Linux partition with LUKS. Remember to keep the chosen password safe!
# cryptsetup luksFormat -v -s 512 -h sha512 /dev/sda2
Open the encrypted partition:
# cryptsetup open /dev/sda2 luks_root
Create the logical volume group and also the logical volume of the root filesystem:
# pvcreate /dev/mapper/luks_root # vgcreate lvmgroup /dev/mapper/luks_root # lvcreate -l 100%FREE lvmgroup -n root
Finally, format the logical volume using your filesystem of choice (ext4 as an example):
# mkfs.ext4 /dev/lvmgroup/root
And mount it:
# mount /dev/lvmgroup/root /mnt
Wait, you wanted to make a BTRFS root partition? Issue the following command: (You can make a BTRFS encrypted partition; just replace
/dev/sda2
with/dev/lvmgroup/root
after having followed the tutorial above)# mkfs.btrfs /dev/sda2
Then, mount the BTRFS partition with:
# mount /dev/sda2 /mnt
Create your subvolumes now. Ideally you'd want one for the root and one for the home, though more can be created (snapshots, pacman cache, etc.)
# btrfs subvolume create /mnt/@root # btrfs subvolume create /mnt/@home
When you're satisfied, you can unmount the BTRFS partition and mount the subvolumes.
# umount /mnt # mount -o subvol=/@root /dev/sda2 /mnt # mkdir /mnt/home # mount -o subvol=/@home /dev/sda2 /mnt/home
To better manage the BTRFS partition, it's usually okay to mount the root subvolume in a subfolder of your Linux root:
# mkdir /mnt/.btrfs # mount -o subvolid=5 /dev/sda2 /mnt/.btrfs
You can now proceed to reading the rest of the guide.
The swap partition will be on /dev/sda3
, so do:
# mkswap /dev/sda3
Mounting the file systems¶
If you have created a swap partition, activate it with the command:
# swapon /dev/sda3
Create the directory where you can mount the boot partition filesystem:
# mkdir /mnt/boot
Mount the boot partition file system:
# mount /dev/sda1 /mnt/boot
Installing the distro¶
Install the base packages:
# basestrap /mnt base base-devel elogind
If you're booting from a BTRFS file system, you need the
btrfs-progs
package:# basestrap /mnt btrfs-progs
In case you have encrypted the disk, also install the utilities to manage the LUKS partition:
# basestrap /mnt cryptsetup cryptsetup-{init} lvm2 lvm2-{init}
You have now to choose a Linux kernel to install. Artix Linux provides three kernels: linux
, linux-lts
and linux-zen
.
linux
is the mainline kernel; it is regularly updated with each version that comes out directly by the kernel maintainers. It is slightly customized by the Artix developers to make sure it will run properly on Artix Linux.To install it, run this command:
# basestrap /mnt linux linux-headers
linux-lts
is the Long Term Support kernel; it is older than the mainline kernel and it may not offer support for newer hardware, but it is often times more stable and it is also supported for years and years. It is slightly customized by the Artix developers to make sure it will run properly on Artix Linux.To install it, run this command:
# basestrap /mnt linux-lts linux-lts-headers
linux-zen
is a customized fork of the mainline kernel, with patches to boost performance under certain system configurations. If you are a gamer and you are looking for a kernel supporting Fsync, this is it. It receives the same timely updates as the mainline kernel.To install it, run this command:
# basestrap /mnt linux-zen linux-zen-headers
If your system needs firmware blobs that are not present in the Linux kernel (for example, to get network cards to work properly), you can install the linux-firmware
package:
# basestrap /mnt linux-firmware
Install the init system of your choice:
# basestrap /mnt {init} elogind-{init}
For example, to install: - OpenRC:
# basestrap /mnt openrc elogind-openrc
Runit:
# basestrap /mnt runit elogind-runit
S6:
# basestrap /mnt s6-base elogind-s6
Suite66:
# basestrap /mnt 66 elogind-66
Now, generate the partition table:
# fstabgen -U /mnt >> /mnt/etc/fstab
Finally, chroot into the new root file system:
# artix-chroot /mnt
Install configuration¶
Installing nano
as a text editor¶
From here on you will need a text editor. This guide recommends GNU nano; however the choice is up to the end user.
Install nano
:
# pacman -S nano
Edit /etc/profile
so that subsequent logins usenano
by default: at the end of the file add a line with the following text:
export EDITOR=nano
The same command can be used (and it is recommended to use it) in the current shell to take effect immediately.
For Suite66 users only: Init system configuration¶
If you have chosen Suite66 as your init system, you need to create its configuration files:
# 66-tree -ncE default
# 66-tree -n boot
# 66-enable -t boot boot@system
Change the boot configuration of Suite66 with this command:
# 66-env -t boot -e $EDITOR boot@system
!no
to!yes
where necessary.
Suite66 also manages the hostname internally to its configurations; remember to set it.
To apply the newly saved configuration:
# 66-enable -t boot -F boot@system
Locale, time and language configuration¶
Install the time synchronization service:
# pacman -S chrony chrony-{init}
Add the chrony
service to the boot list.
For example - OpenRC:
# rc-update add chrony default
Runit:
# ln -s /etc/runit/sv/chrony /etc/runit/runsvdir/default
S6:
# s6-rc-bundle-update add default chrony
Suite66:
# 66-enable -t default chrony
Set the time zone and create the /etc/adjtime
file:
# ln -sf /usr/share/zoneinfo/{Continent}/{City} /etc/localtime
# hwclock --systohc
If you are dual booting with Windows, this last one is likely to have problems showing and operating with the correct time. To solve this, just tell it to use the time in UTC format. Read the ArchWiki article about it.
Edit the /etc/locale.gen
file; uncomment the languages and locales you will use.
It is advisable to uncomment
en_US.UTF-8
even if you will not be using your computer in the American English language; this is because many non-internationalized applications depend on this language to communicate with the user.
Generate locales with:
# locale-gen
Create a /etc/locale.conf
file and type in it:
export LANG="en_US.UTF-8" <-- your language
export LC_COLLATE="C"
If you have chosen OpenRC as your init system, edit the /etc/conf.d/keymaps
file:
keymap="us" <-- your keyboard layout
windowkeys="YES" <-- type YES if you are using a common Windows keyboard
You then need to make a new file to define the virtual console font and keymap. Create /etc/vconsole.conf
:
KEYMAP=us
FONT=default8x16
If you want to see how other fonts may look like, take a look at them here.
If you plan to use a graphical X.Org session, you would do well to configure the keyboard layout now.
Create the file
/etc/X11/xorg.conf.d/00-keyboard.conf
:Section "InputClass" Identifier "system-keyboard" MatchIsKeyboard "on" Option "XkbLayout" "en" <-- your keyboard layout EndSection
Hostname configuration¶
Choose a hostname for your machine.
Edit the following files:
Edit /etc/hostname
:
myhostname
Edit /etc/hosts
:
127.0.0.1 localhost
::1 localhost
127.0.1.1 myhostname
If you have chosen OpenRC as your init system, edit /etc/conf.d/hostname
:
# Set to the hostname of this machine
hostname="myhostname"
Microcode package installation for Intel and AMD CPUs¶
Both Intel and AMD frequently release microcode updates for their processors; it is therefore important to keep your system as updated as possible to avoid random crashes and stability problems.
To install the latest microcode package:
# pacman -S amd-ucode <-- AMD CPUs
# pacman -S intel-ucode <-- Intel CPUs
The boot loader is responsible for loading the updated microcode. For more information see this ArchWiki article.
Boot loader configuration¶
There are various ways to load the Linux kernel at boot and all are well explained in this ArchWiki article.
Prepare to install a bootloader¶
If you're on UEFI, you need to install efibootmgr
:
# pacman -S efibootmgr
If you are encrypting the disk, modify the configuration files to support boot decryption. - Edit
/etc/mkinitcpio.conf
: Addencrypt
andlvm2
to theHOOKS
array between theblock
andfilesystem
entries. - Make the new configuration effective with:# mkinitcpio -P
Option 1: GRUB¶
Install the packages needed to install and configure GRUB:
# pacman -S grub
# pacman -S os-prober <-- If you're dual booting Windows
Install GRUB: - If you're on UEFI:
# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=artix
# grub-install --recheck /dev/sda
If you are encrypting the disk, modify the configuration files to support boot decryption. - Modify
/etc/default/grub
:GRUB_CMDLINE_LINUX=”cryptdevice=/dev/sda2:luks_root”
If you are dualbooting with Windows or any other operating system, you have to make sure GRUB will call
os-prober
; to do so, add this line on the configuration file at/etc/default/grub
:GRUB_DISABLE_OS_PROBER=n
Generate the GRUB configuration file:
# grub-mkconfig -o /boot/grub/grub.cfg
To know more about GRUB, please read the ArchWiki article.
Option 2: rEFInd¶
Install the packages needed to install and configure rEFInd:
# pacman -S refind
Then, you can install rEFInd. Just issue this command:
# refind-install
Now, since you're in a chroot
, rEFInd would have surely misconfigured some stuff in its Linux configuration file.
To make sure that we can boot, we'd need to completely rewrite the file at /boot/refind_linux.conf
with something that makes sense to us.
Those are sensible defaults to use:
"Boot with default settings" "rw root=UUID=<uuid> rootflags=<flags> initrd=<cpu>-ucode.img initrd=initramfs-%v.img loglevel=3 quiet"
"Boot with fallback initramfs" "rw root=UUID=<uuid> rootflags=<flags> initrd=<cpu>-ucode.img initrd=initramfs-%v-fallback.img loglevel=3 quiet"
Remember to put your variables correctly!
You can get your UUID by doing:
# blkid -o export -s UUID /dev/sda2 | grep UUID=
On BTRFS, however, you can do this instead:
# echo UUID=$(btrfs filesystem show / | grep uuid | cut -d" " -sf5)
You need your subvolume name (or ID) to properly boot on BTRFS, if your default subvolume is not your root file system.
# btrfs subvolume show / | grep Name | tr -s '\t' | cut -f3
Effectively, you can use commands to make all the configuration.
# Uuid=$(blkid -o export -s UUID /dev/sda2 | grep UUID=)
# Cpu=$(cat /proc/cpuinfo | grep AuthenticAMD > /dev/null && echo amd || echo intel)
// ONLY IF USING BTRFS
# Subvol=$(btrfs subvolume show / | grep Name | tr -s '\t' | cut -f3)
// IF NOT USING BTRFS
# echo "\"Boot with default settings\" \"rw root=$Uuid initrd=$Cpu-ucode.img initrd=initramfs-%v.img loglevel=3 quiet\"" > /boot/refind_linux.conf
# echo "\"Boot with fallback initramfs\" \"rw root=$Uuid initrd=$Cpu-ucode.img initrd=initramfs-%v.img loglevel=3 quiet\"" >> /boot/refind_linux.conf
// IF USING BTRFS
# echo "\"Boot with default settings\" \"rw root=$Uuid rootflags=subvol=$Subvol initrd=$Cpu-ucode.img initrd=initramfs-%v.img loglevel=3 quiet\"" > /boot/refind_linux.conf
# echo "\"Boot with fallback initramfs\" \"rw root=$Uuid rootflags=subvol=$Subvol initrd=$Cpu-ucode.img initrd=initramfs-%v.img loglevel=3 quiet\"" >> /boot/refind_linux.conf
Installation of a network manager¶
This guide recommends NetworkManager
as it is supported by many desktop environments including GNOME, KDE, MATE and XFCE.
To install it:
# pacman -S networkmanager networkmanager-{init}
# pacman -S dnsmasq <-- to add Wi-Fi AP (hotspot) support
Add NetworkManager
to the list of startup services.
Alternative: connman
¶
Install connman
together with a DHCP client:
# pacman -S connman connman-{init} dhclient
Add connmand
to the list of startup services.
Also install connman-gtk
(if you will use GNOME, XFCE, MATE) orcmst
(if you will use KDE, LXQt)
# pacman -S connman-gtk <-- GTK-based DEs
# pacman -S cmst <-- Qt-based DEs
If you are going to use a wireless network card, you will also need wpa_supplicant
:
# pacman -S wpa_supplicant wpa_supplicant-{init}
Optional: Installing a system logger¶
Install Syslog-ng:
# pacman -S syslog-ng syslog-ng-{init}
Add syslog-ng
to the list of startup services.
Optional: Install Logrotate¶
The system log, if not kept clean, can get pretty heavy in disk usage.
That is why it is recommended to install Logrotate:
# pacman -S logrotate
Install Filesystem in Userspace¶
Filesystem in Userspace allows you to mount external media without having to invoke any commands via root.
To install it issue the following command:
# pacman -S fuse2 fuse3 fuse-{init}
Add fuse
to the list of startup services.
User configuration¶
Change the root password:
# passwd
After that, create a user that you will use for your normal operations:
# useradd -m username
Set a password for this new user:
# passwd username
Add this user to the wheel
group (so it can operate as an administrator):
# usermod -a -G wheel username
Other useful groups are
lp
,storage
,input
,games
,rfkill
,optical
,disk
.The
audio
andvideo
groups are useful to communicate to audio and video related hardware.
sudo
configuration¶
You need to configure sudo
so that it grants users of the wheel
group the ability to run commands as root.
# visudo
At around three quarters of the file, you will find this line; uncomment it:
# %wheel ALL=(ALL) ALL <-- uncomment this line
X.Org installation¶
X.Org is the de facto standard server for graphical sessions on Linux; it can be installed via:
# pacman -S xorg
Please read archwiki's article on X for more information about X.Org and/or X11
Optional: NVIDIA drivers installation (for NVIDIA GPUs)¶
From the command line, install nvidia
(or nvidia-lts
if you're using a LTS kernel version):
# pacman -S nvidia
If you have a laptop with dual GPU (e.g. Intel integrated Graphics and NVIDIA Graphics) you'll also need nvidia-prime
# pacman -S nvidia-prime
Desktop enviroment and login manager installation¶
You will find instructions on how to install the supported desktop environments and the corresponding login managers below.
Please note, the preferred login manager is always the first one below the chosen desktop environment.
KDE Plasma¶
To install Plasma and KDE's applications, you will need the plasma
and kde-applications
packages' groups respectively:
# pacman -S plasma
# pacman -S kde-applications
it is recommended to not install all the packages in the
kde-applications
group, but rather only a user-chosen subset; here are some recommendations for the average user:ark dolphin dolphin-plugins ffmpegthumbs gwenview kate kcalc kdeconnect kdegraphics-thumbnailers kdesdk-kioslaves kdesdk-thumbnailers kdialog kfind kio-extras kio-gdrive konsole kwalletmanager okular spectacle zeroconf-ioslave
SDDM (Simple Desktop Display Manager) installation¶
# pacman -S sddm sddm-{init}
Add sddm
to the list of startup services.
MATE¶
To install the MATE desktop environment, you can install the packages in the mate
and mate-extra
groups:
# pacman -S mate mate-extra
XFCE4¶
To install the XFCE4 desktop environment, you can install the packages in the xfce4
and xfce4-goodies
groups:
# pacman -S xfce4 xfce4-goodies
LightDM (display manager) installation¶
# pacman -S lightdm lightdm-{init}
Add lightdm
to the list of startup services.
LXQt¶
To install the LXQt desktop environment, you can install the packages in the lxqt
group:
# pacman -S lxqt
LXDM (Lightweight X11 Display Manager) installation¶
# pacman -S lxdm lxdm-{init}
Add lxdm
to the list of startup services.
GNOME¶
To install the GNOME desktop environment, you can install the packages in the gnome
group:
# pacman -S gnome
If you want extra applications (mail client, GNOME Tweaks, and a set of games) you can install the packages in the gnome-extra
group:
# pacman -S gnome-extra
Note: GNOME support is still in the testing phase. Install GNOME at your own risk.
GDM (GNOME Display Manager) installation¶
# pacman -S gdm gdm-{init}
Add gdm
to the list of startup services.
Exiting the chroot¶
You can exit the chroot simply by exiting the interactive shell, like so:
# exit
Unmounting the partitions¶
You can unmount all the partitions you previously mounted by using umount
and the -R
(recursive) option:
# umount -R /mnt
Reboot¶
Issue the reboot
command.
Remember to remove the installation medium.
Post-installation¶
Turn off beeping¶
Just for interactive shells¶
Edit /etc/inputrc
:
# do not bell on tab-completion
set bell-style none <-- uncomment
Or globally¶
Create the file /etc/modprobe.d/blacklist.conf
with the following text inside:
blacklist pcspkr
Install the Bluetooth daemon¶
Install the BlueZ package:
$ sudo pacman -S bluez bluez-{init}
Add bluetoothd
to the list of startup services.
You might need a frontend if you are using MATE or other GTK+ desktop environments; if that's the case, you can install Blueman:
# pacman -S blueman
Install the printing daemon (CUPS)¶
Install the CUPS packages:
$ sudo pacman -S cups libcups cups-filters cups-{init}
Add cupsd
to the list of startup services.
Add your user to the cups
group:
$ sudo usermod -a -G cups $USER
And install system-config-printer
, a GTK frontend:
$ sudo pacman -S system-config-printer
NOTE: Not installing this package could lead to this error:
The name org.fedoraproject.Config.Printing was not provided by any .service files
If KDE Plasma is your desktop environment, it is recommended to install
print-manager
:$ sudo pacman -S print-manager
Install the printer scanner daemon¶
Install the SANE package(s):
pacman -S sane sane-frontends sane-{init}
Add saned
to the list of startup services.
install Samba for local network file sharing¶
Install Samba:
$ sudo pacman -S samba samba-{init}
Download the example Samba configuration file from the Git repo:
$ sudo curl -o /etc/samba/smb.conf "https://git.samba.org/samba.git/?p=samba.git;a=blob_plain;f=examples/smb.conf.default;hb=HEAD"
Add smb
to the list of startup services.
Create a sambashare
group:
$ sudo groupadd sambashare
Add your user to the sambashare
group:
$ sudo usermod -a -G sambashare $USER
If KDE Plasma is your desktop environment, it is recommended to install
kdenetwork-filesharing
:$ sudo pacman -S kdenetwork-filesharing
Configure Pacman¶
It's possible to edit /etc/pacman.conf
to personalize it's behaviour:
- Uncommenting the
Color
option makes the Pacman output colored and more readable; - Uncommenting the
[lib32]
section (and relative include) you can enable multilib support;
If any modifications are made to Pacman's list of repositories, it is mandatory to refresh the database by issuing this command:
# pacman -Sy
Optional: Add the Universe repository¶
You can add Artix's Universe repository to expand your package selection. Add these lines to your /etc/pacman.conf
:
[universe]
Server = https://universe.artixlinux.org/$arch
The Universe repo is not first party nor third party. It is maintained by trusted people, but it is not officially supported. Use it at your own risk.
Optional: Add Arch Linux's repos¶
NOTE: The Artix team has chosen NOT to include Arch's repos as a fallback; this is due to a possible accidental installation of Systemd-dependent packages from those repositories. This can lead to a corrupted, often unusable system. Before enabling these repos, it is highly recommended to try and use the system as it comes.
If you need the Arch Linux repositories, first install the artix-archlinux-support
package and then append the following to /etc/pacman.conf
:
#
# ARCHLINUX
#
#[testing]
#Include = /etc/pacman.d/mirrorlist-arch
[extra]
Include = /etc/pacman.d/mirrorlist-arch
#[community-testing]
#Include = /etc/pacman.d/mirrorlist-arch
[community]
Include = /etc/pacman.d/mirrorlist-arch
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist-arch
#[multilib]
#Include = /etc/pacman.d/mirrorlist-arch
If you use the lib32 repo(s) you can also install lib32-artix-archlinux-support
and uncomment multilib
and the relative Include
statement.
Populate the Pacman keyring with Arch Linux contributors' public keys:
# pacman-key --populate archlinux
Finally, refresh the database:
# pacman -Sy
Speed up the compilation of AUR packages¶
It is possible to speed up significantly the compilation of most AUR packages, because we can specify the number of parallel jobs that GNU Make (and some Make-dependent building systems, like Ninja) can spawn; for more information about GNU Make, refer to the manpage (man make
).
To achieve this, edit /etc/makepkg.conf
:
Search for the MAKEFLAGS
variable, and uncomment it; then change the value from -j2
to -j
+ the cores of your CPU.
For example
MAKEFLAGS="-j16"
To get the number of cores that are on your CPU:
$ nproc --all
Optional: Configure the regulatory domain of your wireless card¶
Install the crda
package:
$ sudo pacman -S crda
Edit /etc/conf.d/wireless-regdom
: you need to uncomment the WIRELESS_REGDOM
line containing your country prefix.
For example
WIRELESS_REGDOM="US"
NOTE: Some wireless cards (expecially Intel's) might arbitrarily choose which regulatory domain to use.
Troubleshooting¶
Steam does not remap non-Xbox controllers to the Xbox layout¶
Create the file /etc/modules-load.d/uinput
with the following text inside:
uinput
mDNS service(s) cannot be found; a service cannot advertise itself via mDNS¶
Install the Avahi package:
$ sudo pacman -S avahi avahi-{init}
And add avahi-daemon
to the list of startup services.
KDE Plasma does not automatically refresh the application list¶
Trigger a manual refresh:
$ kbuildsycoca5