diff --git a/README.md b/README.md index be46434..048ad14 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,8 @@ I've done nixos a few times but this time around it's been very comfterable. Nothing is really that special about it, but feel free to copy it! > silly language thing creddited to https://github.com/SylvanFranklin/.config + +This flake currently defines one host: `framework` which is my laptop. + +- system config lives in `configuration.nix` +- Home Manager config lives in `home.nix` diff --git a/configuration.nix b/configuration.nix index b42bb04..0e97aee 100644 --- a/configuration.nix +++ b/configuration.nix @@ -90,6 +90,11 @@ AttrKeyboardIntegration=internal ''; + # Codex currently probes the conventional FHS bubblewrap path. + systemd.tmpfiles.rules = [ + "L+ /usr/bin/bwrap - - - - ${pkgs.bubblewrap}/bin/bwrap" + ]; + # Set Kitty as default terminal xdg.terminal-exec = { enable = true; @@ -154,11 +159,20 @@ "nix-command" "flakes" ]; - auto-optimise-store = true; + trusted-users = [ + "root" + "jet" + ]; max-jobs = "auto"; cores = 0; build-users-group = "nixbld"; }; + nix.gc = { + automatic = true; + dates = "daily"; + options = "--delete-older-than 7d"; + }; + nix.optimise.automatic = true; # Framework-specific services # Enable fwupd for BIOS updates (distributed through LVFS) @@ -169,24 +183,6 @@ services.irqbalance.enable = true; services.earlyoom.enable = true; - # Keep only last 3 generations, GC everything else (daily) - systemd.services.nix-cleanup = { - description = "Nix generation cleanup and garbage collection"; - serviceConfig.Type = "oneshot"; - script = '' - ${pkgs.nix}/bin/nix-env --delete-generations +3 -p /nix/var/nix/profiles/system - ${pkgs.nix}/bin/nix-env --delete-generations +3 -p /nix/var/nix/profiles/per-user/jet/home-manager || true - ${pkgs.nix}/bin/nix-store --gc - ''; - }; - systemd.timers.nix-cleanup = { - wantedBy = [ "timers.target" ]; - timerConfig = { - OnCalendar = "daily"; - Persistent = true; - }; - }; - # Power management for laptop services.logind = { settings = { @@ -248,6 +244,7 @@ }; environment.systemPackages = with pkgs; [ + bubblewrap wget nh ]; diff --git a/flake.lock b/flake.lock index 280bbe7..5cbf577 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1773961488, - "narHash": "sha256-ZtxbClUigYKkJDOa9vdvW8Z6zmdiRaUuFmuIpQYX47g=", + "lastModified": 1774047888, + "narHash": "sha256-lUJ5dPga70KM1oj5vFEZm15PbojyrZ2nqJQ3C4bRSiY=", "owner": "ryoppippi", "repo": "claude-code-overlay", - "rev": "4e2e06ae0e7fb4d0f5c03b0bb041414f56d3bd9c", + "rev": "076a658308611db196d1a250d6fd7fe35ce620ad", "type": "github" }, "original": { @@ -87,11 +87,11 @@ ] }, "locked": { - "lastModified": 1773962693, - "narHash": "sha256-nf9pgktDE4E2TCavUT1vh3Nd/tfKixL1BK6P32Zp3hI=", + "lastModified": 1774007980, + "narHash": "sha256-FOnZjElEI8pqqCvB6K/1JRHTE8o4rer8driivTpq2uo=", "owner": "nix-community", "repo": "home-manager", - "rev": "9d3c1d636e7b8ab10f357cd9bee653cd400437de", + "rev": "9670de2921812bc4e0452f6e3efd8c859696c183", "type": "github" }, "original": { @@ -143,11 +143,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1773533765, - "narHash": "sha256-qonGfS2lzCgCl59Zl63jF6dIRRpvW3AJooBGMaXjHiY=", + "lastModified": 1774018263, + "narHash": "sha256-HHYEwK1A22aSaxv2ibhMMkKvrDGKGlA/qObG4smrSqc=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "f8e82243fd601afb9f59ad230958bd073795cbfe", + "rev": "2d4b4717b2534fad5c715968c1cece04a172b365", "type": "github" }, "original": { @@ -180,11 +180,11 @@ ] }, "locked": { - "lastModified": 1773979768, - "narHash": "sha256-Xwkgi1TwlKEkYh4itTOBEsVjliu6yrm/rCVy7Z0gjCA=", + "lastModified": 1774067251, + "narHash": "sha256-kxPPIRaJsxGcPRUOO2sUbvloaVdRiSDD0cN2Fxoj7pg=", "owner": "nix-community", "repo": "NUR", - "rev": "13a1826d73d837d7100673a21436dcf4885c80bf", + "rev": "83ab96ae446c783b0dcf20b7eff35cf293faa0d4", "type": "github" }, "original": { diff --git a/home.nix b/home.nix index ddf310f..e50402d 100644 --- a/home.nix +++ b/home.nix @@ -85,6 +85,7 @@ in bat ffmpeg-full claude-code + opencode inputs.codex-cli-nix.packages.${pkgs.stdenv.hostPlatform.system}.default fd btop @@ -251,6 +252,7 @@ in "da" = "direnv allow"; "nfu" = "nix flake update"; "c" = "claude"; + "o" = "opencode"; ".." = "z .."; j = "jj"; jgf = "jj git fetch";