archlinux/README.md

6.1 KiB

Installing Arch Linux

John Hammond | September 29th, 2019

This are my notes while installing and setting up my Arch Linux environment.

I did this on my DELL XPS 15 laptop on September 29th, 2019.

Downloading the ISO

I downloaded the archlinux-2019.09.01-x86_64.iso from here: https://www.archlinux.org/download/. I searched for a United States mirror and chose one: specifically, I used: http://mirrors.acm.wpi.edu/archlinux/iso/2019.09.01/

Burning the ISO to a Disc

I still had Ubuntu at the time, so I burned the Arch Linux ISO to a disc with [Brasero].

Booting the Arch Linux Live Disc

On my DELL XPS 15, I needed to spam the F12 key when booting to get to the menu and choose "Boot from CD". I made sure to boot in UEFI.

Once I got into the Arch Linux prompt, I followed the instructions from their Installation Guide.

I didn't need to change the keyboard layout, so I went on just to verify the UEFI boot mode:

ls /sys/firmware/efi/efivars

This had results, so I knew I successfully booted with UEFI. Good enough!

Connecting to the Internet

On my DELL XPS 15, I wanted to connect to the Internet right away. To get started, I needed to know the name of the interface I was working with.

ip link

In my case, my interface name was wlp59s0.

Now I needed to actually connect to my Wi-Fi. I used netctl to keep it easy.

cp /etc/netctl/examples/wireless-wpa /etc/netctl/home
vim /etc/netctl/home

With that configuration file, I could fill in the interface name, SSID, and Wi-Fi password.

net start home

At that point, I could connect to the Internet!

Updating the Time Service

timedatectl set-ntp true

Partitioning the Disks

I used this command to determine which devices are set up already.

fdisk -l

In my case of my DELL XPS 15, I had /dev/nvmen1p1, /dev/nvmen1p2 and /dev/nvmen1p3 all set up (because I did have Ubuntu installed on this previously).

My /dev/nvmen1p1 was the EFI partition for GRUB, /dev/nvmen1p2 was my EXT4 filesystem, and /dev/nvmen1p3 was my swapspace.

If you needed to partition the drive manually, like you were setting up in a virtual machine, I would recommend using cfdisk.

In my case, I needed to format these partitions with their appropriate purposes.

mkfs.ext4 /dev/nvmen1p2
mkswap /dev/nvmen1p3
swapon /dev/nvmen1p3

I handled the /dev/nvmen1p1 EFI partition later, when I would install GRUB.

Mounting the Filesystem

mount /dev/nvmen1p2 /mnt

Installing Arch

pacstrap /mnt base

Configure the system

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

Chroot into the new filesystem

arch-chroot /mnt

Setting the timezone

ln -sf /usr/share/zoneinfo/EST5EDT /etc/localtime
hwclock --systohc

Localization

sed 's/#en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/g' /etc/locale.gen
echo "LANG=en_US.UTF-8" > /etc/locale.conf

Hostname

echo arch > /etc/hostname

cat <<EOF >/etc/hosts
127.0.0.1 localhost
::1	      localhost
127.0.1.1 arch.localdomain arch
EOF

Set root passwd

passwd

Install GRUB

pacman -Sy grub os-prober

When I was installing via virtual machine, I just needed to:

grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg

When I was installing on my hard drive I did:

grub-install /dev/nvmen1p3
grub-mkconfig -o /boot/grub/grub.cfg

DO NOT forget to copy over a network profile for netctl and install netctl and network-manager so you still have internet access when you reboot into the real system

Adding a new user

mkdir /home/john
useradd john
passwd john

Getting Internet

When I was on a virtual machine, I needed to run these commands to get an IP address.

dhcpcd
dhcpcd -4

Installing Sudo

pacman -Sy sudo

Installing Audio Drivers

sudo pacman -Sy pulseaudio pavucontrol

I needed to restart my computer after running these commands for the sound to start. (There was probably a service, but I couldn't find it...)

Getting yay and AUR Support

First get ready to work with PKGBUILD files:

sudo pacman -S --needed base-devel

Then get yay:

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

Correcting .bashrc

I copy and pasted the default Ubuntu bashrc from here:

Installing tmux

pacman -Sy tmux
echo 'source "$HOME/.bashrc"' > ~/.bashrc

Installing xrandr

pacman -S xorg-xrandr

Setting proper monitor size

xrandr --output DP-3 --scale 2x2 --mode 2560x1080

Getting monokai in vim

First I downloaded vim-plug. https://github.com/junegunn/vim-plug

curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Then, I could modify my ~/.vimrc file to what it is now. Then I would run :PlugInstall from within vim and it would install the module for me.

Tmux would act strange though -- I would need to be sure to remove all of the tmux sessions before I could see the vim changes take effect.

tmux ls # to see the running sessions
tmux kill-session -t 2   # to kill the other sessions

Installing OBS-Studio

yay -S obs-studio

Installing FontAwesome

yay -S ttf-font-awesome

This is incomplete. I need to keep working on this (1109 September 30th 2019)