I started using Linux after losing a new Windows 7 operating system due to a botched BIOS update. Low on funds and with time to kill over the summer of 2011, I tried out Ubuntu and ended up hooked.
From Ubuntu, I progressed to other Debian-based Linux distributions such as CrunchBang (now known as BunsenLabs Linux) and Peppermint, but since 2012 my distribution of choice has been Arch Linux, a highly customizable distribution based around binary packages. While the three days spent trying to get Arch working on my old Samsung N250 netbook were not always fun and games, it was the first time I started to peel back the GUI and get into the inner mechanics of an operating system. I highly recommend Arch to anyone looking to better understand how operating systems and computer hardware work, whether Linux novice or Linux neckbeard.
Arch User Repository
The Arch User Repository (AUR) is run by Arch Linux users and contains package descriptions (PKGBUILDs) that may be used to compile packages from source. I maintain the following AUR packages:
- android-material-icons -- Material Design icons by Google for Android Studio
- archlinux-lxdm-theme -- Simple Arch Linux theme for LXDM, by Thayer Williams and Allan McRae
- bootstrap -- Front-end framework for web development
- canon-pixma-mx870-complete -- Complete stand alone driver set (printing and scanning) for Canon Pixma MX870
- cherrytree-git -- Hierarchical note taking application, git version
- lib32-libusb-compat -- Library to enable user space application programs to communicate with USB devices (32 bit)
- linode-cli -- Linode API wrapper
- nginx-mainline-mod-fancyindex -- Fancy indexes module for the nginx web server
- parcellite-git -- Lightweight GTK+ clipboard manager (git version)
- pass-parcellite -- Stores, retrieves, generates, and synchronizes passwords securely (Parcellite support)
- puddletag -- An audio tag editor for GNU/Linux
- puddletag-git -- An audio tag editor for GNU/Linux, git version
- python-pymilter -- Python bindings for libmilter API
- python2-pymilter -- Python 2 bindings for libmilter API
- python-pyqt-qwt -- Python PyQt wrapper for Qwt 6
- python-spf-engine -- SPF (Sender Policy Framework) back-end for integration with Postfix and Sendmail
- roundcubemail-plugin-twofactor-git -- Adds two-step verification (TOTP) to the Roundcube login process
- stopwatch -- Timing app written in Tcl/Tk
I also co-maintain the following packages:
- eclipse-java -- Highly extensible IDE (Java version) (co-maintained with altermetax)
- xscreensaver-arch-logo -- Screen saver and locker for the X Window System with Arch Linux branding (co-maintained with Geballin)
Red Hat Enterprise Linux and CentOS
I have also spent a lot of time working with CentOS, whose upstream source is Red Hat Enterprise Linux (RHEL). I used to be a Red Hat Certified System Administrator and Red Hat Certified Engineer for RHEL 7, but as my current employer is more of a Microsoft shop, I have not yet recertified on RHEL 8.
This site is hosted via Linode, who offer scalable Linux-powered virtual private servers and a great library of technical and how-to guides. If you are looking for an inexpensive, unmanaged hosting provider, I highly recommend you check them out.
If you are in search of quality managed hosting, however, I strongly encourage you to check out the managed web hosting company I used to work for, Liquid Web.
This site is powered by a LNMP stack (Linux, NGINX, MariaDB, PHP)
- NGINX (pron. engine x) is a lightweight, secure, fast web server and reverse proxy server. I was an avid user of another web server Lighttpd for several years, but started exploring NGINX recently as a reverse proxy solution on a project and enjoyed working with it so much I decided to convert.
- MariaDB is a fork of the popular MySQL database management software with similar style, architecture, and indexing
- PHP is a popular scripting language that handles modules and other interactive content on the site. It is closely integrated into NGINX through PHP-FPM (PHP FastCGI Process Manager), a PHP FastCGI implementation
On my Arch-powered personal systems, some of my favourite open source programs are:
- LXDE (Lightweight X11 Desktop Environment) -- low-resource fast desktop environment similar in appearance to classic MS Windows
- LXQt (Lightweight X11 Qt Desktop Environment) -- lightweight Qt desktop environment based on LXDE
- Openbox -- highly configurable windows manager
- Strawberry -- modern music player, fork of Clementine
- puddletag -- audio tag editor for GNU/Linux
- Syncthing -- peer-to-peer secure file synchronization over multiple devices
- cherrytree -- hierarchical note taking application
- TeXstudio -- robust editor for creating files and documents