I installed Arch for the first time this March. I’ve been enjoying customizing my system to my needs – and literally everything can be customized, which greatly pleases the control-freak in me – so I’m sharing the process here.
Start-up: my /etc/issue, MOTD, login manager
- I have a Message of the Day (MOTD) that sets my TTY colors to Monokai. I copied it from
pywal
. - My
/etc/issue
is also customised. - I've edited my GeTTY service to remove my hostname from the login prompt.
(Add
--no-hostname
to thelogin
arguments.) - I don't have a login manager, I just use
startx
because I use the CLI about as much as the GUI now that I write in the TTY. I wrote a hacky login manager in my.zprofile
, as shown below:if [[ ! $DISPLAY && $XDG_VTNR -eq 1 && ! $TMUX ]]; then echo “Start X / start tmux / go to console? [x/T/c] “ read choice if [[ $choice == ‘c’ ]]; then echo #“Not starting X” elif [[ $choice == ‘x’ ]]; then exec startx else exec tmux fi fi
I don’t use this any more, though; I just run
startx
(which I’ve got aliased tosx
).My
.zshrc
contains more hacks – mostly setting and changing colourschemes for the TTY/AwesomeWM.
Network
- I use
wifi-menu
(requiresiwd
anddialog
) andnetctl-auto
as described here.- Tip: don’t use hyphens in profile names with
netctl-auto
.
- Tip: don’t use hyphens in profile names with
- I don’t use a GUI network manager because I really like
wifi-menu
and I know my way aroundnetctl
now. - Despite my laissez-faire approach, I’ve never had any of the network issues that plagued me on Ubuntu. ;)
- (I haven’t gotten around to setting up USB tethering but it’s on my to-do list.)
File management
- Use
xdg-user-dirs
to create home directories (pictures, downloads, etc.) - I use Thunar for GUI file management, with GVFS. A nice thing about it is that
you can configure notifications to be sent to you whenever a device is
detected; I use
libnotify
(notify-send
). - Tip: install
ntfs-3g
to be able to use/write to external HDDs that use NTFS. I was mystified as to why the heck my HDDs always mounted as read-only despite the command I used being listed as the right one on the wiki – then, when idly browsing /r/archlinux, I found that you needntfs-3g
to write to an NTFS drive. Super obvious in hindsight, but it never occurred to me that the HDD’s filesystem would cause such a problem. - Also, install
gvfs-mtp
to access your Android’s storage via Thunar, and installgvfs-afc
andgvfs-gphoto2
to access your iOS device’s storage. - Thunar starts very slowly if you enable auto-mounting network drives, so disable it.
Hardware config: touchpad, CUPS, Sane, sound, PC beep
-
My touchpad mostly uses the default settings. I enabled tap-to-click following this Reddit post, using this file.
-
One thing that annoyed me a lot on my fresh install was the awful, lifespan-shortening beep that some programs like
less
emit when you do something they don’t like. You can disable it by blacklisting the PC speaker module. -
Other hardware config: Sane for scanning, CUPS for printing. It feels incredible to print and scan from the command line, but you might like Simplescan for your GUI needs. I also set up sound following the wiki.
Pacman and the AUR
- Use Reflector to order your Pacman mirrors
- Consider setting
ILoveCandy
in your pacman options – it’s cuter than the default. - Never run
pacman -sy
.
Setting up the AUR
Installing packages from the AUR is a piece of cake. Go to aur.archlinux.org, search
for what you want, pick a package. Get your hands on its PKGBUILD
by
downloading it or cloning the provided Git URL. Read the PKGBUILD – you can
learn a lot – and edit it if you like (you can add or remove features, like I
did with alpine, and otherwise modify the package). Then run makepkg -si
in the directory. Easy as pie! You can read more about the Arch Build
System on the wiki.
Of course, you could also download an AUR helper. I like yay
.
Productivity: Taskwarrior and Calcurse
- Taskwarrior runs my life. I have physical task lists for the day-to-day as
well as a physical calendar, and I use Taskwarrior as the master list of my
tasks. I’ve been using it for a couple of years now and I love it for the
fine-grained control it gives me. I also use Habitica, and I have a couple of
hook scripts to synchronize the two – I use a modified version of
these.
- I haven’t set up a Taskserver yet, but it’s on the list!
- I’ve started using Calcurse recently. So far, I’ve found it helpful when I’m away from my desk (or, more specifically, my paper calendar) and for recurring events like birthdays. I might write more about it in the future if I decide to stick with it.
WebDAV is love, WebDAV is life
If you haven’t already, install a WebDAV server on your phone. It’s a total game-changer. Say goodbye to fiddling about with cables. (I like this one for Android and am accepting recommendations for iOS.)
I mostly use Thunar with GVFS for accessing WebDAV servers. Sometimes I use
cadaver
for when blob completion is easier.
You can also set up your computer’s home folder as a WebDAV share like so. I use this on my HTPC.
I’ll be posting about my CLI and GUI setups as well as more software recommendations once I write them up!
Giving thanks where it’s due:
- The inimitable incomparable ArchWiki
- Some wonderfully | helpful | and | friendly subreddits
- Hidden gems of xterm - Lukáš Zapletal
- Pacman easter egg