The current state of deploying Dockerized self-hosted GitHub Actions runners is absolutely wild (in a bad way).
Threw this container together to simplify a self-hosted GitHub Actions container deployment:
Surprised at how useful I've found kasmweb!
Since I use Nix inside my development container in kasm, thought I would share the config for any other kasm users wanting to use Nix inside a container.
Docker Exec Config:
{ "first_launch": { "user": "root", "cmd": "bash -c 'echo \"kasm-user ALL=(ALL) NOPASSWD: ALL\" >> /etc/sudoers'" } }
Volume mappings:
{ "/opt/kasm-volumes/ubuntu/{username}/nix": { "bind": "/nix", "mode": "rw", "uid": 1000, "gid": 1000, "required": true, "skip_check": false }, "/opt/kasm-volumes/ubuntu/{username}/etc/profile.d": { "bind": "/etc/profile.d", "mode": "rw", "uid": 1000, "gid": 1000, "required": true, "skip_check": false } }
I did the /etc/profile.d
mapping after I installed Nix in the container and I copied all the original /etc/profile.d
content to the new folder on the host.
I also have Kasm's persistence enabled.
Timelapse of the Falkirk Wheel in action; the only rotating boat lift of its kind in the world.
Video Credit: David Iliff / CC BY-SA 3.0
Further reading: https://en.wikipedia.org/wiki/Falkirk_Wheel
Built an attic container so I could run a Nix binary cache in Kubernetes: https://hub.docker.com/r/heywoodlh/attic
Will throw together a how-to blog post soon.
the upside of having ADHD is that I can complete a month's worth of work for a whole team in the space of a weekend and a couple of evenings.
the downside of having ADHD is that I keep putting myself in situations where I need to complete a month's worth of work for a whole team in the space of a weekend and a couple of evenings.
Really enjoyed this post: https://dataswamp.org/~solene/2024-04-20-workstation-going-stateless.html
A couple of things that I started working on immediately following:
- Re-set up Ventoy on a large USB, and set up images for both x86_64 and ARM64
- Set up kasmweb in my homelab
- Secured kasmweb behind Cloudflare Zero Trust and auth0
These components would more easily enable me to be able to quickly access my homelab resources in a secure fashion and on a machine that has never been configured.
Updated my 1Password to password-store backup script to backup my entire 1Password presence in just 32 seconds (it was around 30 minutes before):
❯ time op-backup ... ________________________________________________________ Executed in 32.60 secs fish external usr time 15.89 secs 101.00 micros 15.89 secs sys time 11.98 secs 846.00 micros 11.98 secs
Updated commit: https://github.com/heywoodlh/1password-pass-backup/commit/c938124eff5dddd3aad226a5a5a6ae65441211b7
I feel like a git
wizard now that I'm able to resolve conflicts with git mergetool
:D
If you're managing your Firefox profile with Home-Manager and you want to set Kagi as your default search engine, here's a snippet:
programs.firefox.profiles.home-manager = { search = { engines = { "kagi" = { urls = [{ template = "https://kagi.com/search?q={searchTerms}"; }]; definedAliases = [ "@k" ]; iconUpdateURL = "https://kagi.com/favicon.ico"; updateInterval = 24 * 60 * 60 * 1000; # every day }; }; default = "kagi"; privateDefault = "kagi"; }; };
I'm using GitHub Pages/Jekyll (via Jekyll Now) for my blog. Have been spending the last hour trying to figure out the best solution for generating a tag page. This solution was simple and easy to understand -- but took a while for me to find:
Built a Honeypot deployment that will send me push notifications via NTFY in Kubernetes. Check it out:
nix build -o heralding.yaml "github:heywoodlh/flakes?dir=kube#heralding"
One-liner for tailing log files and doing something when a new line is added (useful when setting up a pod in Kubernetes for tailing a log file and running an action for each new line generated):
while read line; do echo "Line: $line"; done < <(tail -F /log/log_auth.csv)
The SDF Public Access UNIX System project is such a great public service. Definitely need to start using it more.
Dead simple speedtesting server with my iPerf3 Docker image:
docker run -d --name=iperf3 -p 5201:5201 docker.io/heywoodlh/iperf3 -s
And client:
docker run -it --rm --network=host docker.io/heywoodlh/iperf3 -c localhost
Full-tunneled through Mullvad via Tailscale and on a T-Mobile hotspot. Not unhappy at all with these speeds:
❯ nix run nixpkgs#iperf3 -- -c Connecting to host , port 5201 [ 7] local port 64498 connected to port 5201 [ ID] Interval Transfer Bitrate [ 7] 0.00-1.00 sec 3.50 MBytes 29.3 Mbits/sec [ 7] 1.00-2.00 sec 3.25 MBytes 27.2 Mbits/sec [ 7] 2.00-3.00 sec 1.12 MBytes 9.44 Mbits/sec [ 7] 3.00-4.00 sec 0.00 Bytes 0.00 bits/sec [ 7] 4.00-5.00 sec 256 KBytes 2.10 Mbits/sec [ 7] 5.00-6.00 sec 896 KBytes 7.33 Mbits/sec [ 7] 6.00-7.00 sec 1.50 MBytes 12.6 Mbits/sec [ 7] 7.00-8.00 sec 1.50 MBytes 12.6 Mbits/sec [ 7] 8.00-9.00 sec 1.25 MBytes 10.5 Mbits/sec [ 7] 9.00-10.00 sec 1.38 MBytes 11.5 Mbits/sec - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Interval Transfer Bitrate [ 7] 0.00-10.00 sec 14.6 MBytes 12.3 Mbits/sec sender [ 7] 0.00-10.18 sec 14.4 MBytes 11.9 Mbits/sec receiver
For anyone wanting Nord-themed Microblogpub, this is what I have in my data/_theme.scss
:
// override vars for theming here $primary-color: #e8e6e3; $secondary-color: #81a1c1; $highlight-color: #dae1ea; $background: #252a33; $light-background: #5e81ac; $text-color: #eceff4; $form-text-color: #5e81ac; $muted-color: #d8dee9; $primary-button-text-color: #5e81ac; $code-highlight-background: #5e81ac;
For anyone curious, this site's source code is here: https://github.com/heywoodlh/social.heywoodlh.io.
This is running on an Ubuntu 22.04 VPS via Docker Compose. :)
Decided to switch to a self-hosted microblog.pub over Mastodon. Mastodon is great, but totally overkill for me as the sole user.