Skip to content

Instantly share code, notes, and snippets.

@joefromct
Created February 12, 2018 19:06
Show Gist options
  • Save joefromct/40a7d8ca57653a508671a03cdad43f4e to your computer and use it in GitHub Desktop.
Save joefromct/40a7d8ca57653a508671a03cdad43f4e to your computer and use it in GitHub Desktop.
# MY ARCH INSTALL GUIDE
# Change /dev/nvme**** to whatever drive/partitons you want
# This basically gets you to a GUI login
parted
# rm * # dunno if * will work but, delete all partitions
# mkpart ESP fat32 1MiB 513MiB
# set 1 boot on
# mkpart primary ext4 513MiB 50%
# quit
cryptsetup -y -v luksFormat /dev/nvme0n1p2 # setup encrypted container, set container password
cryptsetup open /dev/nvme0n1p2 cryptroot # "mount" the encrypted container
mkfs.ext4 /dev/mapper/cryptroot # make an ext4 filesystem in the encrypted container
mount /dev/mapper/cryptroot /mnt # mount your open container
mkdir /mnt/boot
mount /dev/nvme0n1p1 /mnt/boot # mount boot partition inside /mnt
echo `Server = https://mirrors.kernel.org/archlinux/$repo/os/$arch` > /etc/pacman.d/mirrorlist
pacstrap /mnt base
genfstab -U /mnt >> /mnt/etc/fstab
cat /mnt/etc/fstab #Does it look sane?
arch-chroot /mnt
ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
hwclock --systohc
echo `en_US.UTF-8 UTF-8` > /etc/locale.gen
locale-gen
echo `LANG=en_US.UTF-8` > /etc/locale.conf
echo `XXXXXXX` > /etc/hostname
passwd # set root password
useradd -m -g users -G wheel -s /usr/bin/zsh USER
passwd USER
bootctl --path=/boot install
nano /etc/mkinitcpio.conf
# MODULES="ext4 dm_crypt"
# HOOKS="base systemd autodetect modconf keyboard block sd-encrypt filesystems fsck"
nano /boot/loader/loader.conf
# default 0Arch
# timeout 5
# editor 0
nano /boot/loader/entries/0Arch.conf
# title Arch Normal Boot
# linux /vmlinuz-linux
# initrd /initramfs-linux.img
# options rw luks.uuid=<OUTPUTOF`cryptsetup luksUUID /dev/nvme0n1p2`> luks.name=<OUTPUTOF`cryptsetup luksUUID /dev/nvme0n1p2`>=cryptroot root=/dev/mapper/cryptroot luks.options=discard disable_mode=1
mkinitcpio -p linux
exit
umount -R /mnt
reboot
# If you need to troubleshoot reboot using the live image then follow this to get setup
cryptsetup open /dev/nvme0n1p2 cryptroot
mount /dev/mapper/cryptroot /mnt
mount /dev/nvme0n1p1 /mnt/boot
arch-chroot /mnt
# After booting successfully and logging in as root
systemctl enable dhcpcd.service
systemctl start dhcpcd.service
ip addr # check and make sure you got an ip, might take a second
ping google # make sure you gots interwebs
pacman -S gdm gnome i3 sway terminator xterm zsh
systemctl enable gdm.service
systemctl start gdm.service
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment