cleberg.net
- Webmaster
- Christian Cleberg
- Generator
- weblorg 0.1.0 (https://emacs.love/weblorg)
- Public lists
- I ♥ RSS
- Fetched
Table of Contents
1. Why 10 Gbps?
2. What I Was Running Before
3. The Hardware
3.1. Switch
3.2. NICs
3.3. Cabling
3.4. Cost
4. The Upgrade
5. Benchmarks
5.1. Before
5.2. After
6. Was It Worth It?
1. Why 10 Gbps?
The short answer: fiber finally became availa...
Small Wins on the App Store
Table of Contents
1. My Apps
2. My Achievements
I wanted to briefly share a couple achievements I've experienced lately from
the apps I've published on the iOS app store.
If you're new to my blog: I'm not a full-time developer and don't do this for a
living. I deve...
Forking SkunkyArt
Table of Contents
1. SkunkyArt
1.1. Project Links
1.2. Why Fork?
1.3. What's Changed So Far
2. Run an Instance!
1. SkunkyArt
I've forked SkunkyArt, an alternative privacy frontend for DeviantArt that works
entirely without JavaScript, over to the Zero Labs orga...
Re: Your RSS Reader Is Robbing You
To summarize my answer to Antonio's post: good!
I don't read posts in my feed reader to look at styles, I do it to consume
content - to read their thoughts.
I use my feed reader because it's configured exactly how I like it. The colors
are tweaked to a palette that's ...
Re: Quoting Linus Torvalds
Table of Contents
1. Linus on AI
2. My Thoughts
1. Linus on AI
Linus Torvalds' recent defense of AI in the Linux kernel sparked the predictable
backlash, but the real debate is far more nuanced than that.
This specific blog post is in response to Simon Willison'...
The Night Feeling
Table of Contents
1. The Night Feeling
2. Nighttime on the Farm
3. After Hours
4. Night Weather
5. Closing Thoughts
1. The Night Feeling
There is a feeling I’ve had most of my life that I’ve never had a good name for.
It shows up at night, usually when nothing i...
The Internet I Grew Up With Doesn’t Exist Anymore
Table of Contents
1. Introduction
2. 2001: The Family Computer
3. 2004: Exploring the Web
4. 2007: Living There
5. 2012: When Everything Started Changing
6. 2026: Logging On Today
7. The Internet I Miss
8. Closing
1. Introduction
The internet; what can I say? It's ...
I Don't Maintain My Homelab
Table of Contents
1. Infrastructure
1.1. Server
1.2. Network
2. Software
3. The Outcome
It's true. I don't maintain my homelab… it maintains itself.
Have I reached nirvana? Is this the ultimate goal of homelabbers? It seems
that I've somehow automated myself ou...
Junited 2026
Like others participating in Junited have mentioned, I recently discovered this
project and love the idea. While the month is more than halfway past, I'll make
sure to update this post with the best links I discover throughout the remainder
of June 2026.
Smallweb is Bec...
Bring MOTD to macOS
Table of Contents
1. Messages of the Day (motd)
2. Create the Message
3. Load the Message
1. Messages of the Day (motd)
A message of the day is, in computer terms, a welcome message that provides
information and may help users logging onto the system. This is usefu...
Git Is Not GitHub
Table of Contents
1. Git Is Not GitHub
2. Feature Comparison
3. Git Tracks the History
4. Git Hosts Add the Workflow
5. Audit Implications
6. Conclusion
1. Git Is Not GitHub
People often use "Git" and "GitHub" interchangeably. Sometimes it's for
convenience, but of...
Plain Text, Plain Language
Table of Contents
1. Plain Text Won
2. Optimizing for Usability
2.1. Plain Text Markup
3. Plain Language
3.1. Plain Text Without Plain Language
3.2. Plain Language Is Not Anti-Technical
3.3. The Same Argument
4. Conclusion
1. Plain Text Won
There has been a...
Automating Backups with Zerobyte & Cloudflare R2
Table of Contents
1. Installation
1.1. Docker
1.2. Nginx
2. Configuration
2.1. Volumes
2.2. Repositories
2.3. Backups
2.4. Notifications
Zerobyte is a slick backup solution you can self host. It's one of the easiest
apps I've self hosted and the backup jobs ar...
Announcing Hutch: An iOS Client for Sourcehut
Table of Contents
1. Hutch
1.1. Project Links
1.2. Overview
1.3. Features
1.4. Roadmap
2. Feedback Welcome!
1. Hutch
I'm proud to announce that I've released my third (and, in my opinion, most
useful) iOS app: Hutch.
1.1. Project Links
I don't want to bur...
Auditing AWS S3 Buckets
Table of Contents
1. Background: How S3 Controls Public Access
1.1. Public Access Block
1.2. Bucket Policy Status
1.3. ACLs
1.4. How the Three Layers Interact
2. What the Script Does
3. Prerequisites
4. Deriving Overall Public Status
5. Reading the Output
6. Common Ex...
Auditing AWS Passwords
Table of Contents
1. Scoping
2. What the Scripts Do
3. Prerequisites
4. Step 1: Gather the Policy
5. Step 2: Evaluate the Policy
6. Reading the CSV
7. Common Exceptions and False Positives
8. How to Write Up the Finding
One of the first controls an IT Auditor learns i...
Auditing AWS IAM Users
Table of Contents
1. Background: How AWS Provisions Access
1.1. IAM Users
1.2. IAM Groups
1.3. IAM Roles
1.4. IAM Policies
1.5. IAM Identity Center
2. What the Script Does
3. Prerequisites
4. Reading the Output
5. Common Exceptions and False Positives
6. How to Write ...
Automating weblorg Deployments
Table of Contents
1. Weblorg Configuration
2. Python Build Script
3. GitHub Actions
3.1. The Custom Docker Image
3.2. Building and Pushing to GHCR
3.3. The Build and Deploy Workflow
4. Conclusion
As I've mentioned in previous posts, I utilize a unique pipeline to ...
Managing Dotfiles with GNU Stow and Git
Table of Contents
1. What is GNU Stow?
2. Installation
3. Stow Dotfiles
4. Update Dotfiles
5. Save to a Git Repository
1. What is GNU Stow?
GNU Stow is described as a "symlink farm manager" on its homepage, which is
true, but feels a bit underwhelming. Rather, I'd ...
IndieWeb Carnival: Intersecting Interests
Table of Contents
1. Personal Life
2. Work
I thought about this topic for a long time today before starting to write this
post, as I don't think of myself as someone with intersecting interests. I
generally lean pretty hard into interests and in my mind, they're all
t...
Emacs Carnival: Completion
Table of Contents
1. Defining Custom Abbreviations
2. Doom Configuration
2.1. vertico + marginalia
2.2. orderless
2.3. corfu
2.4. eglot
2.5. flyspell
3. Looking Forward
I'm having a great time with the Emacs Carnival, as it has inspired me to write
two posts in su...
Emacs Carnival: This Year, I Will...
Table of Contents
1. Dive Deeper into Org-Mode
2. Better Doom Configuration
This year in Emacs, I expect to do a lot. However, here are some actionable
goals for myself that should have a positive impact as I start out 2026.
1. Dive Deeper into Org-Mode
Org Agen...
Self-Hosting Guide: Home Assistant
Table of Contents
1. Overview
2. Installation
3. Configuration
3.1. HACS
3.2. External Access
4. Customization
4.1. Mobile View
1. Overview
I've used Home Assistant off and on for years, but I've never written a guide on
it because it always felt like a hal...
Self-Hosting Guide: Tor Websites
Table of Contents
1. Installation
2. Configuration
2.1. Tor
2.2. Nginx
2.3. Onion-Location
1. Installation
First, install the Tor package. I'm using Ubuntu, so I'll be using apt to
install Tor.
sudo apt install tor
2. Configuration
2.1. Tor
Next,...
IT Audit and AI: Where It Helps and Where It's Theater
Table of Contents
1. My AI Toolkit
1.1. Gemini Enterprise (formerly Agentspace)
1.2. Microsoft Copilot
1.3. Clara AI
2. Use Cases for Each Tool
2.1. Gemini
2.1.1. Client and Project-Based Agents or Notebooks
2.1.2. Technical Research
2.1.3. Data Analysis
2.2. M...
WCAG Compliance: Accessibility as a Real Constraint
Table of Contents
1. WCAG 2
2. Why WCAG?
3. Implementing WCAG On My Website
4. Results
1. WCAG 2
What are the Web Content Accessibility Guidelines (WCAG) 2 requirements?
While the full list of WCAG requirements may seem intimidating, it's actually
straightforwar...
Using aerc on macOS
Table of Contents
1. Overview
2. Installation
3. First-Time Wizard
4. Configuration
5. Operation
Figure 1: aerc-mail
Shout-out to Jack Baty for inspiring me to write about my aerc-mail client
after chatting about it over email recently!
1. Overview
aerc is ...
Digital Garden
Table of Contents
1. What's a Digital Garden?
2. Historical Context
3. Common Uses
4. How to Build Your Own Garden
5. Additional Suggestions
1. What's a Digital Garden?
Before I start describing digital gardens, I want to show a couple examples that
are distinct en...
Rocket League on macOS via CrossOver
Table of Contents
1. Intro
2. Install CrossOver
3. Set Up the Epic Games Store (or Steam)
4. Install Rocket League
5. Play the Game
6. Tips & Troubleshooting
7. Conclusion
Figure 1: Rocket League on macOS
1. Intro
Rocket League isn’t natively supported on ...
My Privacy Toolkit
Table of Contents
1. VPN
2. DNS
3. Data Removal
4. Passwords
5. MFA
6. Communications
7. Browser Extensions
7.1. Firefox (Desktop)
7.2. Safari (iOS)
8. Payments
1. VPN
I use a few different VPNs for different purposes. For general use, I use
Mullvad due to its ...