Yaash’s Documentation, Notes and Scripts

A personal collection of scripts, tools, and technical notes. I use it to store runnable code snippets, document useful commands, and keep practical knowledge for future reference.

Fedora bootc on a Raspberry Pi 5: Build, Flash, and Boot (Partial Support)

Host: Fedora Linux 44 KDE (x86_65) Target: Raspberry Pi 5 (ARM64) Tools: Podman, dd Container Image: quay.io/iamyaash/rpi5-bootc Firmware: github.com/worproject/rpi5-uefi 0. Build the container image and push it to quay.io Everything in this guide starts from a bootc container image, here quay.io/iamyaash/rpi5-bootc:latest. Although you need qemu-user-static to be installed on your host PC but I ran Podman to build the container image on a Raspberry Pi 5, so it won’t be needed. FROM --platform=linux/arm64 quay.io/fedora/fedora-bootc:42 # Install hardware utilities, firmware packages, and essentials RUN dnf -y install \ NetworkManager \ NetworkManager-wifi \ wireless-regdb \ linux-firmware \ iproute \ openssh-server \ htop && \ dnf clean all # Ensure critical services start on boot RUN systemctl enable NetworkManager sshd Build the image: Run this in the project folder. ...

October 20, 2026 · 3 min · Yashwanth Rathakrishnan

Forgejo: Getting Started with Integration Tests & E2E Tests

A beginner-friendly guide to running integration tests in Forgejo. Learn how to execute individual tests, use tools like ‘make’ and ‘go’, and explore the essential basics to help you get started with integration testing.

September 29, 2026 · 3 min · Yashwanth Rathakrishnan

Forgejo: Installing and Configuring the Forgejo Runner Binary

A step-by-step guide to installing the Forgejo runner as a standalone binary, configuring it as a systemd service, and connecting it to your Forgejo or Codeberg instance.

August 4, 2026 · 4 min · Yashwanth Rathakrishnan
kubectl command

Kubectl: Show Details of Specific/Group Resources

This post explains how to get detailed description of the specific or group resources using describe command. This provides a human-readable overview of k8s resources on status, events, configs and relationships with other components.

July 9, 2026 · 6 min · Yashwanth Rathakrishnan

Linux: Fundamentals of Swap Space

Linux swap memory is a portion of disk storage used as virtual memory to supplement RAM, allowing the system to continue running when physical memory is full.

July 8, 2026 · 3 min · Yashwanth Rathakrishnan
kubectl command

Kubectl: Safely Drain A Node

This post explains how to safely evict pods using the drain command. It covers how the drain command works behind the scenes, includes the essential commands you need, and ends with a practical example to demonstrate its usage.

July 7, 2026 · 3 min · Yashwanth Rathakrishnan
kubectl command

Kubectl: Renaming the Nodes

This post shows how to rename a k3s node using the standard drain, rejoin, and relabel procedure. It walks through changing the hostname, replacing the old node entry, and restoring workload scheduling on the new node.

July 2, 2026 · 2 min · Yashwanth Rathakrishnan

Managing Keyboard Control and Macros with keyd

Use keyd to create macros with more control, so they run only when keys are pressed on a specific keyboard. I will also show the installation, setup, and configuration steps.

June 29, 2026 · 2 min · Yashwanth Rathakrishnan
kubectl command

Kubectl: Running kubectl Without sudo (and Fixing Permission Warnings)

This guide outlines three proven methods to configure passwordless non-root kubectl access in a K3s cluster. It covers setting up your local user context, adjusting system file permissions, and permanently silencing annoying configuration permission warnings.

June 28, 2026 · 2 min · Yashwanth Rathakrishnan

KDE: Limiting Battery Charging Level

Quick guide on how to limit battery charge level in KDE using systemd service.

May 18, 2026 · 2 min · Yashwanth Rathakrishnan