Setting Env Vars From 1password

At some point in time, we all have to set secrets in our terminal. If you want to keep your dotfiles in git this becomes a problem. There are plenty of creative ways around that issue but I’ve found sourcing passwords directly from a secret manager a great way to keep your secrets up to date, your dotfiles clean and no sensitive passwords lying around on disk. In this post I will show you how I source my passwords directly from 1password....

Hot Reload: Respecting SIGHUP With Go

It’s the details that matter when you operate and run a piece of software. One of the most important details I find when operating applications is how it respects SIGHUP signals. Why? Because SIGHUP makes it easy to do configuration changes without disruption and config changes are the source of most major incidents. So what is SIGHUP and why should you care? SIGHUP is a signal sent to a process when its controlling terminal is closed....

Working With Multiple Git Configs

Have you ever had the problem where you need different git settings depending on the repo you are working with? Or have you ever wanted to customize something about your workflow for only a subset of your local repos? I have these problems frequently! In this post I am going to show you some tricks for working with multiple configuration files and the structure I use to do this. Along the way I’m also going to show you some other great features about git!...

Build A Portable Lab In The Cloud Using Tailscale, Terraform and DigitalOcean

I have always wanted a homelab. I’ve tried multiple times to maintain one. Once I get a lab setup I often abandon it. I have more fun figuring out how to construct the lab then using it. This has included multiple servers, NUCs, Raspberry Pis, and even a full VMWare vSphere setup. I have often wished I could scale my lab using the cloud. I realize I could have always done this if I tried hard enough, but that sounds like work (time and money)....

Building A Kernel For Ubuntu

Upgrading a kernel can be an intimidating task. I recently wanted to upgrade my Ubuntu 20.04.1 release to have a newer kernel. I don’t know why I wanted to do this, I just thought it would be an interesting learning experience. Below are 3 different ways to work with a kernal. One is a mainline patch, one is upstream and one is an incremental patch. I hope this is helpful to you....