diff --git a/configurations.nix b/configurations.nix index caaed52..6c2e8c5 100644 --- a/configurations.nix +++ b/configurations.nix @@ -39,6 +39,9 @@ let disko.nixosModules.disko srvos.nixosModules.server + srvos.nixosModules.mixins-trusted-nix-caches + srvos.nixosModules.mixins-terminfo + # srvos.nixosModules.mixins-telegraf # srvos.nixosModules.mixins-terminfo @@ -74,6 +77,10 @@ let nur.flake = nur; }; time.timeZone = "UTC"; + + environment.systemPackages = [ + pkgs.kitty.terminfo + ]; }) ]; in diff --git a/modules/nix-daemon.nix b/modules/nix-daemon.nix index ffda29f..b45d3a8 100644 --- a/modules/nix-daemon.nix +++ b/modules/nix-daemon.nix @@ -24,11 +24,19 @@ in config = { warnings = lib.optionals (config.simd.arch == null) [ "Please set simd.arch for ${config.networking.hostName}" ]; + # Allow more open files for non-root users to run NixOS VM tests. + security.pam.loginLimits = [ + { domain = "*"; item = "nofile"; type = "-"; value = "20480"; } + ]; nix = { + # Garbage-collect often gc.automatic = true; - gc.dates = "03:15"; - gc.options = "--delete-older-than 30d"; + gc.dates = "*:45"; + gc.options = ''--max-freed "$((128 * 1024**3 - 1024 * $(df -P -k /nix/store | tail -n 1 | ${pkgs.gawk}/bin/awk '{ print $4 }')))"''; + + # Randomize GC to avoid thundering herd effects. + gc.randomizedDelaySec = "1800"; # 2.11, 2.12 suffers from a bug with remote builders… package = pkgs.nixVersions.nix_2_13; diff --git a/modules/zsh.nix b/modules/zsh.nix index bba3962..8a7fae2 100644 --- a/modules/zsh.nix +++ b/modules/zsh.nix @@ -4,5 +4,13 @@ programs.zsh.enableGlobalCompInit = false; programs.zsh.interactiveShellInit = '' source ${pkgs.zsh-nix-shell}/share/zsh-nix-shell/nix-shell.plugin.zsh - ''; + ''; + programs.zsh = { + autosuggestions.enable = true; + promptInit = '' + source ${pkgs.grml-zsh-config}/etc/zsh/zshrc + ''; + }; + + users.defaultUserShell = pkgs.zsh; }