Originally from https://gist.github.com/mattiaslundberg/8620837. Copied here for my own archive. Configure the wifi: wifi-menu Create partitions with fdisk Setup the encryption of the system cryptsetup luksFormat --type luks2 /dev/sdaX Open the partition and make an ext4 file system cryptsetup open /dev/sdaX cryptroot mkfs.ext4 /dev/mapper/cryptroot Mount the new system mount /dev/mapper/cryptroot /mnt # /mnt is the installed system mkdir /mnt/boot mount /dev/sda2 /mnt/boot mkdir /mnt/boot/efi mount /dev/sda1 /mnt/boot/efi Install the system also includes stuff needed for starting wifi when first booting into the newly installed system Unless vim and zsh are desired these can be removed from the command pacstrap /mnt base base-devel grub-efi-x86_64 zsh vim git efibootmgr dialog wpa_supplicant Setup fstab genfstab -pU /mnt >> /mnt/etc/fstab Make /tmp a ramdisk (add the following line to /mnt/etc/fstab) tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0 Enter the new system arch-chroot /mnt /bin/bash Setup system clock to local timezone ln -s /usr/share/zoneinfo/America/New_York /etc/localtime hwclock --systohc --utc Set the hostname echo MYHOSTNAME > /etc/hostname Update locale echo LANG=en_US.UTF-8 >> /etc/locale.conf echo LANGUAGE=en_US >> /etc/locale.conf echo LC_ALL=C >> /etc/locale.conf Set password for root passwd Configure mkinitcpio with modules needed for the initrd image * Add 'ext4' to MODULES * Add 'keyboard', 'keymap' and 'encrypt' to HOOKS before filesystems vim /etc/mkinitcpio.conf Regenerate initrd image mkinitcpio -p linux Setup grub grub-install In /etc/default/grub edit the line GRUB_CMDLINE_LINUX to GRUB_CMDLINE_LINUX="cryptdevice=/dev/sdaX:luks:allow-discards" then run: grub-mkconfig -o /boot/grub/grub.cfg Reboot