tutorial

Photographing the 2024 Total Solar Eclipse

On April 8, there will be a Total Solar Eclipse covering an large swath of the US, offering hundreds of millions of people the opportunity to witness one of the most spectacular displays of our sun.

Jeff Geerling Photographing the Total Solar Eclipse

I wrote two blog posts about the recent 2017 eclipse, as well—check those out:

For this year, I was considering going all-in on a custom Raspberry-Pi-based solar tracking system, recording video and images... but Will Whang already built a custom solar imaging setup that would put anything I build to shame.

Highly-condensed time-lapse footage with Frigate

Frigate's 0.13.0 release included a feature near and dear to my heart: easy exporting of timelapses, straight from the Frigate UI.

I'm a little bit nutty about timelapses, and have made them with dashcams, GoPros, full DSLRs, webcams, and even Raspberry Pi.

But one thing I haven't done (until now) is make easy timelapses from IP cameras like the Annke 4K PoE cameras I use for security around my house.

Eventually I'm planning on automating things further, but for now, here's my process for building up a timelapse that's relatively small in file size, preserving only frames where there's motion from frame to frame.

For something like clouds/sky, or natural environments, it's better to do a straight timelapse export and maybe recompress it if you want, but for indoor or outdoor security footage, it's nice to condense it down.

Mounting an ext4 linux USB drive on macOS in 2024

I recently pulled a SATA hard drive out of a Linux box that I wanted to grab some files off of. I only had my Mac on hand, and I had a USB 3.0 to SATA hard drive adapter at the ready.

But when I plugged in the hard drive, macOS said it couldn't recognize the disk.

Disk unreadable by macOS

Makes sense, because macOS includes support for Apple's filesystems, not Linux (or even NTFS, Windows' preferred filesystem). There are commercial solutions you can buy, like Paragon Software's extFS for Mac, but that costs $39, and I don't want to deal with the licensing issues that may exist there if I just want to grab a few files off one hard drive.

Luckily, there are some open source libraries that allow at least read only access to ext4-formatted disks on macOS. Let's install them and use them to mount the drive:

First, install macfuse, using homebrew:

Setting up a Mikrotik 10 Gbps Switch the first time

Since I've done this four times now... and each time it's just a session of reading the docs, searching the forums, etc. until I get everything configured just so, I thought I'd document how I bring up a new MikroTik switch.

Mikrotik Cloud Router Switch CRS309-1G-8S+in

I personally love the CRS309-1G-8S+IN, and have three of them running in my homelab. They're less than $250, with 8 10 Gbps SFP+ ports, a 1 Gbps RJ45 port, and a serial console port.

But the best thing for my home use is they are fanless. Blissful silence, outside of a couple beeps the first time you plug it in.

How I installed TrueNAS on my new ASUSTOR NAS

A common question I get asked whenever my ASUSTOR NAS makes an appearance is: "but can it do ZFS?"

I'm still trying to convince them to add it to ADM alongside EXT4 and Btrfs support, but until that time, the 2nd best option is to just run another OS on the NAS! This is now permitted, but you won't get technical support from ASUSTOR for other OSes.

Some people (myself included) like buying hardware and... doing what we want with it! And for computer hardware, that often involves installing whatever OS and software we want to do the things we want to do. Pretty crazy, coming from a guy who uses a Mac, right?

ASUSTOR Flashstor 12 - front

Build your own private WireGuard VPN with PiVPN

I am frequently away from home (whether on family vacation, a business trip, or out around town), but I have a number of important resources on my home network—as any homelabber does.

There are services I like to access remotely like my NAS with my giant media library, my edit server with all my active projects, and especially Home Assistant, which lets me monitor all aspects of my home.

Some people rely on individual cloud services from IoT vendors and have a bunch of apps to connect to each type of device independently. As someone who has dealt with numerous security breaches for numerous services, I know not to trust 50 different cloud-connected devices in my home.

That's why I'm a 'self-hosted' homelabber, and why I try to find devices that don't leave my local network.

Transcribing recorded audio and video to text using Whisper AI on a Mac

Late last year, OpenAI announced Whisper, a new speech-to-text language model that is extremely accurate in translating many spoken languages into text. The whisper repository contains instructions for installation and use.

tl;dr:

# Install whisper and its dependencies.
pip3 install git+https://github.com/openai/whisper.git 

# (When needed) Update whisper.
pip3 install --upgrade --no-deps --force-reinstall git+https://github.com/openai/whisper.git

# Make sure ffmpeg is installed.
brew install ffmpeg

# Translate speech into text.
whisper my_audio_file.mp3 --language English

One thing I do quite regularly for my YouTube channel is extract the audio track, convert it to text using an online tool (I used to use Welder until they were bought out by Veed), and then hand-edit the file to fix references to product names, people, etc.

Ubuntu's settings won't open after setting CPU to 'performance'

Recently I was doing some benchmarking on my Ubuntu 22.04 PC, and as part of that benchmarking, I tried setting the CPU performance profile to performance. In the old days, this was not an issue, but it seems that modern Ubuntu only 'knows' about balanced and power-saver. Apparently performance is forbidden these days!

$ powerprofilesctl list
* balanced:
    Driver:     placeholder

  power-saver:
    Driver:     placeholder

The problem was, I had set the profile to performance:

$ powerprofilesctl set performance

But suddenly the 'Settings' GUI app would no longer open (at least not after I had opened it and clicked into the 'power' section). A reboot didn't work, and even reinstalling control center (sudo apt-get install --reinstall gnome-control-center) didn't help!

When I tried opening the settings GUI from the command line, I got the following critical error:

How to download an MP4 from YouTube, every time

I use yt-dlp to download videos off YouTube quite frequently. I'll use the videos as reference, and I often use it to grab the VOD for one of my livestreams, since there's no simpler way (I'm not going to dig through the bowel's of YouTube's UI to try to download one of my own videos...).

But I also can't handle the default .webm videos in all my video editing tools natively, and transcoding is annoying. So I've settled on the following yt-dlp command to first try to pull a native MP4 version off YouTube, and failing that, transcode to MP4 immediately after downloading:

yt-dlp -S res,ext:mp4:m4a --recode mp4 https://www.youtube.com/watch?v=dQw4w9WgXcQ

And if you weren't aware, yt-dlp does an excellent job pulling video files from other sites as well, should the need arise.