Sign up

cleberg.net

Not verified No WebSub updates No webmention support Not yet validated

Stillness amidst the chaos.

Webmaster
Christian Cleberg
Public lists
I ♥ RSS
Fetched

cleberg.net
Text •

Mass Unlike All Tumblr Posts

Table of Contents 1. The Dilemma 2. The Solution 2.1. Identifying Unlike Buttons 2.2. Running a Script to Unlike All Likes 3. Results 1. The Dilemma The dilemma I had was pretty simple: I wanted to unlike all the posts I have liked on Tumblr so that I could fol...

cleberg.net
Text •

Website Updates 2023

Table of Contents 1. The State of This Website 2. Recent Changes 3. Future Focus 3.1. Accessibility 3.2. Content First 3.3. Style 4. Looking Back 1. The State of This Website Over the years, this website has changed URLs, styles, content focus, and much more. H...

cleberg.net
Text •

Alpine Desktop with Sway

Table of Contents 1. Isn't Alpine Linux for Servers? 2. Installation 3. Initial Setup 4. Window Manager (Desktop) 4.1. Personal Touches 5. Resolving Issues 5.1. WiFi Issues 5.2. Sound Issues 1. Isn't Alpine Linux for Servers? This is a question I see a lot ...

cleberg.net
Text •

Suckless Simple Terminal on Fedora

Table of Contents 1. st 1.1. Obtain Files 1.2. Dependencies 1.3. Building 1.4. Customization (Patches) 1. st st standards for Simple Terminal, a simple terminal implementation for X made by the suckless team. This post walks through the dependencies needed a...

cleberg.net
Text •

Nginx Wildcard Redirects

Table of Contents 1. Problem 2. Solution 2.1. Nginx Config 1. Problem I recently migrated domains and replaced the old webpage with a simple info page with instructions to users on how to edit their bookmarks and URLs to get to the page they were seeking. Th...

cleberg.net
Text •

Nginx Gzip: Compress Text, Nothing Else

Table of Contents 1. Text Compression 2. Enable Nginx Compression with gzip 3. Explanations of ngxhttpgzipmodule Options 1. Text Compression Text compression allows a web server to serve text-based resources faster than uncompressed data. This can speed up things l...

cleberg.net
Text •

Nginx Referrer Ban List

Table of Contents 1. Creating the Ban List 2. Configuring Nginx 3. Enabling the Ban List 4. Restart Nginx 5. Testing Results 1. Creating the Ban List In order to ban list referral domains or websites with Nginx, you need to create a ban list file. The file below wi...

cleberg.net
Text •

Server Build: Rack Hardware, Consumer Parts

Table of Contents 1. The Dilemma 2. Components 3. Building the Server 4. Software 5. The Results 5.1. Mistakes I Made 1. The Dilemma For years, I have been using desktops and a Raspberry Pi as the backbone of my homelab. I have always wanted to move toward a si...

cleberg.net
Text •

Fixing Nginx Permission Denied Errors on /var/lib/nginx

Table of Contents 1. The Problem 2. The Solution This is a brief post so that I personally remember the solution as it has occurred multiple times for me. 1. The Problem After migrating to a new server operating system (OS), I started receiving quite a few permis...

cleberg.net
Text •

Self-Hosting Guide: Matrix Synapse

Table of Contents 1. Synapse 2. Installation Process 2.1. Dependencies 2.2. Running Synapse 2.3. Configuring Synapse 2.4. Nginx Reverse-Proxy 2.5. Open Firewall & Router Ports 2.6. Adding Matrix Users 1. Synapse If you're reading this, you likely know that ...

cleberg.net
Text •

Void Linux: Remove the Display Manager

Table of Contents 1. Display Manager Services 1.1. Disabling the Current Display Manager 1.2. Enabling a New Display Manager 2. Set Up .xinitrc 3. Set Up Your Shell Profile 1. Display Manager Services In order to change the display manager on Void Linux - or an...

cleberg.net
Text •

Alpine Linux: Minimal Install, Minimal Attack Surface

Table of Contents 1. Alpine Linux 1.1. Installation 1.2. Post-Installation 2. Nginx Web Server 3. Docker Containers 4. Git Server 5. Thoughts on Alpine 1. Alpine Linux Alpine Linux is a very small distribution, built on musl libc and busybox. It uses ash as the...

cleberg.net
Text •

Self-Hosting Guide: Syncthing

Table of Contents 1. An Overview of Syncthing 2. Installing Syncthing 2.1. Server & Desktop 2.2. Mobile 3. How Does Syncthing Work? 3.1. Local Syncthing Server(s) 3.2. Syncthing Dashboard 3.3. Remote Devices 4. My Personal Cloud Storage Set-up 5. Pros & Co...

cleberg.net
Text •

MTP on Linux: Mount Your Phone Without a File Manager

Table of Contents 1. Use a Universal Serial Bus (USB) 3.0 Port 2. Switch USB Preferences to MTP 3. Install jmtpfs 4. Create a Mount Point 5. Mount & Access the Phone's File System I recently ran into trouble attempting to mount my GrapheneOS phone to my laptop run...

cleberg.net
Text •

Installing GrapheneOS on Pixel 6 Pro

Table of Contents 1. Introduction 2. Gathering Tools & Files 2.1. Android Tools 2.2. GrapheneOS Files 3. Installation Process 3.1. Enable Developer Debugging & OEM Unlock 3.2. Reboot Device 3.3. Unlock the Bootloader 3.4. Flashing Factory Images 3.5. Lock th...

cleberg.net
Text •

Building and Exploring SerenityOS

Table of Contents 1. Overview 2. Building 2.1. Clone 2.2. Build 3. Issues 4. Screenshots 1. Overview SerenityOS is a unique operating system (OS) that I have seen pop up in my news feed a few times over the last few years, but I have never had time to test it o...

cleberg.net
Text •

Privacy.com Changed the Product, Not the Name

Table of Contents 1. Privacy.com Changes Their Terms 1.1. Changing from a "Prepaid Debit" Model to a "Charge Card" Model 1.2. Daily Payments and Available Credit 1.3. Personal Information 1.4. Fees 2. My Thoughts 1. Privacy.com Changes Their Terms Recently, Pri...

cleberg.net
Text •

Bash-It: Plugins and Autosuggestions

Table of Contents 1. Bash 1.1. Installation 2. Bash-it 2.1. Installation 2.2. Aliases 2.3. Plugins 2.4. Themes 2.4.1. ble.sh 3. Restart the Session 1. Bash For those who are not familiar, Bash is a Unix shell that is used as the default login shell for ...

cleberg.net
Text •

Recursive FLAC to Opus Conversion

Table of Contents 1. Converting FLAC to OPUS 1.1. Dependencies 1.2. Conversion Process 1.3. Cleanup 1.4. Check the Resulting Size 1. Converting FLAC to OPUS I am currently rebuilding my music library from scratch so that I can effectively archive all the music ...

cleberg.net
Text •

Curseradio: Internet Radio from the Terminal

Table of Contents 1. Overview 2. Features 2.1. Commands/Shortcuts 3. Installation 3.1. Dependencies 3.2. Repository Source Installation 4. Run the Application 1. Overview While exploring some interesting Linux applications, I stumbled across curseradio, a c...

cleberg.net
Text •

GnuPG: Encryption, Signing, Web of Trust

Table of Contents 1. The History of GPG 2. Encryption Algorithms 2.1. Vulnerabilities 2.1.1. Platforms 3. Creating a Key Pair 4. Common Usage 4.1. Email 4.2. File Encryption 4.3. Ownership Signatures 4.4. File Integrity 4.4.1. Finding Public Keys 1. T...

cleberg.net
Text •

Self-Hosting Guide: Git and cgit

Table of Contents 1. My Approach to Self-Hosting Git 2. Assumptions 3. Adding a Git User 3.1. Import Your SSH Keys to the Git User 3.2. (Optional) Disable Password-Based SSH 3.2.1. Setting up the Base Directory 3.2.2. Creating a Test Repository 4. Change the Login...

cleberg.net
Text •

Fedora and i3: Back on Linux

Table of Contents 1. Leaving macOS 2. Fedora 2.1. i3 3. Software Choices 1. Leaving macOS As I noted in a recent post, I have been planning on migrating from macOS back to a Linux-based operating system (OS). I am happy to say that I have finally completed my m...

cleberg.net
Text •

Daily Poetry via Cron

Table of Contents 1. Source Code 2. My Daily Dose of Poetry 3. Prerequisites 4. Breaking Down the Logic 4.1. Required Packages 4.2. Sending the API Request 4.3. Parsing the API Results 4.4. Composing the Email 4.5. Sending the Email 5. The Result! 6. Scheduling the Da...

cleberg.net
Text •

Terminal First: Why the GUI Is Optional

Table of Contents 1. Text-Based Simplicity 2. Living Life in the Terminal 2.1. Browsing the Web 2.2. Chatting with Friends 2.3. Email 2.4. RSS Feed Reader 2.5. Writing & Programming 1. Text-Based Simplicity I've detailed my views on web-based minimalism and...

cleberg.net
Text •

Self-Hosting Guide: FreshRSS

Table of Contents 1. Why Use Really Simple Syndication (RSS)? 2. Documentation 3. Installation 3.1. DNS 3.2. Docker 3.3. Fresh RSS Set-Up 3.4. Nginx Reverse-Proxy 3.5. HTTPS 4. Post-Installation Fixes 4.1. API Set-Up 4.2. Base URL Fix 1. Why Use Really Simple...

cleberg.net
Text •

Ditching Cloudflare

Table of Contents 1. Registrar 2. DNS 2.1. Dynamic DNS Updates 2.2. Njalla's DNS Tool 3. Tunnel 4. Access 1. Registrar After spending a year or so using Cloudflare for DNS (Domain Name System) only - no proxying or applications - I spent the last few months usi...

cleberg.net
Text •

PineTime: Open Source Smartwatch Overview

Table of Contents 1. PineTime Product Information 1.1. Overview 1.2. Product Specifications 2. Unboxing 3. Software 3.1. Watch Operating System (OS): InfiniTime 3.2. iOS App: InfiniLink 4. Final Thoughts 4.1. Pros 4.2. Cons 1. PineTime Product Information...

cleberg.net
Text •

Nginx Reverse Proxy Config

Table of Contents 1. What is a Reverse Proxy? 1.1. A Brief Example 2. Reverse Proxy Options 3. Nginx Reverse Proxy Example 3.1. Local Applications 3.2. Step 1: DNS Configuration 3.3. Step 2: Open Network Ports 3.4. Step 3: Nginx Installation 3.5. Step 4: Nginx Confi...

cleberg.net
Text •

SSH MFA: TOTP on Top of Keys

Table of Contents 1. Why Do I Need Multi-Factor Authentication (MFA) for SSH (Secure Shell Protocol)? 2. Install MFA PAM Module 3. Initialize the PAM Module 3.1. Interactive Method 3.2. Non-Interactive Method 4. PAM Configuration Settings 5. SSH Configuration Settings...