GNU/Linux {docs}

Installation

Condensed step by step instructions: txt pdf

First steps

Keyboard layout:

# loadkeys es

If UEFI mode is enabled on an UEFI motherboard, Archiso will boot Arch Linux accordingly via systemd-boot. To verify this, list the efivars directory:

# ls /sys/firmware/efi/efivars

Configure WiFi:

# wpa_passphrase MOVISTAR_CFCD QlatrCMgyBpDGySYSek > /etc/wpa_supplicant/foo.conf
# wpa_supplicant -B -i wlp3s0 -c /etc/wpa_supplicant/foo.conf
# dhcpcd wlp3s0

Update system clock:

# timedatectl set-ntp true

🔔️ Note
If you are installing Arch Linux in BIOS with GPT partition, go further down to the section "BIOS Installation with GPT partitioning".
The format and mount commands right below this alert is for a partition that has already a /boot/efi partition and grub installed in the disk.

Format partition:

# mkfs.ext4 /dev/sdbX

Mount the file system:

# mount /dev/sdaX /mnt

Install the base packages

Optional and recommended: select the six fastest mirrors for downloading:

# cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
# sed -i 's/^#Server/Server/' /etc/pacman.d/mirrorlist.backup
# rankmirrors -n 6 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist

Mandatory: Install the base packages:

# pacstrap /mnt base base-devel

Configure the system

Fstab

Generate an fstab file (use -U or -L to define by UUID or labels, respectively):

# genfstab -U /mnt >> /mnt/etc/fstab

Check the resulting file in /mnt/etc/fstab afterwards, and edit it in case of errors.

Chroot

Change root into the new system:

# arch-chroot /mnt

Time zone

Set the time zone:

# ln -sf /usr/share/zoneinfo/Region/City /etc/localtime

Run hwclock(8) to generate /etc/adjtime:

# hwclock --systohc

This command assumes the hardware clock is set to UTC. See Time#Time standard for details.

Locale

Uncomment en_US.UTF-8 UTF-8 and other needed localizations in /etc/locale.gen, and generate them with:

# locale-gen

Set the LANG variable in locale.conf(5) accordingly, for example:

/etc/locale.conf
LANG=en_US.UTF-8

If you set the keyboard layout, make the changes persistent in vconsole.conf(5):

/etc/vconsole.conf
KEYMAP=es

Enable periodic TRIM service (for SSD drives):

# systemctl enable fstrim.timer

Extra packages for auto completion and wifi configuration

# pacman -S bash-completion wpa_supplicant dialog

Fancy command-line calculator

# pacman -S bc

Root password and user setup

First set a password for root with:

# passwd

Now add a default user with:

# useradd -m -g users -G wheel,storage,power,audio -s /bin/bash someusername

and set a pass for that user:

# passwd someusername

Setting up sudoers

Now we have to edit the sudoers file to give this user the much needed sudo powers. Don't open this file with a regular editor; it must be edited with visudo command.

# EDITOR=nano visudo

Uncomment:

%wheel ALL=(ALL) ALL

And we’re going to make sudoers require typing the root password instead of their own password by adding this line at the end of the file:

Defaults rootpw

Save and close the file

Graphic Card (i915)

# pacman -S mesa

Xorg

# pacman -S xorg-server xorg-apps xorg-xinit xorg-twm xorg-xclock xterm

press enter (default)

GUI option 1

LXDM and XFCE

Install LXDM and XFCE:

# pacman -S lxdm xfce4 xcfe4-screenshooter

Start LXDM at boot:

# systemctl enable lxdm.service

Configure LXDM to launch XFCE by editing /etc/lxdm/lxdm.conf:

Edit and uncomment line # session=/usr/bin/startlxdm and convert it to session=/usr/bin/startxfce4

GUI option 2

XDM and Openbox

If display manager XDM is used:

# pacman -S xorg-xdm openbox

Start XDM at boot:

# systemctl enable xdm.service

Configure XDM to launch Openbox after login:

$ echo openbox-session > ~/.xsession
$ chmod 700 ~/.xsession

If display manager XDM is not used:

Be sure that XDM is not enabled. You can disable it by issuing the command: systemctl disable xdm.service

Configure xinitrc to launch Openbox when launching startx:

$ cp /etc/X11/xinit/xinitrc ~/.xinitrc

Edit ~/.xinitrc and add exec openbox-session above any other exec line in the file (the first exec line will be executed, the rest will be ignored)

To configure Openbox

$ cp -R /etc/xdg/openbox ~/.config/
$ vi .config/openbox/menu.xml

Sound

Install ALSA , PulseAudio and PulseAudio Plugin for XCFE4:

# pacman -S alsa-utils pulseaudio xfce4-pulseaudio-plugin Right click on desktop panel ➡️ Panel ➡️ Add new items ➡️ Select PulseAudio Plugin ➡️ Add

WiFi

For the sake of having a simple graphical interface that works across Desktop Environments, we’ll install NetworkManager:

# pacman -S networkmanager network-manager-applet

enable network manager:

# systemctl enable NetworkManager.service

Install trayer (if using TWM so the NetworkManager applet appears):

# pacman -S trayer

Install stalonetray if using LXDE/XCFE/KDE so the NetworkManager applet appears:

# pacman -S stalonetray

BIOS Installation with GPT Partitioning

Partition the disk

# gdisk /dev/sda
o ➡️ y ➡️ enter
n ➡️ enter ➡️ enter ➡️ enter ➡️ +8M ➡️ ef02 ➡️ enter
n ➡️ enter ➡️ enter ➡️ enter ➡️ +500M ➡️ 8300 ➡️ enter
n ➡️ enter ➡️ enter ➡️ enter ➡️ +20G ➡️ 8300 ➡️ enter
n ➡️ enter ➡️ enter ➡️ enter ➡️ +4G ➡️ 8200 ➡️ enter
w ➡️ enter ➡️ y ➡️ enter

Format the partitions

# mkfs.ext4 /dev/sda2
# mkfs.ext4 /dev/sda3
# mkswap /dev/sda4
# swapon /dev/sda4

Mount the file system

# mount /dev/sda3 /mnt
# mkdir /mnt/boot
# mount /dev/sda2 /mnt/boot

Continue with installation from step "Install the base packages" further up. Once you followed all the steps and finished "WiFi" installation, continue below for GRUB installation and configuration:

GRUB

# pacman -Sy grub intel-ucode
# grub-install --target=i386-pc /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg

Useful Utilities

  • bc (CLI calculator)
  • galculator (GTK+ scientific calculator)
  • xfce4-screenshooter (screenshot utility)
  • gnome-screenshot (screenshot utility)
  • ristretto (image viewer utility)
  • stalonetray (system tray)
  • transmission-gtk (torrent client)
  • leafpad (text editor)

XFCE Customization

  • Right click on the Panel ➡️ Panel ➡️ Panel Preferences ➡️ Panel drop down menu ➡️ Panel 2 ➡️ Delete (substract icon)
  • Right click on the Panel ➡️ Panel ➡️ Panel Preferences ➡️ Panel drop down menu ➡️ Panel 1 ➡️ Display tab ➡️ Mode: Deskbar
  • Settings ➡️ Appearance ➡️ Style tab ➡️ Xcfe-flat
  • Settings ➡️ Window Manager ➡️ Style tab ➡️ Linea

Web Browsers

Firefox

# pacman -S firefox

Opera

# pacman -S opera opera-ffmpeg-codecs

Midori

# pacman -S midori gst-plugins-base gst-plugins-good gst-libav

Falkon

# pacman -S falkon

# pacman -S elinks