| 
									
										
										
										
											2024-08-12 03:55:29 -04:00
										 |  |  | { config, pkgs, ... }: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  |   # Home Manager needs a bit of information about you and the paths it should | 
					
						
							|  |  |  |   # manage. | 
					
						
							| 
									
										
										
										
											2024-08-23 00:50:16 -04:00
										 |  |  |   home.username = "draco"; | 
					
						
							|  |  |  |   home.homeDirectory = "/home/draco"; | 
					
						
							| 
									
										
										
										
											2024-08-12 03:55:29 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  |   # This value determines the Home Manager release that your configuration is | 
					
						
							|  |  |  |   # compatible with. This helps avoid breakage when a new Home Manager release | 
					
						
							|  |  |  |   # introduces backwards incompatible changes. | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   # You should not change this value, even if you update Home Manager. If you do | 
					
						
							|  |  |  |   # want to update the value, then make sure to first check the Home Manager | 
					
						
							|  |  |  |   # release notes. | 
					
						
							|  |  |  |   home.stateVersion = "24.05"; # Please read the comment before changing. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # The home.packages option allows you to install Nix packages into your | 
					
						
							|  |  |  |   # environment. | 
					
						
							|  |  |  |   home.packages = [ | 
					
						
							|  |  |  |     pkgs.glances | 
					
						
							|  |  |  |     pkgs.taskwarrior3 | 
					
						
							|  |  |  |     pkgs.vit | 
					
						
							|  |  |  |   ]; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Home Manager is pretty good at managing dotfiles. The primary way to manage | 
					
						
							|  |  |  |   # plain files is through 'home.file'. | 
					
						
							|  |  |  |   home.file = { | 
					
						
							| 
									
										
										
										
											2024-08-23 00:50:16 -04:00
										 |  |  |     ".config/nvim" = {  | 
					
						
							| 
									
										
										
										
											2024-08-23 01:23:01 -04:00
										 |  |  |       source = dotfiles/nvim; | 
					
						
							| 
									
										
										
										
											2024-08-23 00:50:16 -04:00
										 |  |  |       recursive = true; | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-12 03:55:29 -04:00
										 |  |  |     # # Building this configuration will create a copy of 'dotfiles/screenrc' in | 
					
						
							|  |  |  |     # # the Nix store. Activating the configuration will then make '~/.screenrc' a | 
					
						
							|  |  |  |     # # symlink to the Nix store copy. | 
					
						
							|  |  |  |     # ".screenrc".source = dotfiles/screenrc; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     # # You can also set the file content immediately. | 
					
						
							|  |  |  |     # ".gradle/gradle.properties".text = '' | 
					
						
							|  |  |  |     #   org.gradle.console=verbose | 
					
						
							|  |  |  |     #   org.gradle.daemon.idletimeout=3600000 | 
					
						
							|  |  |  |     # ''; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   # Home Manager can also manage your environment variables through | 
					
						
							|  |  |  |   # 'home.sessionVariables'. These will be explicitly sourced when using a | 
					
						
							|  |  |  |   # shell provided by Home Manager. If you don't want to manage your shell | 
					
						
							|  |  |  |   # through Home Manager then you have to manually source 'hm-session-vars.sh' | 
					
						
							|  |  |  |   # located at either | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   #  ~/.nix-profile/etc/profile.d/hm-session-vars.sh | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   # or | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   #  ~/.local/state/nix/profiles/profile/etc/profile.d/hm-session-vars.sh | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   # or | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   #  /etc/profiles/per-user/nixos/etc/profile.d/hm-session-vars.sh | 
					
						
							|  |  |  |   # | 
					
						
							|  |  |  |   home.sessionVariables = { | 
					
						
							|  |  |  |     # EDITOR = "emacs"; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-23 00:50:16 -04:00
										 |  |  |   programs = { | 
					
						
							|  |  |  |     # Let Home Manager install and manage itself. | 
					
						
							|  |  |  |     home-manager.enable = true; | 
					
						
							|  |  |  |      | 
					
						
							|  |  |  |     fish = { | 
					
						
							|  |  |  |       enable = true; | 
					
						
							|  |  |  |       # Fish shellAbbrs | 
					
						
							|  |  |  |       shellAbbrs = { | 
					
						
							|  |  |  |         garbage = "sudo nix-collect-garbage --delete-older-than 7d"; | 
					
						
							|  |  |  |         rbs = "sudo nixos-rebuild switch"; | 
					
						
							|  |  |  |         rebuild-all = "sudo nix-collect-garbage --delete-older-than 7d && sudo nixos-rebuild switch"; | 
					
						
							| 
									
										
										
										
											2024-08-23 01:50:35 -04:00
										 |  |  |         hms = "home-manager switch --flake ~/dev/personal/nixos/home-manager"; | 
					
						
							| 
									
										
										
										
											2024-08-23 00:50:16 -04:00
										 |  |  |       }; | 
					
						
							|  |  |  |     }; | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-12 03:55:29 -04:00
										 |  |  | } |