# I use Arch, BTW


<img src="/images/archlinux.png" alt="Arch Linux" width="100px" style="float: left; margin-right: 10px; margin-bottom: 10px;" />

My journey to using Arch Linux took a round about path: Windows, MacOS,
OpenBSD, Ubuntu, Fedora, and finally ... Arch.

I have not used Windows as my primary Operating System for many years (since
around 2003). Sure, I've had to run Windows on a work laptop here and there,
but for anything personal, I've been non-Windows. I used a Mac for a while and
as a Unix-based OS, MacOS is pretty nice. Not exactly what I like, but I much
prefer it to Windows.

# Desktop Unix/Linux History

## MacOS

For a few years, I ran MacOS on my computer. For the most part it satisfied
my needs: a terminal and a browser. But I wanted to run something that more
resembled the OS I was running on my servers.

## OpenBSD

In my heart, I'm an [OpenBSD](https://www.openbsd.org) guy. But my experiences
running OpenBSD on my desktop have not been the best. Don't get me wrong, I get
everything working, but I'm generally unsatisfied with the performance.

So a few years ago, after running OpenBSD on my laptop for a couple years, I
decided to try running Linux and, like with OpenBSD, everything "just worked"
and the performance was outstanding.  I was hooked.

## Ubuntu
Like a lot of people, I started with Ubuntu. But Ubuntu is... um... too much.
I guess that's the best way to describe it. While Ubuntu is... um... fine, I
wanted something simpler. I guess I wanted something that I had more control
over.

## New Laptop

Some time during my use of Ubuntu, I bought a new laptop:
[MSI GT76 Titan DT](/technical/my-laptop)

One of the sore points with this laptop is the GPU: NVIDIA

No more OpenBSD on my laptop. I doubt I'll buy another laptop with an NVIDIA
card in it, but when I described the kind of laptop I wanted, this one is it.

The computer has a lot of storage. 3 512 GB NVME drives and 1 1 TB SSD drive.

The 1 TB SSD has Windows 10 on it. I hardly EVER boot into Windows. It's there
solely for gaming. But with the improvements with Steam and Proton on Linux, I
only boot into Windows every month or so to update it.

That leaves 1.5 TB for Linux

## Fedora
In the past, I had used a lot of Red Hat-based distributions starting with
Red Hat in the 90s. I've used RHEL, CentOS, and Fedora in the past, so I
decided to give Fedora a spin. I started with regular Fedora (with Gnome) and
was pretty happy for a while. It felt more standard. More simple. I felt like I
had more control. But then that feeling crept in. That Fedora installed more
than I needed. That Gnome is too bloated.

So I tried Fedora Spin with XFCE. And I was much happier. XFCE is more minimal
than Gnome. But there had to be something better.

---

# Arch Linux

I had heard of Arch Linux before. It has a reputation. So I read up on it and
from what I read, it seemed more like OpenBSD than any other Linux distribution
that I've tried. So I thought I'd give it a go.

## Installation

The installation is done in the console. You manually run the commands to
partition your disk, bootstrap the installation, install the boot loader,
and do the initial customization (including creating users, setting passwords).

It was great. I felt at home. This is what I like.

And, even better, (almost) nothing gets installed that you don't install
yourself. I mean, of course dependencies get installed, but the dependencies
are reasonable. The whole reason I looked into OpenBSD in the first place
was because I was frustrated with Linux's "kitchen sink" approach to
everything.

## Configuration

### Disks

As mentioned above, the 1 TB SSD is configured with Windows.

The 3 512 GB NVME SSD drives are configured in a RAID0 (no redundancy) BTRFS
volume. I have subvolumes for /, /usr, /var, /var/lib/docker,
/var/lib/libvirt/images, /srv, /opt, /tmp, and /home. Many of these subvolumes
are just to make snapshotting easier. I broke out /usr from / so that when I
take a snapshot of the / (@) subvolume, it's basically only /root and /etc.

### Arch

* Kernel: Zen
* Shell: bash
* Display Manager: lightdm
* Window Manager: qtile
* Terminal: Alacritty
* Terminal Multiplexor: tmux
* Browser: Qutebrowser
* Screenshots: Flameshot
* Password Manager: Bitwarden
* Note taking: Joplin
* AUR Helper: paru

I plan to go into depth further on some of these things in future posts.


