GitOps repository for personal infrastructure management
  • Nix 32.5%
  • Jinja 21.5%
  • Python 17.9%
  • Shell 11.8%
  • Go 8.1%
  • Other 8.2%
Find a file
Erich Blume 4f460cf897 Set monitor to 165Hz with adaptive sync, add pactl
Running at 60Hz caused significant input lag. Enable full 165Hz
refresh rate on the OMEN 27i and adaptive sync for VRR.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 17:53:11 -08:00
.claude
.dagger Fix flake-lock: enable experimental features, update lockfile 2026-02-18 10:25:18 -08:00
.forgejo/workflows Eliminate double towncrier run in release workflow (#199) 2026-02-16 21:24:34 -08:00
.github
ansible Fix changed_when check for nixos-rebuild (stderr not stdout) 2026-02-18 15:33:30 -08:00
argocd Add Apple Silicon ZMQ detector for Frigate (#206) 2026-02-17 19:03:28 -08:00
containers Port ntfy to locally built container image (#202) 2026-02-17 10:18:20 -08:00
docs Add volume keys, fuzzel launcher, bluetooth speakers, update docs 2026-02-18 17:42:41 -08:00
fly Fix cache hit rate on APM and Fly.io dashboards (#177) 2026-02-12 18:40:48 -08:00
mise-tasks Fix ringtail tailscale check: use jq instead of grep 2026-02-18 10:36:08 -08:00
nixos/ringtail Set monitor to 165Hz with adaptive sync, add pactl 2026-02-18 17:53:11 -08:00
pulumi Add NixOS configuration for ringtail workstation (#207) 2026-02-18 08:24:25 -08:00
.ansible-lint
.gitignore
.pre-commit-config.yaml Adopt Dagger CI for docs build (Phase 2) (#157) 2026-02-11 16:33:16 -08:00
.yamllint.yaml
Brewfile
CHANGELOG.md Update docs release to v1.9.4 2026-02-17 07:30:39 -08:00
CLAUDE.md Port ntfy to locally built container image (#202) 2026-02-17 10:18:20 -08:00
dagger.json Adopt Dagger CI for container builds (Phase 1) (#156) 2026-02-11 15:38:31 -08:00
LICENSE Adopt Dagger CI for container builds (Phase 1) (#156) 2026-02-11 15:38:31 -08:00
mise.toml Adopt Dagger CI for container builds (Phase 1) (#156) 2026-02-11 15:38:31 -08:00
README.md
service-versions.yaml Upgrade Frigate 0.16.4 → 0.17.0-rc2 (#205) 2026-02-17 16:56:12 -08:00
towncrier.toml

blumeops

                    l0K                                k..:k.
                  .:...c.                            ;c....
                    ....'o                          x.....
                      ....k                        x....
                       ... l'                    'c....
                        ....,l                  o'....
                         .....x                k....
                          .....d.             c....
                            ... l            x....
                              .,.d         ;c.c'
                               'c':;      x',c.
                                .:,'o   .x.::.
                                 .;:.k ,:.c'
                                   ,c.c';:.
                                    .,.:;.
                                   ;'.c, l
                                  d',c..:.d.
                                 O.:;.  'c';c
                               ;c.c'     .:;.x
                              o',c.       .;:.k
                             x.::.          'c.l.
                         dOKl.c,             .c,'o
                   0l'...... ..'              .::.ocx.
                 'o ............              o .... :olx;
                x,ox;. ....... .k             ....,dKKo;..x
              'd,OXXXXk:. ...... ;            ;:dXOl;',';l;o;
             x,oXXXXXXXXXkc. ...              .lc,',':dKNNNx;x;
           ;o;0KXXXXXXXXXXXX0l.                .',ckNNNNNNNNNxco0d
          l,d0oOXKOKXXXXKXXXX0.                  kNNNNNNNNNNNNNXxloo::
             .OXxdXKOX0kXXXX0.                   .KNNNNNNNNNNXONX0o.
                ,OdxKldXXXXx.                     ,NNNNNNNNNNNKoc
                   :.OXXkKo                       .kNNNNNNNNXx.
                      ':0c                         .NdNkXkc

Blue Mops — GitOps for Erich Blume's personal computing environment.

What is this?

Infrastructure-as-code for my tailnet (tail8d86e.ts.net). This repo contains ansible playbooks, configuration, and automation for managing my personal infrastructure.

This codebase was heavily co-authored by Claude Code, as an experiment in LLM-assisted development. I want to include a personal note here that I don't know entirely how I feel about LLMs in our current era, but it felt important to learn.

Development

Pre-commit Hooks

This repo uses pre-commit for code quality and consistency. Install hooks with:

uvx pre-commit install

Run all hooks manually:

uvx pre-commit run --all-files

Hooks include:

  • General: trailing whitespace, end-of-file fixer, large files, merge conflicts
  • Secrets: TruffleHog for secret detection
  • YAML: yamllint, ansible-lint
  • Python: ruff (linting + formatting)
  • Shell: shellcheck, shfmt
  • TOML: taplo
  • JSON: prettier

CI/CD

This repo uses Forgejo Actions for CI/CD. Workflows live in .forgejo/workflows/ (not .github/workflows/). The runner executes jobs in host mode within the Kubernetes cluster.

Documentation

Documentation lives in docs/ and follows the Diataxis framework. Published at https://docs.eblu.me.

Docs use Obsidian wiki-link syntax ([[link]]) for cross-references. Edit with any markdown editor, or use obsidian.nvim for enhanced navigation.