I have added rust support to flags.gg and by that I mean you can now call flags.gg inside rust 
 but you can also turn flags on locally 
 use flags_rs::{Auth, Client};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
 // Initialize the client
 let client = Client::builder()
 .with_auth(Auth {
 project_id:…
I have added Golang support to flags.gg and by that I mean you can now call flags.gg inside go 
 but you can also turn flags on locally 
 package main

import (
	'github.com/flags-gg/go-flags'
	'log'
	'os'
)

func main() {
	flags := flags.NewClient(flags.WithAuth(flags.Auth{
		ProjectID: 'tester',
		AgentID:…
CV and Description 
 Its probably a good idea to have a CV and description of somewhere. 
 I have been a software engineer for over 25 years, working on various projects and for some very well known companies. 
 Personal projects 
 All these github orgs are mine, I also recently soft-launched a side project of Flags.gg which is a feature flag system like LaunchDarkly 
 LinkedIn…
Flags.gg Launched 
 On 2024-12-24 I soft launched (soft because not all features are finished yet, but enough to get it launched) the service 
 The service is works with the majority of features in place 
 Live Features 
 
 
 Multi Project 
 If you have a plan that supports multiple projects, then the support exists that flags don’t clash with each other 
…
This is a very simple url shortner, it does exactly that 
 It has an increadbly simple API 
 Very simple API 
 Create 
 curl --request POST \
 --url http://api.1tn.pw/create \
 --header 'Content-Type: application/json' \
 --data '{
 'url': 'https://keloran.dev'
}'
 Returns 
 {
 'short': 'yJjWqM',
 'url': 'https://keloran.dev'
}
 Get 
…
This is a feature flag system, I have been designing for a few months now, 
 it has a few nice features and works in React and NextJS 
 it will soft launch on Boxing Day 2024 
 Implemented features
* NextJS clientside support
* React support
* multi project
* multi agent
* multi Environment
* secret menus with custom keycombos
* golang agent now supports…
Another project 
 So I decided to create another project, this was mainly to re-learn react, and to get back into the swing of things, so what is it 
 Well if you can’t guess by the title, its a todo-list, specifically Todo-List.app 
 Features 
 
 Entirly private, encryption happens in browser 
 Storage is only of the encrypted form 
 Login is using Keycloak, so…
Cluster Update 
 My kubernetes cluster runs on a mix of RaspberryPI 4s, and x86(AMD64) machines, but because I built it originally with only the raspberrys, my control plane was on a PI 
 Well that was working fine for nearly 2 years, but the SD card on the control plane died, which wasn’t a good time 
 So I decided to what I always do, and go nuts 
 Spending spree 
 So I…
Old iPads with a Modern Use 
 I have gone quite heavy into home automation, not too extreme (mainly because I don’t have a lot of automated products) but enough that it has made an impact on my life, I have the following automations 
 
 Automatic lights in a few rooms
 
 Kitchen: the light comes on when you enter the room, and only turns off after it has been vacant for 5…
Inverse Images in Mailspring 
 So I run most apps in darkmode, and this can lead to a few issues, namely in Mailspring which does darkmode in the “easy” method, which is to inverse(100%) everything
now this makes general emails really easy, the problem is when you get to images, because inversed images are horrible to look at 
 So I got bored over new year, and decided I…
Well that was annoying 
 So I run arch on my framework, and because I’m slightly an idiot I didn’t have linux/linux-headers in the do not upgrade filter, now thats a lesson I won’t forget soon 
 I did the standard upgrade, which brought with it the latest (5.9.12) kernel with it, wish I remembered it did that, because when I rebooted, my display no longer worked, and once…
Premise 
 So I decided to switch my home directory to use systemd-homed, now this is a cool system that works with btrfs and does snapshoting built in, this led to a few issues though 
 Issue 
 So because of the way containerd and buildkit use squashfs it can’t submount inside the homed directory 
 Fix 
 If you have multiple hdds then this is easier, if not your gonna…
ArchLinux NerdCTL 
 Arch is a lot like Slackware and Gentoo, whilst it does have a package manager, you have to know what you want before things work 
 so NerdCTL has the ability to use buildkit to install stuff on multi-arch but that isn’t as easy as you would like and as such there are a few things that need installing to make it work 
 Steps 
 This will need YAY (well…
Framework Laptop 
 My MBP decided the touchbar and bridgeos was going to basiclly blow up, so because of this I decided it was time I tried to daily drive linux again 
 I bought a framework laptop with the following specs 
 
 i7-1165G7 
 64Gb DDR4-3200 
 1TB SN850 
 US Keyboard 
 UK PowerSupply 
 Expansions 
 
 
 MicroSD 
 250Gb 
 DisplayPort…
Mistakes were made 
 Well I’ve had a fun weekend, on one side I “finally” caught covid and as such my concentration levels were very low, now that doesn’t make up for what I did but at least I have 1/2 an out 
 What happened 
 I decided to do a little cleaning up of my kubernetes cluster, and decided that I should remove some deployments that weren’t in…
Retro Board Update 
 Well after a couple of months of coding ive got about 50% through doing reto-board, major progress has been made, it is now techniclly possible to sign up for it, 
 you can’t yet make any boards, but there an example version of what a board will look like non of the functionality works in the example 
 it took quite a while for me to get the login to work,…
K3OS 
 K3OS is kinda self explanitory if you know what K3s is, if not then k3OS is Rancher’s k3s which is a kubernetes compatible version but a lot smaller 
 Why did I tell you that 
 Well now that bit is out of the way, I upgraded ubuntu on one of my raspberry pi 3’s, and at the same time upgraded k3s to the latest version, and that pi became almost impossible to use with…
Issue 
 So you are already using RancherDesktop and NerdCTL from the betas congrats, but you want to use the multi-platform build 
 so you need to update Rancher and Nerd, well thats where the issue exists, Lima doesnt update NerdCTL automatically so you need to update your instances version 
 Fix 
 First you need to get into the instance 
 LIMA_HOME =…
Integrating Vault with 1Password in Kubernetes 
 I decided that I should probably get a real handle on my passwords and secrets in kubernetes, since kubernetes is not very good at keeping secrets 
 So I don’t generally take a helm chart or kube-schema at face value, this has more to do with I prefer to keep things in their own namespace rather than in “default”, because…
Retro Board 
 Well I’ve started another project, retro-board.it this is just going to be a very simple app, that has a couple of options 
 Initial Signin 
 
 Ask the user what the Company name is, this is to create a subdomain with that company name (if it doesnt already exist) - if the company name already exists then enter the password for the domain 
 Ask the user for…
Well I made Kubernetes cluster using Raspberry PIs, I largely followed the guide RasperryPI 4 Cluster 
 It has the following features 
 
 5 Raspberry Pi 4s, 4Gb RAM 
 1 DualCore x64, 16Gb RAM 
 1 DualCore x64, 4Gb RAM 
 4Tb storage distributed over the whole cluster 
 ClusterCTRL, this is so power goes through the backplane rather than having 5 seperate power sources…
This is a bug tracking system, any time an error happens on your site it tells bugfixes in the agent for your language, 
 then if the error occurs quickly or once in a while it informs the user some how 
 nothing is public yet (the javascript version released needs fixing) 
 Planned languages supported
* Go
* Javascript
* Swift
 Planned notification systems
*…
This project is so that I can deploy projects into my cluster using github pipelines 
 now that sounds simle enough, except there aren’t any (from my limited research) deployment agents for kubernetes that work on arm 
 So whats my plan, well this system works thus 
 Method 
 There is a github action that is triggered in your pipeline, this talks to an orchestrator on…
Started a index generator, all it does is reads the projects and blog directory, 
 
 if there are pages in the project folder
 
 current folder, add to that section 
 past folder, add to that section 
 
 
 if its in blog folder it adds those to that section 
 
 Very simple, I’ll add more features in future, but this is just very simple 
 Added a…
Well I finally pulled the plug and bought a Planck, 
 rather than build my own though I went with a Planck EZ 
also rather than buy 1 like any sensible person, when it costs nearly 300 quid, I bought 2 
 and because obviously I’m npt to be trusted I decided to flash one and learn Workman, I have a couple of firmwares if anyone else is insane like me 
 Workman this layout is…
I decided that I should stick all my aliases and functions that I use into a zsh plugin, that way I can maintain it separately 
 
 Github 
 Home
Progress has been slow to start with, but that should now speed up 
 I have finished the authorizer, and moved the storage system to Postgres from Dynamo, the main reason for that is that a lot of the data is relational
so it makes sense to put it in a relational database 
 Nest 
 This is the service where all CRUD operations take place, it is also what triggers Hive 
 Hive…
I have decided to go back to BugFix.es and re-start development 
 mainly this is due to me needing a common bug/issue tracking system (this is not a ticket system like jira) 
 BugFix.es tracks bugs, so if a bug is sent to the system and it hasn’t been seen before or was seen a long time ago, or is happening a lot in a short period of time
it creates a ticket / notification so…
Added a very (stupidly simple) editor to static generator 
 All it does is let me create new entires, doesn’t allow editor, if I make a mistake I have to start again 
 and I can’t edit any old filess 
 
 GitHub Link 
 Home
Started a index generator, all it does is reads the projects and blog directory, 
 
 if there are pages in the project folder
 
 current folder, add to that section 
 past folder, add to that section 
 
 
 if its in blog folder it adds those to that section 
 
 Very simple, I’ll add more features in future, but this is just very simple 
 
 Home