This moves the various projects from "type-based" folders (such as "services" or "tools") into more appropriate semantic folders (such as "nix", "ops" or "web"). Deprecated projects (nixcon-demo & gotest) which only existed for testing/demonstration purposes have been removed. (Note: *all* builds are broken with this commit)
		
			
				
	
	
		
			75 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
	
		
			1.8 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
| # home-manager configuration used on ChromeOS systems
 | |
| 
 | |
| { config, pkgs, ... }:
 | |
| 
 | |
| {
 | |
|   # Allow non-free software (fonts, IDEA, etc.):
 | |
|   nixpkgs.config.allowUnfree = true;
 | |
| 
 | |
|   # Install various useful packages:
 | |
|   home.packages = with pkgs; [
 | |
|     bat
 | |
|     exa
 | |
|     gnupg
 | |
|     google-cloud-sdk
 | |
|     htop
 | |
|     pass
 | |
|     ripgrep
 | |
|     tdesktop
 | |
|     transmission
 | |
|     tree
 | |
| 
 | |
|     # Fonts to make available in X11 applications:
 | |
|     input-fonts
 | |
| 
 | |
|     # Emacs configuration stays in the normal ~/.emacs.d location (for
 | |
|     # now), hence this package is not installed via `programs.emacs`.
 | |
|     (import ./emacs.nix { inherit pkgs; })
 | |
|   ];
 | |
| 
 | |
|   programs.git = {
 | |
|     enable = true;
 | |
|     userEmail = "mail@tazj.in";
 | |
|     userName = "Vincent Ambo";
 | |
|   };
 | |
| 
 | |
|   services.gpg-agent = {
 | |
|     enable = true;
 | |
|     extraConfig = ''
 | |
|       pinentry-program ${pkgs.pinentry}/bin/pinentry-gtk-2
 | |
|       allow-emacs-pinentry
 | |
|     '';
 | |
|   };
 | |
| 
 | |
|   # Let Home Manager install and manage itself.
 | |
|   programs.home-manager.enable = true;
 | |
|   manual.html.enable = true;
 | |
| 
 | |
|   # Shell configuration
 | |
|   #
 | |
|   # There are some differences between the ChromeOS / NixOS
 | |
|   # configurations, so instead of fixing up the dotfile to support
 | |
|   # both I opted for keeping the configuration here.
 | |
|   programs.fish = {
 | |
|     enable = true;
 | |
|     interactiveShellInit = ''
 | |
|       # Configure classic prompt
 | |
|       set fish_color_user --bold blue
 | |
|       set fish_color_cwd --bold white
 | |
| 
 | |
|       # Enable colour hints in VCS prompt:
 | |
|       set __fish_git_prompt_showcolorhints yes
 | |
|       set __fish_git_prompt_color_prefix purple
 | |
|       set __fish_git_prompt_color_suffix purple
 | |
| 
 | |
|       # Fish configuration
 | |
|       set fish_greeting ""
 | |
| 
 | |
|       # Fix up nix-env & friends for Nix 2.0
 | |
|       export NIX_REMOTE=daemon
 | |
|     '';
 | |
|   };
 | |
| 
 | |
|   # Ensure fonts installed via Nix are picked up.
 | |
|   fonts.fontconfig.enableProfileFonts = true;
 | |
| }
 |