Blog

  • Configure Tailscale DNS on Qubes OS
    · 2 min read

    This post goes over configuring Tailscale DNS to support DNS resolution from other AppVMs using the Tailscale VM. This guide assumes you already have Tailscale configured in a TemplateVM and a sys-tailscale AppVM is …

    #Qubes OS
  • Why I Use NixOS
    · 6 min read

    This post highlights my reasoning behind switching to NixOS. This was originally posted as a Reddit comment. Linux/Unix History Please head over to read all about my Linux/Unix History. In a Gist: I have about 20 years …

    #NixOS
  • Announcing the new Golang infrastructure: buildGoModule
    · 4 min read

    Important This guide was written on March 17th 2019 and thus is out of date! Please refer to Go section in the nixpkgs manual for a more up-to-date instructions! I recently introduced a new function in Nixpkgs named …

    #NixOS
  • 💀 How I Accidentally DDoSed My Own Kubernetes Cluster
    3 min read

    Introduction For the past few weeks, my production Kubernetes cluster has been fighting a ghost. Every few days (or sometimes hours), the entire Control Plane would commit suicide. Critical components like the scheduler …

    #Kubernetes
  • 🔒Locking Down Mastodon: Cilium Network Policies & Audit Mode
    4 min read

    The Goal: Defense in Depth Running Mastodon on my bare metal cluster exposes it to the wider internet for federation. If the Mastodon container were ever compromised (RCE, supply chain attack, etc.), I need to ensure the …

    #Kubernetes
  • 🚨Alerting on Kyverno Policy Validation Failures with Loki
    2 min read

    Context We needed to create an alert for Kyverno policy violations across our clusters. The goal was to catch when a resource fails validation (e.g., policy="require-requests-limits") and surface relevant metadata like …

    #Kubernetes
  • Arista - Add SSH key to a user
    1 min read

    Arista - Add SSH key to a user Problem I want to add an SSH key to my user Solution Starting with a fresh shell logged in as admin. Template localhost>enable localhost#config localhost(config)#username <user> sshkey …

    #Arista Networks
  • Arista - Check Fan Speed
    1 min read

    Arista - Check Fan Speed Problem I want to check the current speed for the fans. Solution You can check the fan speed by running the command show environment cooling Example localhost>show environment cooling System …

    #Arista Networks
  • Arista - Configure Terminal
    1 min read

    Arista - Configure Terminal Problem I need to configure an Arista device Solution To configure an Arista, you must open a configure terminal which requires a user with privilege 15. Start the shell following the steps …

    #Arista Networks
  • Arista - Control Fan Speed
    1 min read

    Arista - Control Fan Speed Problem I want to set a custom fan speed for the fans. Solution Ensure you are logged in as admin (or privileged user). Change the fan speed can be done with the command environment fan-speed …

    #Arista Networks
  • Arista - Create a new user
    1 min read

    Arista - Create a new user Problem I need to add a new user to Arista Solution Starting with a fresh shell logged in as admin. Template localhost>enable localhost#config localhost(config)#username <user> privilege …

    #Arista Networks
  • Arista - Custom Fan Speed Controller
    4 min read

    Arista - Custom Fan Speed Controller Problem The automatic fan speed controller is too conservative which leads to a lot of noise coming out of my switch. For instance, in an ambient temperature of 15℃ the fan is running …

    #Arista Networks
  • Arista - Download Firmware - DCS-7050T
    1 min read

    Problem I want to download the latest firmware supported by my Arista DCS-7050T network switch that has reached End-of-life on August 9th, 2019. I can't seem to find the firmware Solution List of EOS firmware I found on …

    #Arista Networks
  • Arista - Set the admin password
    1 min read

    Arista - Set the admin password Proble I want to configure a password for the admin user. Solution Starting with a fresh shell logged in as admin. localhost>enable localhost#config localhost(config)#username admin secret …

    #Arista Networks
  • Arista - Update The Firmware
    1 min read

    Arista - Update The Firmware Problem Solution localhost>show version Arista DCS-7050T-36-F Hardware version: 04.02 Serial number: JPE14202311 System MAC address: 001c.7330.53b0 Software image version: 4.12.7.1 …

    #Arista Networks
  • Automation
    2 min read

    alias: "OnCall: Page Wael" description: "Pager is triggered with a Webhook and notifies me until I ack the page" triggers: - trigger: webhook allowed_methods: - POST webhook_id: "-13dy9GK4x2S9t7gDzwMNqClO" local_only: …

    #Home Assistant
  • CDC: Why Decompression is Worth the Complexity
    7 min read

    When I started building ncps, a Nix cache protocol server, the fundamental question was: should we chunk compressed NARs or decompress first? Decompressing before chunking adds CPU cost and complexity. Compressing …

    #NixOS
  • Cilium Network Policies
    1 min read

    apiVersion: cilium.io/v2 kind: CiliumNetworkPolicy metadata: name: mastodon-egress-federation namespace: mastodon spec: egress: - toCIDRSet: - cidr: 0.0.0.0/0 except: - 192.168.0.0/16 - 100.64.0.0/10 - 10.244.0.0/16 - …

    #Kubernetes
  • Cloudflare Tunnel - Troubleshooting - Cannot determine default origin certificate path
    2 min read

    Cloudflare Tunnel - Troubleshooting - Cannot determine default origin certificate path Problem I installed a Cloudflare Tunnel on my Kubernetes cluster using the Helm Chart and I used the token given by the Cloudflare …

    #Kubernetes
  • Cloudflare Tunnel for Kubernetes
    1 min read

    Cloudflare Tunnel for Kubernetes Problem Hosting services on Kubernetes is amazing but running Kubernetes inside a home network can be quite risky as it's incredibly difficult to ensure the environment is secure, …

    #Kubernetes