This installation guide is bases on the official Arch Linux page.
To set the keyboard layout:
loadkeys la-latin1
Available layouts can be listed with:
ls /usr/share/kbd/keymaps/**/*.map.gz
To verify the boot mode, list the efivars directory:
ls /sys/firmware/efi/efivars
If the command shows the directory without error, then the system is booted in UEFI mode. If the directory does not exist, the system may be booted in BIOS mode.
It is recommended to coccect to the interner through an Ethernet cable.
Use timedatectl to ensure the system clock is accurate:
timedatectl status
To identify the devices, use lsblk.
Use cfdisk to modify partition tables:
cfdisk /dev/the_disk_to_be_partitiones
Mount point | Type | size |
---|---|---|
/mnt/boot/efi | Efi system | 1 GB |
[SWAP] | Linux swap | More than 512 MB |
/mnt | Root(/) | Desired size |
/mnt/home | Home | Remainder of the device |
Format the partitions with the proper file system.
mkfs.ext4 -L ROOT /dev/root_partition
mkfs.ext4 -L HOME /dev/home_partition
mkswap -L SWAP /dev/swap_partition
mkfs.fat -F 32 /dev/efi_partition
fatlabel /dev/efi_partition BOOT
To mount the partitions created is the following.
mount /dev/root_partition /mnt
mount --mkdir /dev/efi_partition /mnt/boot/efi
mount --mkdir /dev/home_partition /mnt/home
swapon /dev/swap_partition
Use the pacstrap script to install the base package, Linux kernel and firmware for common hardware:
pacstrap -K /base linux-zen linux-firmware
You can add other packages you need or use pacman while chrooted into the new systm.
Packages I recommendes installing.
neovim networkmanager grub os-prober efibootmgr
Generate an fstab file.
genfstab -L /mnt >> /mnt/etc/fstab
Change root into the new system:
arch-chroot /mnt
Set the time zone:
ls -sf /usr/share/zoneinfo/Region/City /etc/localtime
Run hwclock to generate /etc/edjtime:
hwclock --systohc
Edit /etc/locale.gen. Generate the locales by running.
locale-gen
Create the locale.conf file and vconsole.conf.
echo "LANG=es_MX.UTF-8" >> /etc/locale.conf
echo "KEYMAP=la-latin1" >> /etc/vconsole.conf
Create the hostname file.
echo "hostname" >> /etc/hostname
Enable NetworkManager services if the package is installed.
pacman -S networkmanager
systemctl enable NetworkManager.services
Set the root password
passwd
Install the GRUB bootloader
pacman -S grub efibootmgr os-prober
Execute the following command to install the GRUB EFI.
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
Add the following to _/etc/default/grub. then re-run grub-mkconfig.
GRUB_DISABLE_OS_PROBER=false