This is my monorepo.
Primary Purpose
Iterate my way to a personal computing setup that I love, and that grows with my needs and wants.
What I'm up to
The simplest way to see what I'm up to is to look at the timeline. That's everything going on in this repo.
- trunk shows what I consider to be ready for the world to see.
- branches show the currently active lines of development. They reflect what I'm actually doing on a day-to-day basis.
Here are the specific branches or directories that are primarily of interest to me at the moment:
- build-ports - The FreeBSD Ports framework is really cool. I am learning to maintain existing ports, and add new ones, so that I can easily run the software I want. This branch includes my efforts to increase my effectiveness in working with ports.
- ffi - My explorations of how different languages call C libraries, so that I can write command-line utilities for FreeBSD.
- drafts - I have always enjoyed writing, though I haven't published much in the last several years. I want to get back into it. This branch includes my in-progress writing.
- bhyve - FreeBSD includes a hypervisor called bhyve. I have only briefly experimented with it, I'm still learning how to use it. I want to use it primarily for FreeBSD development - I need a VM to run development branches so I don't screw up my daily driver. I also plan to experiment with running Linux VMs, because my work relies on some Linux-only tools (e.g. Docker, fly.io)
Other considerations
Working with this repo feels a bit like Jerry Weinberg's Fieldstone Method, applied to code.
I start things in experiments/
, and grow them as I see fit.
When I've built up something solid, I can incocorporate it into my over all system.
This repo is my home dir on a FreeBSD system. I had considered trying to make it portable with MacOS. I ended up getting a FreeBSD laptop instead, and I'm happier for it.