Table of Contents 1. Background 2. Picking my provider 3. German bureaucracy 4. Setting up my VPS 4.1. SSH config 4.2. Upgrading OpenBSD to 8.0-beta 4.3. Firewall 4.4. TLS certificates 4.5. Web server 4.5.1. Be careful with MIMEs 5. Findings; or, Bots Love Your Obscure Content! 6. Conclusion In this post I'd like to explain the "how"-s and "why"-s of moving from forge-based static site hosting to…
Table of Contents 1. A word of warning 2. Extracting the specification 2.1. File format 2.2. Splitting the data 2.3. Writing the system data 2.4. Writing the image data 3. Interpreting the bytecode 3.1. Opcodes 3.2. Instructions 3.3. State of the machine 3.4. Execution 3.5. Loading the system image 3.6. Getting the framebuffer 4. Driving our VM 4.1. OpenGL housekeeping 4.2. Implementing the…
Table of Contents 1. Reorienting my panel until satisfaction 2. …I got another one 3. The bills 4. What could I have done differently? 5. Conclusion It's been about two months since I published my last post in which I described my background research and first experiences running my PC off solar power. Since then I've been iterating on my setup and received two power bills, and I figured these…
Table of Contents 1. The plan 2. Parts of a solar setup 3. My particular setup 3.1. Power station 3.2. Solar panel 3.3. Cabling 4. The initial results 4.1. Shortcomings of the RIVER 3 5. A hasty, but needed upgrade 5.1. Shortcomings of the Anker SOLIX 6. Conclusion I've been long fascinated by the concept of solar power. The idea of putting some weird blue plate in your garden or on your rooftop…
Table of Contents 1. The problem 2. The solution I happened to have reinstalled my PC recently. While I have set things up to pretty much out of the box, I have left one glaring omission which came back to haunt me (for a single afternoon or two, after which I've devised and quickly deployed a fix). 1. The problem Note: This post will follow mostly the same path I took to investigate. Except a…
Table of Contents 1. The issue that broke the camel's back 2. The breakthrough 3. Pre-op tests 4. The day of the operation 4.1. The moments before the operation 4.2. The operation 4.3. The moments after the operation 4.4. At home 5. The day after 5.1. Checkup 6. Day 3 7. Day 4 8. Day 5 and Conclusion I didn't exactly win the genetic lottery when it comes to vision. Both my parents wear thick…
Table of Contents 1. Community 1.1. IRC 1.2. Mailing lists 1.3. Subreddit 1.4. Fediverse 2. Packaging wows and woes 2.1. I really love the go-getter attitude of Guix 2.1.1. A side-note about speed 2.2. Debugging is an unpleasant experience 2.2.1. Missing parentheses 2.2.2. Non-existent variables 2.2.3. Circular dependencies 2.3. A cornucopia of styles 2.4. ChangeLog is confusing 3. System ups and…
Table of Contents 1. Job 2. Hype-driven death march 3. Art-robbery 4. Post-truth society 5. We're burning our planet for… this? 6. I'm not fully innocent, but at least I care This website does not, will not, and has not willingly used AI for its creation. I write every word myself and rely on traditional methods to publish it to the internet. That means I correct my spelling using Hunspell in…
Table of Contents 1. Introduction 2. Baby steps 3. Enter WezTerm 3.1. A mediocre first attempt 3.2. A brief second attempt at packaging locally 4. Third time's the charm 4.1. Setting things up 4.2. Importing Cargo crates 4.3. Patching Cargo.toml 4.4. We have liftoff… Almost 4.5. GPU maladies 4.6. Finding fonts 4.7. It's Vulkan, not Vulkan't 4.8. A short aside: Committing is hard! 5. And yet, some…
Table of Contents 1. My Journey to Guix System 2. Installer Impressions 3. I Can't Find my Way-land 4. Sympathy for the Devil 5. Goals 6. Results 6.1. The Good 6.2. The Ambiguous 6.3. The Bad 7. Overall 8. Notes 1. My Journey to Guix System Feel free to skip this section if you don't really care about backstories. I just figured it makes sense to recap how and why one might start having an…
Table of Contents 1. Introduction 2. Basic outline 3. Implementation 3.1. Vector class 3.2. Interpolation function 3.3. Noise function 3.4. Main loop 1. Introduction Ever since I first started programming, I was always fascinated by noise functions. The idea that you can take a relatively simple algorithm and generate realistic-looking textures of clouds, fire, cloth, etc. is really cool. However,…