Skip to content

Instantly share code, notes, and snippets.

View drewr's full-sized avatar
👋
hacking on datum.net

Drew Raines drewr

👋
hacking on datum.net
View GitHub Profile
@drewr
drewr / Containerfile
Last active November 7, 2026 01:07
qBittorrent + Jackett + FlareSolverr in one s6-overlay container (single-file Containerfile)
# qbt-s6 — qBittorrent + Jackett + FlareSolverr in one container, supervised by s6-overlay.
#
# Self-contained: build it straight from this file, no build context needed.
#
# podman build --format docker --platform linux/arm64 \
# -t localhost/qbt-s6:latest https://gist.githubusercontent.com/<user>/<id>/raw/Containerfile
#
# podman run -d --name qbt-s6 \
# -p 8080:8080 -p 9117:9117 -p 8191:8191 \
# -v qbt-s6-config:/config -v qbt-s6-downloads:/downloads \
@drewr
drewr / probe.png
Created October 23, 2026 20:24
img probe 2
iVBORw0KGgoAAAANSUhEUgAAAvgAAATYCAIAAADlPCS4AAAQAElEQVR4nOzdB0Ac54H3/0dsYRcWlt5BIBAIhApCQg1ZPZbkEjtxEt/FlzjVTuLkvTjJXc6XvLH/d+fk4sR5z3F8TncSJ7ETuVuWbdkqVscgEEggigSi97qwddB/liIhWBDq0rPfz+mcZXbqMzM7v32eZ3a0drtNAAAAyMhHAAAASIqgAwAApEXQAQAA0iLoAAAAaRF0AACAtAg6AABAWgQdAAAgLYIOAACQFkEHAABIi6ADAACkRdABAADSIugAAABpEXQAAIC0CDoAAEBaBB0AACAtgg4AAJAWQQcAAEiLoAMAAKRF0AEAANLSCgAAcCW8+Mpbb+3Ym3/0eHNLm7gxREWGL14wd8vGVZ+6e4vwSjPsdpsAAACXoa6h6Z///Ue79+WJG9Wa3Jz/91/fjY+NFl6GoAMAwOXa/Mkv5x0pETe2pdnz33rxl8LL0HTl1lVXX/bOO8OvfTQaY3CwISDAPyQ4Ii1N7+cnAACY3J+3vnnjpxzV4YJidVU/fc/twpvQGdnNZbOefT2oKP3t7R3V1bUFRwpeePHUgYNOq1UAADCJV7e9J24SN9GqXikEHbczZ854Hj442FxaWvTSy9aeXgEAgCclZZXiJnETreqVQtBxmzFjxhTvOm2249u22S0WgYvU1dkuAEB2be2d4iZxE63qlULQcTtzoREcAwMndrw3WcUPAAC4MdEZecg0Ekx/R0dz2YnojHQxbZ3dPaUnTo4dEmDyi44MDw8LmboOSXWypr6puVUda+XSRePeOvhhkaIMTjGtr69uSda84ddHiksHBmwZc5JDgszjRmtsbj1VUx8aYk5PTR63whHhIanJiRPnXH26oaGpRX0xJ3VWWEiQAADgxkbQcQuIjDTHRA+nHbXyxt7b67HypqGoKGpO2gyf6VaDHTla+qkvPDxxuJ/RcPdtG3782LcNvr4eJ3S5XB/7zNfrG5vV1y/+9skNq5ePfffeL37L
@drewr
drewr / gateway-side-of-connect-ip.md
Created October 7, 2026 21:24
Datum Connect: how the gateway side of the CONNECT-IP path forwards packets into the VPC

Datum Connect: how the gateway side of the CONNECT-IP path forwards packets into the VPC

Following the discussion about how ping fd20:0:1c::1 is reachable from a machine whose only local presence is a /128 host address on a dc... TUN interface. The local (daemon) side is one half of a point-to-point host-routed overlay; this doc walks the cloud/gateway half — how the tunneled packet reaches the real VPC network.

Quick recap of the local side

  • Your daemon creates a Linux TUN device (/dev/net/tun), assigns your /128 host address, and
@drewr
drewr / Dockerfile
Last active October 2, 2026 21:59
Minimal Ubuntu 26.04 (Dockerfile) and NixOS 26.05 (default.nix) shell images for Datum Cloud compute
FROM ubuntu:26.04 AS build
# Trimming from datum-cloud/unikernel-images#9: drop package caches, docs,
# man pages, locales, coreutils translations, iconv modules (UTF-8 is built
# into glibc) and logs that a shell instance never reads.
RUN <<'EOS'
set -eu
# Instances reach the internet over IPv6 only, so bake tools in rather than
# relying on apt at runtime. iputils ping uses ICMP datagram sockets, which
# work without CAP_NET_RAW.
@drewr
drewr / galactic-vs-vxlan-encap.md
Created August 21, 2026 15:22
Galactic (SRv6 uSID) vs VXLAN encap/decap comparison

Galactic (SRv6) vs VXLAN — Encap/Decap Comparison

Both are overlay data planes. Neither encrypts the inner payload — confidential traffic must be layered on separately (IPsec, WireGuard, TLS).

Galactic VXLAN
Encap format SRv6 uSID in IPv6 header (RFC 8986) VXLAN (UDP-MAC-in-IP), VNI
Dataplane eBPF TC-BPF (usid.c) + kernel SRv6 kernel vxlan device / vSwitch
Control plane BGP EVPN Prefix-SID (typically) BGP EVPN MAC/VNI or static

DNS Service — Production Readiness Gap Analysis

Analysis of the Datum Cloud DNS service (dns-operator) for production readiness, combining an infra-deployment survey, peer service comparison within the platform, and Google SRE production-readiness standards from the SRE books and CRE launch checklist.


Current State

The DNS operator has:

  • Service catalog registration: Service resource published, ServiceConfiguration planned (Phase 2, issue #44)
@drewr
drewr / darwin-plan.md
Created August 3, 2026 01:14
Plan: add aarch64-darwin support to shitty flake.nix

Plan: add aarch64-darwin support to shitty/flake.nix

Summary

The project already has macOS rendering (Metal), font (CoreText), and platform (Cocoa/AppKit via plt) support in the C++ source and build.py. The Nix expression is the only blocker — it currently hardcodes Linux-only deps and marks badPlatforms = lib.platforms.darwin.

Changes to flake.nix

GSLB design review

Review of global-server-load-balancing/README.md on branch gslb-design, cross-checked against issue #833 and the working context doc.

Things that don't make technical sense or are contradictory

1. The two-tier capacity decision is claimed but not designed

The context doc (section 8) records an architectural position: "Both PoP

@drewr
drewr / dns-v4-v6-breakdown.md
Last active July 13, 2026 20:17
Authoritative DNS v4 vs v6 traffic breakdown by POP (30-day average)

Authoritative DNS: IPv4 vs IPv6 Traffic Breakdown by POP

Time range: 30-day average (increase[30d] / 2,592,000s)
Data source: Victoria Metrics via MCP — pdns_auth_*_queries counters on datum-managed-auth-dns
Timestamp: 2026-07-13T20:15 UTC

How It's Computed

PowerDNS auth exposes four cumulative COUNTER metrics:

@drewr
drewr / verification-2026-07-09.md
Created July 9, 2026 23:30
Galactic containerlab deployment verification

Galactic ContainerLab Deployment Verification

Date: 2026-07-09

Summary

All checks pass. The containerlab deploy is fully operational with transit underlay, fabric eBGP, tenant iBGP with route reflector, SRv6 EVPN route distribution, cross-site connectivity, and VPC isolation all working correctly.

Verification Results