aboutsummaryrefslogtreecommitdiffstats
path: root/modules/nixos/common.nix
diff options
context:
space:
mode:
authorGravatar Tom van der Lee <tom@vanderlee.com>2026-09-24 10:25:38 +0000
committerGravatar Tom van der Lee <tom@vanderlee.com>2026-09-24 10:25:38 +0000
commitd09bdcd6b9fd6d815d6272a7bc337b410b19b665 (patch)
treec2598b5ed6d702425f32db8dcd3cbeecae510440 /modules/nixos/common.nix
parenta1678f084e757c5464d167a937ac06460d9529df (diff)
downloaddesktop-flake-d09bdcd6b9fd6d815d6272a7bc337b410b19b665.tar.gz
desktop-flake-d09bdcd6b9fd6d815d6272a7bc337b410b19b665.tar.bz2
desktop-flake-d09bdcd6b9fd6d815d6272a7bc337b410b19b665.zip
Add uv and a rootless Docker runtime on NixOS hosts
uv joins the CLI package list. Docker's daemon is now actually managed on NixOS hosts too, in rootless mode (per-user systemd service, no docker-group root-equivalent access), rather than leaving the runtime entirely externally-managed as before -- the already-installed docker CLI picks it up automatically via DOCKER_HOST. This is a documented, narrow exception to developer-environment's client-only tools policy; kubectl and awscli2 remain unaffected. Archives add-uv-and-docker-runtime and syncs the new container-runtime capability plus the narrowed developer-environment requirement into the main specs. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HngxrvqEzq8oBEBDtrYJyB
Diffstat (limited to 'modules/nixos/common.nix')
-rw-r--r--modules/nixos/common.nix6
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/nixos/common.nix b/modules/nixos/common.nix
index a219850..10f48c6 100644
--- a/modules/nixos/common.nix
+++ b/modules/nixos/common.nix
@@ -68,4 +68,10 @@
68 nssmdns4 = true; 68 nssmdns4 = true;
69 openFirewall = true; 69 openFirewall = true;
70 }; 70 };
71
72 # Rootless: runs as the user's own systemd user service, not as root, and
73 # has no docker-group privilege-escalation path. setSocketVariable exports
74 # DOCKER_HOST automatically so the docker CLI (dev-tools.nix) just works.
75 virtualisation.docker.rootless.enable = true;
76 virtualisation.docker.rootless.setSocketVariable = true;
71} 77}