It’s been a long time since I have been using Arch Linux and loving it since because of its flexibility. In the mean time, I have installed the same OS for many times because I tried new things and crashed a lot of installed things. Literally, thinking about the time to repair, I just re-installed the OS. It just feels quick and easy to clear out all your garbage. However, it’s a pain to setup all those applications and configuration. That’s why I am writing this where I can find the steps I have been following to install and setup my machine my way :).
Okay, let’s start with the installation. Previously, I tried to run a live Ubuntu OS and then install either by the bootstrap image or using the LiveCD Image. But, nowadays, it seems the installing from live arch USB seems to be the easiest and quickest as it skips a lot of steps.
- 
Connect to the internet
- 
Use ethernet or run
wifi-menucommand to connect to a WiFi Connection. - 
Check connection:
ping archlinux.org 
 - 
 - 
Partition the disks
- 
The partitions can be listed from:
fdisk -l - 
Usually, I prefer to prepare the partition before the installation. Still, you can find the steps here to perform the partition actions.
 - 
Format the partition
mkfs.ext4 /dev/sda1 
 - 
 - 
Mount the file system
mount /dev/sda1 /mnt - 
Installation
- 
Select and rank the mirrors, ranking the mirrors would help to perform the installation quicker.
# Backup cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup # Uncomment every mirror sed -i 's/^#Server/Server/' /etc/pacman.d/mirrorlist.backup # Rank mirrors rankmirrors /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist - 
Install the base packages:
pacstrap /mnt base base-develbase-develis optional, can be installed later. 
 - 
 - 
Configure the system
- 
Fstab
genfstab -U /mnt >> /mnt/etc/fstab - 
Chroot
arch-chroot /mnt - 
Time zone
ln -sf /usr/share/zoneinfo/Region/City /etc/localtime hwclock --systohc - 
Locale Uncomment
en_US.UTF-8 UTF-8and other needed localizations in/etc/locale.gen, and generate them with:locale-genSet the LANG variable in
/etc/locale.confaccordingly:LANG=en_US.UTF-8To set the keyboard layout, make the changes persistent in
/etc/shell.conf:KEYMAP=us - 
Hostname Create the
hostnamefile/etc/hostname:myhostnameAdd matching entries to
/etc/hosts:127.0.0.1 localhost ::1 localhost 127.0.1.1 myhostname.localdomain myhostname - 
Network configuration
pacman -S networkmanager dhclientFor wifi:
pacman -S iw wpa_supplicant dialog - 
Initramfs
mkinitcpio -p linux - 
Root password
passwd - 
Boot loader (GRUB - UEFI) Install the package
grubandefibootmgr:pacman -S grub efibootmgrMount EFI partition(/dev/sda3):
mkir /boot/efi mount /dev/sda3 /boot/efiInstall GRUB UEFI to
/boot/efi:grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=arch_grubGenerate the main configuration file:
grub-mkconfig -o /boot/grub/grub.cfgNote: For NVIDIA card holders, unless you install the
nvidiadrivers, addmodprobe.blacklist=nouveauin/etc/default/gruband re-generate the main configuration file.GRUB_CMDLINE_LINUX_DEFAULT="quiet modprobe.blacklist=nouveau"Remove
modprobe.blacklist=nouveauafter installingnvidiadrivers. 
 - 
 - 
Reboot, enjoy.
 - 
For post-installation steps, refer to Arch Linux post installation.