Contents

Arch Linux Installation

Arch gang rise up

Why?

As you can notice, there are various tutorials in the net for the keyword “Arch installation”. As an Arch user, I will recommmend you to take a look at the Arch wiki for such an installation progess instead. So what is the purpose of this post? You may ask.

First of all, this post serves as a snippset for my arch installation. I don’t want to forget anything esstensial for my daily workflow incase I have to make a complete reinstall. Secondly, as personalized as this installation guide may seems, it may help new users in some ways.

Now let’s get started:

Caution
/dev/nvme0n1 should be replaced with /dev/sda depending on different hardware.

Setting up

Setting up network

1
2
ip link
wifi-menu

Disks partition

1
2
lsbk
cgdisk /dev/nvme0n1
Partitions Space Type Lable
/dev/nvme0n1p1 512M ef00 boot
/dev/nvme0n1p2 4G 8200 swap
/dev/nvme0n1p3 remaining 8300 system

Format partitions

1. EFI partition

1
mkfs.fat -F32 /dev/nvme0n1p1

2. Activate swap

1
2
mkswap /dev/nvme0n1p2
swapon /dev/nvme0n1p2

3. System partition

1
mkfs.ext4 /dev/nvme0n1p3

Mount and setting up

1
2
3
4
$ mount /dev/nvme0n1p3 /mnt
$ mkdir /mnt/boot
$ mount /dev/nvme0n1p1 /mnt/boot
$ df

Installation

Select mirror

1
$ nano /etc/pacman.d/mirrorlist

Place your host of choice on top:

1
Server = http://abcdxyz.example.com/archlinux/$repo/os/$arch

Install base system

1
2
3
4
5
$ pacstrap /mnt base linux linux-firmware neovim
$ genfstab -U /mnt
$ genfstab -U /mnt >> /mnt/etc/fstab
$ cd /mnt/etc
$ cat fstab

Chroot into system: setting up timezone, passwd,…

1
2
3
4
5
6
7
8
9
$ arch-chroot /mnt
$ ln -sf /usr/share/zoneinfo/ /  /etc/localtime
$ hwclock --systohc --utc
$ nvim  /etc/locale.gen` then uncomment `en_US.UFT-8`
$ locale-gen
$ echo "LANG=en_US.UFT-8" > /etc/locale.conf
$ nvim /etc/hostname
$ passwd
$ useradd -g users -G wheel,storage,power -m ashpex

or

1
localectl set-locale LANG=en_US.UTF-8

Setting up Bootloader

1
2
3
4
$ pacman -S grub efibootmgr
$ grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
$ pacman -S os-prober
$ grub-mkconfig -o /boot/grub/grub.cfg

Setting up wifi

1
2
3
$ pacman -S networkmanager wireless_tools wpa_supplicant network-manager-applet
$ exit
$ reboot

Install yay

1
2
3
$ git clone https://aur.archlinux.org/yay.git
$ cd yay
$ makepkg -si

Enable ntp

1
2
3
4
$ pacman -S ntp
$ systemctl enable ntpd
$ systemctl start ntpd
$ timedatectl set-ntp 1

Install DEs or WM.

Gnome

1
2
3
4
5
6
$ sudo pacman -Syu
$ sudo pacman -S xorg xorg-server
$ sudo pacman -S gnome
$ sudo systemctl start gdm.service
$ sudo systemctl enable gdm.service
$ sudo pacman -S pulseaudio pulseaudio-alsa

i3

1
$ sudo pacman -S i3-gaps dunst dmenu picom feh mpd mpv ranger rofi scrot neovim xorg xorg-server pulseaudio pulseaudio-alsa alsa-utils nemo termite firefox git zathura
1
$ yay polybar ranger-git
Tip
Install light package to control brightness. It works better than xbacklight and supports Wayland.

XFCE

1
sudo pacman -S xfce4 xfce4-goodies

Troubleshooting

Wifi icon

Initial Requirements

  1. Hosts

Check the configuration of your /etc/hosts file, a valid configuration looks like this:

1
#<ip-address> <hostname.domain.org> <hostname> 127.0.0.1 localhost.localdomain yourHostname ::1 localhost.localdomain yourHostname 
  1. Devices
  • You can identify your networking devices like this:
1
lspci | grep -i net
  • If your device is not listed, it is maybe an usb-device, so try this command:
1
lsusb
  • With the following command you can check the current state of all your network-devices:
1
ip link

Installation of Required tools

  1. Install the wpa_supplicant tools
1
sudo pacman -S wpa_supplicant
  1. the wireless tools
1
sudo pacman -S wireless_tools
  1. Install the networkmanager
1
sudo pacman -S networkmanager
  1. Install the network-manager-applet aka nm-applet
1
sudo pacman -S network-manager-applet
  1. Install gnome-keyring
1
sudo pacman -S gnome-keyring
  1. Configuration
  • Make the networkmanager start on boot:
1
sudo systemctl enable NetworkManager.service
  1. Disable dhcpcd
  • Since networkmanager wants to be the one who handles the dhcpcd related stuff, you have to disable and stop dhcpcd:
1
2
3
4
$ sudo systemctl disable dhcpcd.service 
$ sudo systemctl disable dhcpcd@.service 
$ sudo systemctl stop dhcpcd.service 
$ sudo systemctl stop dhcpcd@.service
  1. Enable wpa_supplicant, if you want to use your wireless connection:
1
sudo systemctl enable wpa_supplicant.service
  1. Add your user to the network group:
1
gpasswd -a <USERNAME> network
  1. Turn off your network interface controllers, in my case eth0 and wlan0:
1
2
$ ip link set down eth0
$ ip link set down wlan0
  • Now start wpa_supplicant:
1
sudo systemctl start wpa_supplicant.service
  • Now Start the networkmanager:
1
sudo systemctl start NetworkManager.service

Finally,you should see the tray-icon on the top bar.

Source

Sudoers

Logging as root

1
visudo

Add another line after this one

1
root ALL=(ALL) ALL

With: (by pressing O, then :X to save)

1
username ALL=(ALL) ALL

Source