How To

Zoom Manager v0.5.0: How to Install & Update Zoom on Ubuntu

Zoom has quickly become the most popular video conferencing software during the 2020 Coronavirus Pandemic. I have a few blog posts discussing how to install Zoom on Ubuntu Linux and specifically on how to use Zoom Manager to do so. Here’s what it is and what’s new.

How the U.S. Military Is Structured [Diagram]

The newly created U.S. Space Force has been popping up in the news regularly. Most recently the U.S. Air Force revealed the seal of the U.S. Space Force. Whether you think the Space Force is a good idea or not, it’s now a reality and I’m pretty sure not everyone knows where it fits in the military. Especially since to this day most people still don’t understand how the Marines fit into the structure either.

So, I’ve created a quick diagram of the U.S. Military structure and how each organization relates to each other. Hopefully someone finds it useful.

GroupBy For Data Files in Hugo

I recently had the need to list out a bunch of locations on a page with Hugo. With over 100 locations to display, I wanted to group them by state on the page creating a kind of directory. The first thing that came to mind was Hugo’s GroupBy function.

Unfortunately I’ve learned that the GroupBy function only works on Hugo Pages while I’m storing all of these locations in a Hugo Data File. Here’s how I solved this problem.

Custom Sort Hugo Single Pages

When building a static website with Hugo, a frequent need is to sort the pages in some way. I’ve seen in the docs and in forum posts how to do that on list pages where you’re iterating through pages with range, but not to do that from a single page template. Here’s how you can change the sort on single pages in order to change which pages .NextPage, .NextInSection and related, point to.

How to Install & Update Zoom (Video Conferencing) on Ubuntu

Zoom provides a desktop Linux client but it’s just a .deb file. You need to install it and its dependencies as well as keep track of updates yourself. To help with the first part, I’ve written blog posts on how to install Zoom for Ubuntu 18.04 as well as Ubuntu 19.04. That didn’t help me keep track of updates and I noticed I was quickly several versions behind. To solve this problem, I wrote a little script called zoom-mgr (Zoom Manager).

How to Update the BIOS on System76's Thelio Desktop

Update: An engineer from System76 chipped in suggesting that this is not a good way to update the BIOS. Their method is still unavailable though. While this may not be the best way to update the BIOS for Thelio computers, this method should still work for GIGABYTE based PCs that don’t support Linux the way System76 does.


I bought a System76 Thelio desktop computer earlier this year (btw, I love it). The BIOS on its Gigabyte motherboard is two releases old. All of the instructions I found on how to update the BIOS involved Windows or formatting and imaging a USB flash drive. It’s 2019, there are easier ways.

Here’s how I updated the UEFI BIOS on my Thelio’s Gigabyte motherboard using only Ubuntu and the Q-Flash.

How to Install Zoom (Video Conferencing) on Ubuntu 19.04

Here’s how to install Zoom, a popular video chat software, on Ubuntu 19.04 “Disco”.

Upgrading the Ubuntu Server Kernel

If you run an Ubuntu-based server (as most of the world does) you should know that keeping the server up-to-date is important for security and stability. Occasionally certain kernel updates will come through that won’t get installed. Instead, you’ll see this message:

The following packages have been kept back: linux-generic linux-headers-generic linux-image-generic

Here’s how to install these updates safely.

Get Emailed When an Ubuntu Server Needs a Reboot

When your Ubuntu server needs to be rebooted, say after a kernel update, the file /var/run/reboot-required is created. You can check for that file to see if a reboot is needed and usually you’ll get a message upon logging into the server saying so. Here’s how you can get an email when a reboot is needed saving you the time of manually checking.

How to Install the CircleCI CLI

CircleCI Docs and the CLI repo both contain install instructions but with lots of other info. Here’s simply how to install the CircleCI CLI:

How to Check If Vim Supports Python

Sometimes you’ll need to know if the installed version of Vim on your system supports Python. This is most common when installing Vim plugins as many have a dependency on Python. Here’s how to check.

Dell XPS 13 Developer Edition Firmware Update Fix

I’m running Ubuntu 18.04 on a Dell XPS 13 Developer Edition, model 9350 (though people have had this issue with 9370 as well). Every couple days Ubuntu Software Center opens up telling me that there is a firmware update. Specifically it says, “Thunderbolt NVM for XPS 9350”.

Clicking the “update” button to the right does nothing. Clicking the “update all” button at the top fails as well. Here’s how I got my firmware update for my XPS 13 to successfully install. Hint, it’s the command-line to the rescue as usual.

Configure Static Networking on an Ubuntu 18.04 Linode Server

Ubuntu 18.04 now uses netplan together with systemd to manage networking. No longer do we edit the /etc/network/interfaces file in order to configure static networking. At the time of this writing (September 10th, 2018), Linode has static networking instructions for Ubuntu 17.10, which is EOL’d, but not Ubuntu 18.04 specifically. More importantly, while the 17.10 instructions do work, it’s not the recommended way according to Ubuntu and most websites I’ve visited around the Internet.

Here’s how I configured my Ubuntu 18.04 server on Linode.

How to Install Zoom (Video Conferencing) on Ubuntu 18.04

Here’s how to install Zoom, a popular video chat software, on Ubuntu 18.04.