kat's configuration flake
Find a file
2023-05-01 10:24:09 -07:00
.idea feat: SSH CA 2023-02-04 14:18:40 -08:00
cluster [TRAEFIK] Expose 2023-05-01 10:24:09 -07:00
common [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00
darwin [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00
kat [GNOME] Resize windows with secondary click 2023-04-29 15:34:49 -07:00
modules [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00
nixos [CLUSTER] Traefik, cloudflare, firewall, ... 2023-05-01 10:00:27 -07:00
packages [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00
shells [CLOUDFLARE PAGES] kittywit.ch 2023-04-29 14:06:20 -07:00
systems [TRAEFIK] Lurching towards function 2023-05-01 08:07:32 -07:00
tf [RAN] Allow k8s apiserver 2023-05-01 09:50:17 -07:00
.envrc feat: overlays + pkgs 2023-01-27 15:20:34 -08:00
.gitignore [TERRAFORM] Remove pulumi. Adopt Terraform Cloud. 2023-04-26 17:29:26 -07:00
.sops.yaml [TERRAFORM] Remove pulumi. Adopt Terraform Cloud. 2023-04-26 17:29:26 -07:00
default.nix feat: pulumi, nix-std, ... 2023-01-18 13:35:31 -05:00
flake.lock [TERRAFORM] Remove pulumi. Adopt Terraform Cloud. 2023-04-26 17:29:26 -07:00
flake.nix [TERRAFORM] Remove pulumi. Adopt Terraform Cloud. 2023-04-26 17:29:26 -07:00
formatter.nix feat: overlays + pkgs 2023-01-27 15:20:34 -08:00
outputs.nix [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00
overlays.nix [SUMIREKO] Make sumireko bearable. 2023-02-20 14:24:36 -08:00
pkgs.nix [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00
README.md [ROLES] Clean up a bit. 2023-04-30 16:24:20 -07:00
std.nix feat: renko hostname 2023-01-30 10:04:27 -08:00
tree.nix [STYLE/REFACTOR] Deadnix, Alejandra and Statix 2023-04-25 16:48:32 -07:00

kittywitch infrastructure

This repository is my personal infrastructure repository. It contains the Nix and Terraform I leverage.

Structure

Path Purpose
common/ Common imports to NixOS and macOS systems
darwin/ macOS (nix-darwin) related configuration
darwin/common Imported into all nix-darwin systems
kat Configurations relevant to my use of a computer, including base16 + vscodium
kat/common Disables manuals
kat/gnome GNOME. Including dconf configuration.
kat/gui Packages I use on a host that has a WM / DE.
kat/neovim Text editor of choice, though VSCode or a JetBrains IDE normally takes forefront for development.
kat/shell My shell configs. I use zsh, fzf, z, starship, exa, rg, fd, sd, ...
kat/sway My tiling window manager of choice (though I'll happily take i3 too)
kat/user Per-system type configurations. Data on my user.
modules/nixos An area for more reusable NixOS modules
modules/darwin An area for more reusable nix-darwin modules
modules/home An area for more reusable home-manager modules
nixos/ NixOS related configuration
nixos/common Imported into all NixOS systems
nixos/hardware Per-machine hardware configuration
nixos/roles Roles / services / ...
packages/ Package overlay
shells/ nix develop shells / devShells
systems/ A collection of NixOS hosts and a nix-darwin host.
tf/ Terraform!
.envrc direnv config
.sops.yaml Secrets (user & hosts) config
default.nix flake-compat
flake.nix flake inputs
formatter.nix flake formatter of choice
outputs.nix flake outputs
overlays.nix nixpkgs overlays
pkgs.nix nixpkgs config
std.nix Overlay to nix-std
tree.nix The configuration system used by my import handler, tree

Usage

# get the repo shell
nix develop .#repo

# get the repo shell from outside of the repo
nix develop github:kittywitch/kittywitch#repo

# use direnv to get the repo shell
direnv allow

# repl
nix repl .
nix repl
:lf .

# deploy locally
sudo nixos-rebuild --flake .#$HOST switch --show-trace

# deploy with deploy-rs (without checks)
deploy-rs -s .#$HOST

# edit a secret file
sops ./systems/yukari.yaml

# output a secret file
sops -d ./systems/yukari.yaml

# plan an apply
terraform plan

To-dos

  • Figure out roles/ vs profiles more.