forked from jan-leila/nix-config
		
	
		
			
				
	
	
		
			67 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{
 | 
						|
  lib,
 | 
						|
  pkgs,
 | 
						|
  config,
 | 
						|
  osConfig,
 | 
						|
  ...
 | 
						|
}: let
 | 
						|
  userConfig = osConfig.host.users.eve;
 | 
						|
  hardware = osConfig.host.hardware;
 | 
						|
in {
 | 
						|
  config = {
 | 
						|
    nixpkgs.config = {
 | 
						|
      allowUnfree = true;
 | 
						|
    };
 | 
						|
 | 
						|
    # Packages that can be installed without any extra configuration
 | 
						|
    # See https://search.nixos.org/packages for all options
 | 
						|
    home.packages = lib.lists.optionals userConfig.isDesktopUser (
 | 
						|
      with pkgs; [
 | 
						|
        gnomeExtensions.dash-to-panel
 | 
						|
      ]
 | 
						|
    );
 | 
						|
 | 
						|
    # Packages that need to be installed with some extra configuration
 | 
						|
    # See https://home-manager-options.extranix.com/ for all options
 | 
						|
    programs = lib.mkMerge [
 | 
						|
      {
 | 
						|
        # Let Home Manager install and manage itself.
 | 
						|
        home-manager.enable = true;
 | 
						|
      }
 | 
						|
      (lib.mkIf (config.user.isDesktopUser || config.user.isTerminalUser) {
 | 
						|
        git = {
 | 
						|
          enable = true;
 | 
						|
          userName = "Eve";
 | 
						|
          userEmail = "evesnrobins@gmail.com";
 | 
						|
          extraConfig.init.defaultBranch = "main";
 | 
						|
        };
 | 
						|
 | 
						|
        openssh = {
 | 
						|
          enable = true;
 | 
						|
          hostKeys = [
 | 
						|
            {
 | 
						|
              type = "ed25519";
 | 
						|
              path = "${config.home.username}_${osConfig.networking.hostName}_ed25519";
 | 
						|
            }
 | 
						|
          ];
 | 
						|
        };
 | 
						|
      })
 | 
						|
      (lib.mkIf config.user.isDesktopUser {
 | 
						|
        vscode = {
 | 
						|
          enable = true;
 | 
						|
          package = pkgs.vscodium;
 | 
						|
        };
 | 
						|
 | 
						|
        firefox.enable = true;
 | 
						|
        bitwarden.enable = true;
 | 
						|
        discord.enable = true;
 | 
						|
        makemkv.enable = true;
 | 
						|
        signal-desktop-bin.enable = true;
 | 
						|
        steam.enable = true;
 | 
						|
        piper.enable = hardware.piperMouse.enable;
 | 
						|
        krita.enable = true;
 | 
						|
        ungoogled-chromium.enable = true;
 | 
						|
      })
 | 
						|
    ];
 | 
						|
  };
 | 
						|
}
 |