Skip to content

Instantly share code, notes, and snippets.

View matejaputic's full-sized avatar
🏄

Mateja Putic matejaputic

🏄
  • Waystar Royco (basically)
View GitHub Profile
@matejaputic
matejaputic / hister.yaml
Last active May 26, 2026 08:17
Hister Kubernetes Resources
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/component: hister
app.kubernetes.io/name: hister
name: hister
namespace: hister
spec:
@matejaputic
matejaputic / SKILL.md
Created April 28, 2026 05:18
tech-research Deep Software Research Skill for Pi Coding Agent
name tech-research
description Comprehensive technical research by combining multiple intelligence sources — Developer Sentiment (Reddit, HN, forums, GitHub discussions via web_search/github/read), DeepWiki (AI-powered GitHub repository analysis), Web Intelligence (docs, benchmarks, blogs via web_search/read), and Repo Quality Assessment (systematic GitHub repository health evaluation via github/read). Dispatches parallel subagents for each source and synthesizes findings into a unified report with quantitative comparison matrix and ranked recommendations. Use when evaluating technologies, comparing libraries/frameworks, researching GitHub repos, gauging developer sentiment, or investigating technical architecture decisions. Trigger phrases include "tech research", "research this technology", "compare libraries", "evaluate framework", "investigate repo".

Tech Research

Orchestrate multi-source technical research by dispatching parallel subagents to gather intelligence from developer communities (

@matejaputic
matejaputic / README.md
Created October 5, 2025 12:54
Headless Siderolabs Omni

I've been trying to figure out how to use Omni to provision a Talos cluster completely headless and I've learned a couple things:

Just for some context, I've got a local docker compose stack going with Keycloak 26.4 and Omni 1.2.1. I realize this isn't anywhere near prod-worthy but I'm still just poking around.

First, to make it headless, the default SAML flow isn't going to work, so you have to use a service account with OIDC. I needed a minimal OIDC client in Keycloak to make this work. (I just set the client ID to omni and root and home URLs to https://omni.example.com.)

Second, you can pass a --create-initial-service-account flag to the Omni start command, it will do that for you on first run.

Third, if you expose the /_out directory from the Omni container to the host, you can get access to initial-service-account-key.

@matejaputic
matejaputic / haproxy.cfg
Created August 21, 2025 06:28
HAProxy Anubis Authelia integration
global
# all file names are relative to the directory containing this config
# file by default
default-path config
# refuse to start if any warning is emitted at boot (keep configs clean)
zero-warning
# Security hardening: isolate and drop privileges
chroot /var/lib/haproxy
@matejaputic
matejaputic / talosctl-get-cheatsheet.md
Created August 7, 2025 17:23
Talos Linux talosctl get Command Cheatsheet
Command Description
talosctl get acquireconfigspecs.v1alpha1.talos.dev Shows configuration acquisition specifications that define how Talos should obtain its machine configuration
talosctl get acquireconfigstatuses.v1alpha1.talos.dev Shows the current status of configuration acquisition operations and whether they succeeded
talosctl get addressspecs.net.talos.dev Shows desired IP address specifications for network interfaces including static and DHCP-assigned addresses
talosctl get addressstatuses.net.talos.dev Shows actual current IP addresses assigned to network interfaces on the system
talosctl get adjtimestatuses.v1alpha1.talos.dev Shows time adjustment status information for system clock synchronization
talosctl get admissioncontrolconfigs.kubernetes.talos.dev Shows Kubernetes admission control configuration including enabled admission controllers
talosctl get affiliates.cluster.talos.dev Shows cluster nodes discovered
@matejaputic
matejaputic / dark-mode-pdf.sh
Last active July 8, 2025 11:59
Make Dark Mode PDF
#!/usr/bin/env zsh
PATH=/opt/homebrew/bin:$PATH
DIR=$(dirname "$1")
FILENAME=$(basename "$1" .pdf)
magick -density 600 "$1" \
-background white -alpha remove \
-auto-level \
@matejaputic
matejaputic / cilium-bgp-config.yaml
Last active June 21, 2025 15:17
Talos 1.9.5, Cilium 1.8.0-pre.0, Mikrotik RouterOS 7.18.2, BGP Config
---
apiVersion: cilium.io/v2alpha1
kind: CiliumLoadBalancerIPPool
metadata:
name: cilium-external-ip-pool
spec:
blocks:
- cidr: "172.16.0.0/16"
allowFirstLastIPs: "No"
---
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------
Process: Cork [70746]
Path: /Applications/Cork.app/Contents/MacOS/Cork
Identifier: com.davidbures.cork
Version: 1.5.3 (90)
Code Type: ARM-64 (Native)
Parent Process: launchd [1]
<?xml version="1.0" encoding="UTF-8"?>
<!-- OPML generated by NetNewsWire -->
<opml version="1.1">
<head>
<title>netnewswire-export.opml</title>
</head>
<body>
<outline text="Abhinav Upadhyay" title="Abhinav Upadhyay" description="" type="rss" version="RSS" htmlUrl="https://blog.codingconfessions.com/" xmlUrl="http://blog.codingconfessions.com/feed"/>
<outline text="Abishek Muthian" title="Abishek Muthian" description="" type="rss" version="RSS" htmlUrl="https://abishekmuthian.com/" xmlUrl="http://abishekmuthian.com/index.xml"/>
<outline text="Alex Meub" title="Alex Meub" description="" type="rss" version="RSS" htmlUrl="" xmlUrl="http://alexmeub.com/atom.xml"/>
{
"minimal-style@@ax1@@dark": "#5DE4C7",
"minimal-style@@ax1@@light": "#5DE4C7",
"minimal-style@@base@@dark": "#252B37",
"minimal-style@@ax3@@dark": "#5FB3A1",
"minimal-style@@bg3@@dark": "#818CC425",
"minimal-style@@tx2@@dark": "#A6ACCD",
"minimal-style@@ui1@@dark": "#E3E4E229",
"minimal-style@@icon-color@@dark": "#A6ACCD",
"minimal-style@@icon-color-active@@dark": "#5FB3A1",