Skip to content

Instantly share code, notes, and snippets.

@luctrudeau
Last active January 25, 2018 14:40
Show Gist options
  • Save luctrudeau/b252b02dfd7179e7546307de6580e592 to your computer and use it in GitHub Desktop.
Save luctrudeau/b252b02dfd7179e7546307de6580e592 to your computer and use it in GitHub Desktop.
Arch Linux Installation Notes

Pre-Install

Connect to internet

wifi-setup

Setup wifi using wifi-mency

Update system clock

timedatectl set-ntp true

Partitions

For some reason, the X299 Tomahawk AC does not allow to boot an NVME SSD using UEFI, so we need to do a legaxy boot. This machine hosts a 250GB NVME SSD. My setup is really simple: 100 MiB boot partition, 32 GiB root partition and the rest is for home.

parted /dev/nvme0n1
(parted) mklabel msdos
(parted) mkpart primary ext4 1MiB 100MiB
(parted) set 1 boot on
(parted) mkpart primary ext4 100MiB 32GiB
(parted) mkpart primary ext4 32GiB 100%
mkfs.ext4 /dev/nvme0n1p1
mkfs.ext4 /dev/nvme0n1p2
mkfs.ext4 /dev/nvme0n1p3

Mount File Systems

mount /dev/nvme0n1p2 /mnt
mkdir /mnt/boot
mount /dev/nvme0n1p1 /mnt/boot
mkdir /mnt/home
mount /dev/nvme0n1p3 /mnt/home

Installation

Select the mirrors

This is not in the Arch install wiki, and considerably speeds the download. Comment out every server and uncomment Canadian severs

cp /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist.backup
rankmirrors -n 10 /etc/pacman.d/mirrorlist.backup > /etc/pacman.d/mirrorlist

Install Base Packages

pacstrap /mnt base base-devel

Configure System

Fstab

genfstab -U /mnt >> /mnt/etc/fstab

Chroot

arch-chroot /mnt

Timezone

ln -sf /usr/share/zoneinfo/Canada/Eastern /etc/localtime
hwclock --systohc

Vim

pacman -S vim

Locale

Uncomment en_CA.UTF-8 UTF8 in /etc/locale.gen

locale-gen

Add LANG=en_CA.UTF-8 in /etc/locale.conf

Hostname

This computer is called labeast

/etc/hostname
-------------
labeast
/etc/hosts
----------
127.0.0.1        labeast.localdomain    labeast

Network Configuration

pacman -S iw wpa_supplicant netctl dialog

Generate a netctl profile using wifi-menu and load it on start up

sudo wifi-menu -o
sudo netctl start wlp3s0-Wi-Fi
sudo netctl enable wlp3s0-Wi-Fi

Root Password

passwd

Bootloader

pacman -S grub intel-ucode
grub-install --target=i386-pc /dev/nvme0n1
grub-mkconfig -o /boot/grub/grub.cfg

Post Installation

disable root ssh

/etc/ssh/sshd_config
--------------------
PasswordAuthentication no
PermitRootLogin no

Firewall

Enable SSH for local network only.

pacman -S ufw
ufw default deny
ufw limit from 10.0.1.0/24 to any port 22
ufw enable

Sudo

pacman -S sudo

Using visudo, uncomment %wheel ALL=(ALL) ALL in /etc/sudoers, to allow users in wheel to sudo.

Lock root account

passwd -l root

Sway

pacman -S sway
pacman -S rxvt-unicode
ttf-font-awesome
ttf-droid
adobe-source-code-pro-fonts

sudo pacman -S powerline powerline-fonts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment