λ ryan. himmelwright. net


Eno River State Park, Durham, NC

Home-Manager Dark Mode Toggle

A few months ago, I took the plunge and migrated my dotfiles system into my home-manager (nix) setup. Around the same time, I also switched to a desk in the office that is next to a window. I love all the natural light, but need to use light colored themes during different times of the day due to the brightness.

Manually switching my terminal and neovim themes every time I wanted to toggle between light and dark themes was tedious. So, I turned to my new dotfile system to see if I could figure out a more automated approach.


Using gTile

Years ago I enjoyed using minimal tiling window managers. Now, I prefer to use a ‘normal’, full desktop environment (ex: Gnome or Plasma). That said, I still prefer to arrange and manage my windows from the keyboard. On macOS, I’ve been using betterTouchTool for improved window management (rectangle is also great).

During my time using betterTouchTool, I’ve been annoyed that I didn’t have an equivalent method to set windows quite the same way on Linux. While testing out an ultra wide monitor at work, I really needed a better solution. So I searched a bit harder. It turns out there is an option that does exactly what I want in Linux (at least on Gnome): gTile.


Adding --baseurl Argument to My Website Pytests

When I run the pytests for my website, they run against whatever hugo server I have running. While writing a post, this is usually the same machine I’m writing from. When I commit changes, the CI pipeline automatically runs the tests on my gitlab CI runner node. The IP address of the server to test is determined by a BASE_URL constant variable defined in my constants.py file.

Changing the variable in this file, and not accidentally pushing it in git is super annoying. So, I finally sat down one night and moved this variable out of the constants file, converting it to an optional pytest argument.


Custom Resolutions in Gnome Wayland

The other week, I worked from Red Hat Tower (Raleigh). In that office, IT is testing out a few flex-workstations with an ultra-wide monitor (Samsung S65UA), which I decided to try out. It was the first time I used a real ultrawide monitor for an entire workday. Since then, I have continued to occasionally experiment with working in a 21:9 aspect ratio… on my 16:9 monitors.


The iPad Magic Keyboard Case

As mentioned in my previous post, I found myself trapped on the couch, bed, or generally away from my desk when my son was born. However, I still wanted to work on projects when possible. As a result, I started grabbing my 11" iPad Pro more than ever. Using the iPad for nearly everything, I began to wonder… should I get the Magic Keyboard to go with it?


My Obsidian Mobile Setup

I hate typing anything on my mobile devices. If I need to write more than a few words, I prefer to sit down at a computer. However… I recently became a parent, and suddenly found myself trapped on a couch at all hours. From my nest, I didn’t have enough space or mobility to use my laptop easily. So, I needed to start using Obsidian on my mobile devices.


Flashing My Ferris Sweep Using QMK

In my previous post, I detailed the build process for my ferris sweep keyboard. After building it, I needed to flash the keyboard with firmware. Like many custom keyboards, it uses qmk. Here’s how I flashed my 34 key layout on the ferris sweep.


Building My Ferris Sweep

After adapting to the 34 key layout on my ergodox, I felt comfortable enough to start the process of choosing and building my new keyboard. Following some research and deliberation, I selected and built a Ferris Sweep. Here’s how it went.


Building a 34 Key Keyboard Layout

Over the past year and a half, I have been using an Ergodox EZ keyboard and loving every minute of it. It does have a downside tough. As a 60% keyboard lover, it is quite large. So, I have been on the look out for a smaller, split keyboard (I can’t go back to non-split), that I can travel with and use for a portable setup. During this research, I was introduced to 34-36 key split layouts, but wasn’t sure if I could manage one. To test out the idea, I decided experiment with new layouts on my Ergodox…


Gnome Font Scaling Script

Previously, I was using the Pantheon desktop environment on Fedora 35 for my work laptop. I liked how well Pantheon handled font scaling with my 4k monitor, and I figured out how to get the accessability menubar item working in Fedora. This allowed me to easily toggle the scaling factor as I connected and reconnected to different monitors. With that said, I have recently starting using Gnome on the laptop, and miss that feature of Pantheon.