You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This project is constantly evolving according to my needs. If you'd like to be informed about upcoming stable versions, please let me know on GitHub or by subscribing to my YouTube channel (FR). Thank you!
Services distributed across network servers through Caddy proxies
🛜
Auto-networking
Zero-conf network plumbing (DNS, DHCP, firewall...) with dnsmasq
SSO status
OAuth2 = supports OAuth2 / OIDC
Native = no plugin or external component required; can be configured directly
PKCE = supports PKCE
Declarative = all settings can be declared in NixOS
OK = works on my configuration
Application
OAuth2
Native
PKCE
Declarative
OK
Comments
Outline
✅
✅
✅
✅
✅
Works perfectly
Mealie
✅
✅
✅
✅
✅
Works perfectly
Vaultwarden
✅
✅
✅
✅
✅
Fill the right e-mail first
Matrix Synapse
✅
✅
✅
✅
✅
Works Fine (+Element +Coturn)
Immich
✅
✅
✅
⚠️
✅
Non-declarative configuration
Forgejo
✅
✅
✅
❌
✅
Non-declarative configuration
Nextcloud
✅
❌
❌
❌
✅
Requires a plugin, non-declarative
OAuth2 Proxy
✅
✅
✅
✅
⚠️
Multiple backends to resolve
Jellyfin
✅
❌
❔
❔
❔
Coming soon
Grafana
✅
❔
❔
❔
❔
Coming soon
AdGuard Home
❌
❌
❌
❌
❔
Via OAuth2 Proxy
Mattermost
❌
❌
❌
❌
❌
No more OAuth2 for the TEAM edition
Homepage screenshot
One configuration for a full network
Just commands
Main command for DNF administrator:
Available recipes:
[apply]
apply on what='switch'# Apply configuration using colmena [alias: a]
apply-local what='switch'# Apply the local host configuration [alias: al]
apply-verbose on what='switch'# Apply force with verbose options [alias: av]
[check]
check # Recursive deadnix on nix files
check-flake # Check the main flake
check-statix # Check with statix
[dev]
cat host=''# Clean + git Amend + apply-local (or on host) + Test
clean # format: fix + check + generate + format [alias: c]
develop # Launch a "nix develop" with zsh (dev env) [alias: d]
fix # Fix with statix
format # Recursive nixfmt on all nix files
generate # Update the nix generated files
pull # Pull common files from DNF repository
push # Push common files to DNF repository
[install]
build-iso arch="x86_64-linux"# Build DNF iso image
configure host # New host: ssh cp id, extr. hw, clean, commit, apply
configure-admin-host # Framework installation on local machine (builder / admin)
copy-hw host # Extract hardware config from host
copy-id host # Copy pub key to the node (nix user must exists)
full-install host user='nix' ip='auto'# New host: full installation (install, configure, apply)
install host user='nix' ip='auto' do='install'# New host: format with nixos-everywhere + disko
install-key host # New host: format with nixos-everywhere + disko
passwd user # Update a user password
passwd-default # Update the default DNF password
push-key host # Push the infrastructure key to the host
[manage]
enter on # Interactive shell to the host [alias: e]
fix-boot on # Multi-reinstall bootloader (using colmena)
fix-zsh on # Remove zshrc bkp to avoid error when replacing zshrc
gc on # Multi garbage collector (using colmena)
halt on # Multi-alt (using colmena)
reboot on # Multi-reboot (using colmena)
About
A multi-user, multi-host, multi-network NixOS configuration framework.