This guide assumes the drive has already been partitioned and the EFI bootloader is already in place. I'll include these detailed steps the next time I need to do it. As I'm writing up these steps, I'm performing them on a machine that's already had it done, and I can't spend the time to start from scratch this time.
- Start with a bootable thumb drive that includes the latest version
- Follow along with the Arch Linux Installation Guide
- Boot and install off the thumb drive
- Connect to a wifi network with
wifi-menu - Copy over previously used files and folders
- After running
genfstab, merge in previous/etc/fstab /etc/locale.conf,/etc/hostname/boot/EFIand/boot/loaders
- After running
- I use
systemd-bootas a bootloader
- Connect to a wifi network with
- Install Zsh and set it as the default shell
pacman -S zsh zsh-completions sudochsh -s /bin/zsh
- Add my user account
useradd -m -G wheel -s /bin/zsh donpasswd donvisudoand uncomment the line that adds thewheelgroup
- Log out and back in as me
pacman -S git opensshmkdir -p ~/.config/i3 ~/.config/i3status ~/.config/nvim ~/projectscd ~/projectsgit clone git@github.com:locksmithdon/dotfiles.gitcd dotfiles./link
- Install Oh-my-Zsh
pacin gnome-terminal polkit-gnome xclip- Install Tmux
pacin tmuxmkdir -p ~/.tmux/pluginsgcl https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm- Restart the terminal
tmux source-file ~/.tmux.conf- Ctrl-b I to install the tmux plugins
- Install the Powerline status bar
pacin python python-pip python-pylint python-setuptoolspip install powerline-statusgcl https://github.com/powerline/fonts.git ~/repos/powerline-fonts~/repos/powerline-fonts/install.sh
- Install NeoVim
pacin neovimcurl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vimsudo pip install neovimnvim +PluginInstall +qallnvim +UpdateRemotePlugins +qall
- Install yaourt using these instructions
- Run
gnome-terminal --show-menubar- Dark theme
- Source Code Pro for Powerline
- Create 2 profiles: tmux and no-tmux
tmux new-session -A -s zshto attach to existing session
- Install X11
pacman -S xorg-server xorg-xinit xorg-xrandr xf86-video-intel xf86-input-synapticspacman -S i3 dmenu feh
-
pacin pulseaudio pulseaudio-alsa pulseaudio-jack -
Join
audiogroup withsudo gpasswd -a don audio- To enable in the current terminal (without having to log out and in):
newgrp audio
- To enable in the current terminal (without having to log out and in):
-
Add this line to
/etc/security/limits.conf(needsudo)@audio - rtprio 99
- Install docker with
pacin docker docker-compose - Follow the instructions for setting up Docker on Arch
- Join
dockergroup withsudo gpasswd -a don docker- To enable in the current terminal (without having to log out and in):
newgrp docker
- To enable in the current terminal (without having to log out and in):
- Change storage driver
-
sudo mkdir /etc/systemd/system/docker.service.d -
Add this to
/etc/systemd/system/docker.service.d/override.conf[Service] ExecStart= ExecStart=/usr/bin/dockerd -H fd:// -s overlay2 -
Start the service with
sudo systemctl start docker -
Verify all is good with
docker info(make sure overlay is the storage driver) -
To spin up a Ruby on Rails environment, there is a good tutorial.
-
I didn't end up documenting all of the steps. It was very late and I hadn't planned on repaving my machine. I've documented all of the hairy bits. It really was pretty easy.