Keyboard layout:
# loadkeys esIf 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/efivarsConfigure WiFi:
# wpa_passphrase MOVISTAR_CFCD QlatrCMgyBpDGySYSekK > /etc/wpa_supplicant/foo.conf# wpa_supplicant -B -i wlp3s0 -c /etc/wpa_supplicant/foo.conf# dhcpcd wlp3s0Update system clock:
# timedatectl set-ntp trueIf 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 text is for a partition that has already a /boot/efi partition and grub installed in the disk
Format partition:
# mkfs.ext4 /dev/sdbXMount the file system:
# mount /dev/sdaX /mntOptional 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/mirrorlistMandatory: Install the base packages:
# pacstrap /mnt base base-develFstab
Generate an fstab file (use -U or -L to define by UUID or labels, respectively):
# genfstab -U /mnt >> /mnt/etc/fstabCheck the resulting file in /mnt/etc/fstab afterwards, and edit it in case of errors.
Chroot
Change root into the new system:
# arch-chroot /mntTime zone
Set the time zone:
# ln -sf /usr/share/zoneinfo/Region/City /etc/localtimeRun hwclock(8) to generate /etc/adjtime:
# hwclock --systohcThis 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-genSet the LANG variable in locale.conf(5) accordingly, for example:
/etc/locale.confLANG=en_US.UTF-8If you set the keyboard layout, make the changes persistent in vconsole.conf(5):
/etc/vconsole.confKEYMAP=esEnable periodic TRIM service (for SSD drives):
# systemctl enable fstrim.timerExtra packages for auto completion and wifi configuration
# pacman -S bash-completion wpa_supplicant dialogFancy command-line calculator
# pacman -S bcFirst set a password for root with:
# passwdNow add a default user with:
# useradd -m -g users -G wheel,storage,power,audio -s /bin/bash someusernameand set a pass for that user:
# passwd someusernameNow 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 visudoUncomment:
%wheel ALL=(ALL) ALLAnd we’re going to make sudoers require typing the root password instead of their own password by addingthis line at the end of the file:
Defaults rootpwSave and close the file
# pacman -S mesa# pacman -S xorg-server xorg-apps xorg-xinit xorg-twm xorg-xclock xtermpress enter (default)
GUI option 1: Display manager and Desktop Environment
Install LXDM and XFCE:
# pacman -S lxdm xfce4 xcfe4-screenshooterStart LXDM at boot:
# systemctl enable lxdm.serviceConfigure 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: Light weight display manager and light weight windows manager:
If display manager XDM is used:
# pacman -S xorg-xdm openboxStart XDM at boot:
# systemctl enable xdm.serviceConfigure XDM to launch Openbox after login:
$ echo openbox-session > ~/.xsession$ chmod 700 ~/.xsessionIf 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 ~/.xinitrcEdit ~/.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.xmlIntall ALSA , PulseAudio and PulseAudio Plugin for XCFE4:
# pacman -S alsa-utils pulseaudio xfce4-pulseaudio-pluginRight click on desktop panel -> Panel -> Add new items -> Select PulseAudio Plugin -> Add
For the sake of having a simple graphical interface that works across Desktop Environments, we’ll install NetworkManager:
# pacman -S networkmanager network-manager-appletenable network manager:
# systemctl enable NetworkManager.serviceInstall trayer (if using TWM so the NetworkManager applet appears):
# pacman -S trayerInstall stalonetray if using LXDE/XCFE/KDE so the NetworkManager applet appears:
# pacman -S stalonetrayPartition the disk
# gdisk /dev/sdao -> y -> entern -> enter -> enter -> enter -> +8M -> ef02 -> entern -> enter -> enter -> enter -> +500M -> 8300 -> entern -> enter -> enter -> enter -> +20G -> 8300 -> enter n -> enter -> enter -> enter -> +4G -> 8200 -> enterw -> enter -> y -> enterFormat the partitions
# mkfs.ext4 /dev/sda2# mkfs.ext4 /dev/sda3# mkswap /dev/sda4# swapon /dev/sda4Mount the file system
# mount /dev/sda3 /mnt# mkdir /mnt/boot# mount /dev/sda2 /mnt/bootContinue 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.cfgbc (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)
Right click on the Panel -> Panel -> Panel Preferences -> Panel drop down menu -> Panel 2 -> Delete (subsctract icon)
Right click on the Panel -> Panel -> Panel Preferences -> Panel drop down menu -> Panel 1 ->Display tab -> Mode: Deskbar
Settings -> Appaerance -> Style tab -> Xcfe-flat
Settings -> Window Manager -> Style tab -> Linea
Firefox
# pacman -S firefoxOpera
# pacman -S opera opera-ffmpeg-codecsMidori
# pacman -S midori gst-plugins-base gst-plugins-good gst-libavFalkon
# pacman -S falkonElinks (text based)
# pacman -S elinks