[direnv] Create module
This commit is contained in:
		
							parent
							
								
									b7602166ac
								
							
						
					
					
						commit
						4d9ffec0b7
					
				
					 5 changed files with 26 additions and 46 deletions
				
			
		|  | @ -19,6 +19,7 @@ | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     programs = { |     programs = { | ||||||
|  |       direnv.enable = true; | ||||||
|       home-manager.enable = true; |       home-manager.enable = true; | ||||||
|       sops.enable = true; |       sops.enable = true; | ||||||
|       ssh.enable = true; |       ssh.enable = true; | ||||||
|  | @ -69,14 +70,6 @@ | ||||||
| 
 | 
 | ||||||
|   time.timeZone = "Europe/Brussels"; |   time.timeZone = "Europe/Brussels"; | ||||||
| 
 | 
 | ||||||
|   nix = { |  | ||||||
|     # Keep derivations so shells don't break (direnv) |  | ||||||
|     extraOptions = '' |  | ||||||
|       keep-outputs = true |  | ||||||
|       keep-derivations = true |  | ||||||
|     ''; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   i18n.defaultLocale = "en_GB.UTF-8"; |   i18n.defaultLocale = "en_GB.UTF-8"; | ||||||
|   console = { |   console = { | ||||||
|     # font = "Lat2-Terminus16"; |     # font = "Lat2-Terminus16"; | ||||||
|  |  | ||||||
|  | @ -19,6 +19,7 @@ | ||||||
|     }; |     }; | ||||||
| 
 | 
 | ||||||
|     programs = { |     programs = { | ||||||
|  |       direnv.enable = true; | ||||||
|       home-manager.enable = true; |       home-manager.enable = true; | ||||||
|       sops.enable = true; |       sops.enable = true; | ||||||
|       ssh.enable = true; |       ssh.enable = true; | ||||||
|  | @ -101,14 +102,6 @@ | ||||||
|     networkmanager.enable = true; |     networkmanager.enable = true; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   nix = { |  | ||||||
|     # Keep derivations so shells don't break (direnv) |  | ||||||
|     extraOptions = '' |  | ||||||
|       keep-outputs = true |  | ||||||
|       keep-derivations = true |  | ||||||
|     ''; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   i18n.defaultLocale = "en_GB.UTF-8"; |   i18n.defaultLocale = "en_GB.UTF-8"; | ||||||
|   console = { |   console = { | ||||||
|     # font = "Lat2-Terminus16"; |     # font = "Lat2-Terminus16"; | ||||||
|  |  | ||||||
|  | @ -1,29 +0,0 @@ | ||||||
| { inputs, lib, config, pkgs, ... }: |  | ||||||
| 
 |  | ||||||
| { |  | ||||||
|   nix = { |  | ||||||
|     # Allow Nix Flakes |  | ||||||
|     # Keep derivations so shells don't break (direnv) |  | ||||||
|     # If the disk has less than 100MiB, free up to 2GiB by garbage-collecting. |  | ||||||
|     extraOptions = '' |  | ||||||
|       experimental-features = nix-command flakes |  | ||||||
|       keep-outputs = true |  | ||||||
|       keep-derivations = true |  | ||||||
|       min-free = ${toString (100 * 1024 * 1024)} |  | ||||||
|       max-free = ${toString (2048 * 1024 * 1024)} |  | ||||||
|     ''; |  | ||||||
|     # Scheduled garbage-collect |  | ||||||
|     gc = { |  | ||||||
|       automatic = true; |  | ||||||
|       dates = "weekly"; |  | ||||||
|       options = "--delete-older-than 30d"; |  | ||||||
|     }; |  | ||||||
|     package = pkgs.nixFlakes; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   i18n.defaultLocale = "en_GB.UTF-8"; |  | ||||||
|   console = { |  | ||||||
|     # font = "Lat2-Terminus16"; |  | ||||||
|     useXkbConfig = true; # use xkbOptions in tty. |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
|  | @ -1,8 +1,9 @@ | ||||||
| { | { | ||||||
|   imports = [ |   imports = [ | ||||||
|  |     ./direnv | ||||||
|     ./home-manager |     ./home-manager | ||||||
|     ./sops |     ./sops | ||||||
|     ./ssh |  | ||||||
|     ./spotify-adblock |     ./spotify-adblock | ||||||
|  |     ./ssh | ||||||
|   ]; |   ]; | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										22
									
								
								nixos/modules/programs/direnv/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								nixos/modules/programs/direnv/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,22 @@ | ||||||
|  | { config, lib, pkgs, ... }: | ||||||
|  | 
 | ||||||
|  | let | ||||||
|  |   cfg = sisyphus.programs.direnv; | ||||||
|  | in { | ||||||
|  |   options.sisyphus.programs.direnv.enable = lib.mkEnableOption "direnv"; | ||||||
|  | 
 | ||||||
|  |   config = lib.mkIf cfg.enable { | ||||||
|  |     programs.direnv = { | ||||||
|  |       enable = true; | ||||||
|  |       nix-direnv.enable = true;  # Use nix-specific direnv. | ||||||
|  |       persistDerivations = true; # Sets the extraOptions listed below. | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     # This is also done by setting programs.direnv.persistDerivations. | ||||||
|  |     # Keep derivations so shells don't break. | ||||||
|  |     nix.extraOption = '' | ||||||
|  |       keep-outputs = true | ||||||
|  |       keep-derivations = true | ||||||
|  |     ''; | ||||||
|  |   }; | ||||||
|  | }; | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue