feat(gs/home): Integrate home-manager with depot
Essentially the same as for nixos, so I can get whitby to compile stuff for me. Eventually I'll generalize this so things aren't as hardcoded to my particular setup, but for now I'm the only one in the depot who's using home-manager so this should be fine. Change-Id: I1cb0344f5a11eea68bddc98976999c0928dfa84e Reviewed-on: https://cl.tvl.fyi/c/depot/+/937 Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
This commit is contained in:
		
							parent
							
								
									ae16a8e9cf
								
							
						
					
					
						commit
						cc12188d31
					
				
					 14 changed files with 67 additions and 42 deletions
				
			
		
							
								
								
									
										26
									
								
								users/glittershark/system/home/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								users/glittershark/system/home/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,26 @@ | |||
| { pkgs, depot, lib, ... }: | ||||
| 
 | ||||
| with lib; | ||||
| 
 | ||||
| rec { | ||||
|   nixpkgs = import pkgs.nixpkgsSrc {}; | ||||
| 
 | ||||
|   home-manager = (fetchTarball { | ||||
|     url = "https://github.com/rycee/home-manager/archive/5f189acce44dc39ea4055bfd8064adaf90d7fb5a.tar.gz"; | ||||
|     sha256 = "0ibmvg3k9m9yzh8ln3jlh47nrvgg81iy8gpl112wjimlp6gagxw6"; | ||||
|   }); | ||||
| 
 | ||||
|   home = confPath: import "${home-manager}/modules" { | ||||
|     pkgs = nixpkgs; | ||||
|     configuration = { config, lib, ... }: { | ||||
|       imports = [confPath]; | ||||
| 
 | ||||
|       _module.args.pkgs = mkForce | ||||
|         (import pkgs.nixpkgsSrc (filterAttrs (n: v: v != null) config.nixpkgs)); | ||||
| 
 | ||||
|       lib.depot = depot; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   chupacabra = home ./machines/chupacabra.nix; | ||||
| } | ||||
|  | @ -1,4 +1,7 @@ | |||
| { pkgs, ... }: | ||||
| { pkgs, lib, config, ... }: | ||||
| 
 | ||||
| with lib; | ||||
| 
 | ||||
| let | ||||
|   laptopKeyboardId = "25"; | ||||
| in { | ||||
|  | @ -7,12 +10,13 @@ in { | |||
|     ../modules/common.nix | ||||
|     ../modules/games.nix | ||||
|     ../modules/rtlsdr.nix | ||||
| 
 | ||||
|     ~/code/urb/urbos/home | ||||
|     ../modules/urbint.nix | ||||
|   ]; | ||||
| 
 | ||||
|   # for when hacking | ||||
|   programs.home-manager.path = "/home/grfn/code/home-manager"; | ||||
|   programs.home-manager.enable = true; | ||||
|   home.stateVersion = "19.09"; | ||||
| 
 | ||||
|   system.machine = { | ||||
|     wirelessInterface = "wlp59s0"; | ||||
|  | @ -40,6 +44,4 @@ in { | |||
|       ); | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   urbint.projectPath = "code/urb"; | ||||
| } | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| { config, lib, pkgs, ... }: | ||||
| let alsi = pkgs.callPackage ~/code/system/pkgs/alsi {}; | ||||
| let alsi = pkgs.callPackage ../../pkgs/alsi {}; | ||||
| in | ||||
| { | ||||
|   home.packages = [ alsi ]; | ||||
|  |  | |||
|  | @ -22,8 +22,6 @@ | |||
|     path = ".local/share/password-store"; | ||||
|   }; | ||||
| 
 | ||||
|   urbint.projectPath = "code/urb"; | ||||
| 
 | ||||
|   home.packages = with pkgs; [ | ||||
|     # System utilities | ||||
|     bat | ||||
|  |  | |||
|  | @ -46,14 +46,14 @@ with lib; | |||
|     gnumake | ||||
|     inetutils | ||||
|     loc | ||||
|     (import <nixpkgs-unstable> {}).jsonnet | ||||
|     jsonnet | ||||
| 
 | ||||
|     clj2nix | ||||
| 
 | ||||
|     pg-dump-upsert | ||||
| 
 | ||||
|     (import ../pkgs/clang-tools { inherit pkgs; }) | ||||
|   ] ++ optional (stdenv.isLinux) julia; | ||||
|     config.lib.depot.third_party.clang-tools | ||||
|   ]; # ++ optional (stdenv.isLinux) julia; | ||||
| 
 | ||||
|   programs.git = { | ||||
|     enable = true; | ||||
|  |  | |||
|  | @ -1,10 +1,7 @@ | |||
| { config, lib, pkgs, ... }: | ||||
| 
 | ||||
| let | ||||
| 
 | ||||
|   nixpkgs-unstable = import <nixpkgs-unstable> {}; | ||||
| 
 | ||||
|   agda-categories = with nixpkgs-unstable.agdaPackages; mkDerivation rec { | ||||
|   agda-categories = with pkgs.agdaPackages; mkDerivation rec { | ||||
|     pname = "agda-categories"; | ||||
|     version = "2128fab"; | ||||
|     src = pkgs.fetchFromGitHub { | ||||
|  | @ -25,7 +22,7 @@ in | |||
|   ]; | ||||
| 
 | ||||
|   home.packages = with pkgs; [ | ||||
|     (nixpkgs-unstable.agda.withPackages | ||||
|     (pkgs.agda.withPackages | ||||
|       (p: with p; [ | ||||
|         p.standard-library | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,13 +1,10 @@ | |||
| { config, lib, pkgs, ... }: | ||||
| let | ||||
|   pkgs-unstable = import <nixpkgs-unstable> {}; | ||||
| in | ||||
| { | ||||
|   home.packages = with pkgs; [ | ||||
|     kubectl | ||||
|     kubetail | ||||
|     sops | ||||
|     pkgs-unstable.kubie | ||||
|     kubie | ||||
|     # pkgs-unstable.argocd # provided by urbos | ||||
|   ]; | ||||
| 
 | ||||
|  |  | |||
|  | @ -10,12 +10,11 @@ let | |||
|  #                               # and packages.el files | ||||
|  # }; | ||||
| 
 | ||||
| 
 | ||||
|   depot = config.lib.depot; | ||||
| 
 | ||||
| in { | ||||
|   imports = [ | ||||
|     ./lib/cloneRepo.nix | ||||
|     ./lib/depot.nix | ||||
|   ]; | ||||
| 
 | ||||
|   # home.packages = [ doom-emacs ]; | ||||
|  |  | |||
|  | @ -40,6 +40,7 @@ in { | |||
|         rofi-pass | ||||
|         python38Packages.py3status | ||||
|         i3lock | ||||
|         i3status | ||||
|         dconf # for gtk | ||||
| 
 | ||||
|         # Screenshots | ||||
|  |  | |||
|  | @ -1,5 +0,0 @@ | |||
| { config, lib, pkgs, ... }: | ||||
| 
 | ||||
| { | ||||
|   lib.depot = import ~/code/depot {}; | ||||
| } | ||||
							
								
								
									
										9
									
								
								users/glittershark/system/home/modules/urbint.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								users/glittershark/system/home/modules/urbint.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,9 @@ | |||
| { config, lib, pkgs, ... }: | ||||
| 
 | ||||
| if lib.pathExists (~/code/urb/urbos) | ||||
| then { | ||||
|   imports = | ||||
|     [ ~/code/urb/urbos/home ]; | ||||
| 
 | ||||
|   urbint.projectPath = "code/urb"; | ||||
| } else {} | ||||
|  | @ -20,7 +20,6 @@ in | |||
|     ../modules/shell.nix | ||||
|     ../modules/tarsnap.nix | ||||
|     ../modules/vim.nix | ||||
|     ../modules/lib/depot.nix | ||||
|   ]; | ||||
| 
 | ||||
|   xsession.enable = true; | ||||
|  | @ -84,12 +83,12 @@ in | |||
|     ]; | ||||
|   }; | ||||
| 
 | ||||
|   programs.tarsnap = { | ||||
|     enable = true; | ||||
|     keyfile = "/home/grfn/.private/tarsnap.key"; | ||||
|     printStats = true; | ||||
|     humanizeNumbers = true; | ||||
|   }; | ||||
|   # programs.tarsnap = { | ||||
|   #   enable = true; | ||||
|   #   keyfile = "/home/grfn/.private/tarsnap.key"; | ||||
|   #   printStats = true; | ||||
|   #   humanizeNumbers = true; | ||||
|   # }; | ||||
| 
 | ||||
|   programs.zsh.initExtra = '' | ||||
|     [[ ! $IN_NIX_SHELL ]] && alsi -l | ||||
|  |  | |||
|  | @ -7,12 +7,12 @@ | |||
| 
 | ||||
|     libinput.enable = true; | ||||
| 
 | ||||
|     windowManager.i3 = { | ||||
|       enable = true; | ||||
|       extraPackages = with pkgs; [ | ||||
|         i3status | ||||
|         i3lock | ||||
|       ]; | ||||
|     }; | ||||
| #     windowManager.i3 = { | ||||
| #       enable = true; | ||||
| #       extraPackages = with pkgs; [ | ||||
| #         i3status | ||||
| #         i3lock | ||||
| #       ]; | ||||
| #     }; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue