In this post, we will look at the installation of Arch Linux on a Dell Vostro laptop. The laptop comes with a pre-installed copy of Windows 10 and boots in UEFI mode.
- Pre-Installation
- Setup Wifi
- Partition Disk and setup LVM
- Install Kernel and Other Applications
- Install and Configure GRUB
- Setup Networking Wifi
- Install Gnome Desktop Environment
- Setup Sound Drivers
- Setup Bluetooth
Pre-Installation
Get a copy of Arch Linux, and create a bootable USB. I prefer using Rufus, but you can find many tools online that can help you create a bootable USB for installing Linux.
The next step is to update your BIOS configuration to
- disable Secure Boot
- change the Storage Mode to AHCI. (The default mode is RAID)
You can now boot using the bootable USB you created before. You can use F12 to access the Boot/BIOS menu.
Setup Wifi
After you boot, you will need a working internet connection. If you do not have a wired Ethernet connection, you can try setting up your Wifi connection.
Partition Disk and setup LVM
List available disks, and identify the disk to partition
lsblk
Create a new partition (for example: /dev/nvme0n1p4) large enough to use with LVM using gdisk and set partition type = 8300 (Linux Filesystem)
gdisk /dev/nvme0n1
Create Physical Volume
pvcreate /dev/nvme0n1p4
pvs # list created physical volume
Create Volume Group - archvg
vgcreate archvg /dev/nvme0n1p4
vgs # list created volume group
Create Logical Volumes
lvcreate -L 10G archvg -n homevol
lvcreate -L 100G archvg -n rootvol
lvs # list created logical volumes
Mount the logical volumes
mount /dev/mapper/archvg-rootvol /mnt
mkdir /mnt/home
mount /dev/mapper/archvg-homevol /mnt/home
mkdir /mnt/efi
mount /dev/nvme0n1p1 /mnt/efi # mount the EFI system partition, we will use it later for configuring GRUB bootloader
Generate fstab file
genfstab -U /mnt >> /mnt/etc/fstab
Install Kernel and Other Applications
arch-chroot /mnt
pacstrap -K /mnt base linux-lts linux-firmware lvm2 networkmanager vim man-db man-pages iproute2 sudo
Setup timezone and localization
ln -sf /usr/share/zoneinfo/YourRegion/YourCity /etc/localtime
hwclock --systohc
vi /etc/locale.gen # Uncomment en_US.UTF-8 UTF-8 or any other required locales
locale-gen
echo LANG=en_US.UTF-8 > /etc/locale.conf # or any other locale you require
Install and Configure GRUB
grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
Setup Networking Wifi
echo myhostname > /etc/hostname
nmcli device wifi connect SSID_or_BSSID password wifi_password
Install Gnome Desktop Environment
pacman -Syu gnome gnome-tweaks
Setup Sound Drivers
pacman -Syu sof-firmware
Setup Bluetooth
pacman -Syu bluez bluez-utils gnome-bluetooth-3.0