about summary refs log blame commit diff stats
path: root/modules/by-name/ni/nix/module.nix
blob: 767ab07644ccfd0e605c488bf2c3f9599341cdab (plain) (tree)
1
2
3
4
5
6
7
8
9
 
       
          
                   
            
       
         
     
    
         
                       
 
                                                           
                           
 
                
                                       


                                                                      
                                                                
                                                    
                                            
          
 
                          
 
                            
      
                       
                                         
      
 
                                 



                               
 
                                      
                                                                                                     
                                                                          
 
                                                                         
 
                                                                                             

      
{
  pkgs,
  # flakes
  nixpkgs_as_input,
  templates,
  self,
  system,
  ...
}: {
  nix = {
    package = pkgs.lix;

    # Disable nix channels  (this is a remnant of old days)
    channel.enable = false;

    registry = {
      nixpkgs.flake = nixpkgs_as_input;
      n.flake =
        nixpkgs_as_input
        // {
          # Otherwise nixpkgs's config and overlays are not available:

          # Both attrs exists, so we just override both and hope
          outputs.legacyPackages."${system}" = pkgs;
          legacyPackages."${system}" = pkgs;
        };

      t.flake = templates;

      my_flake.flake = self;
      m.flake = self;
    };

    gc = {
      automatic = true;
      dates = "weekly";
      options = "--delete-older-than 7d";
    };

    settings = {
      auto-optimise-store = true;
      experimental-features = [
        "nix-command"
        "flakes"
        #"ca-derivations"
      ];

      use-xdg-base-directories = true;

      #substituters = ["https://cache.ngi0.nixos.org/"];
      #trusted-public-keys = ["cache.ngi0.nixos.org-1:KqH5CBLNSyX184S9BKZJo1LxrxJ9ltnY2uAs5c/f1MA="];

      fallback = true; # Build from source, if binary can't be substituted

      keep-failed = true; # keep failed tmp build dirs
      pure-eval = true; # restrict file system and network access to hash

      sandbox-fallback = false; # Don't disable the sandbox, if the kernel doesn't support it
    };
  };
}