refactor: inputs/ --> {sys,home}/
This commit is contained in:
		
							parent
							
								
									8f22a24963
								
							
						
					
					
						commit
						f77c627980
					
				
					 225 changed files with 77 additions and 88 deletions
				
			
		
							
								
								
									
										69
									
								
								sys/modules/roles/gaming/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								sys/modules/roles/gaming/default.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,69 @@
 | 
			
		|||
{ lib, config, pkgs, ... }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  inherit (lib) mkIf;
 | 
			
		||||
  inherit (builtins) elem;
 | 
			
		||||
  steamFix = pkgs.steam.override {
 | 
			
		||||
    extraPkgs = pkgs: with pkgs; [
 | 
			
		||||
      xorg.libXcursor
 | 
			
		||||
      xorg.libXi
 | 
			
		||||
      xorg.libXinerama
 | 
			
		||||
      xorg.libXScrnSaver
 | 
			
		||||
      libpng
 | 
			
		||||
      libpulseaudio
 | 
			
		||||
      libvorbis
 | 
			
		||||
      stdenv.cc.cc.lib
 | 
			
		||||
      libkrb5
 | 
			
		||||
      keyutils
 | 
			
		||||
      mangohud
 | 
			
		||||
      winetricks
 | 
			
		||||
      protontricks
 | 
			
		||||
      gtk3
 | 
			
		||||
      gtk3-x11
 | 
			
		||||
    ];
 | 
			
		||||
  };
 | 
			
		||||
  host = config.systemModules.host;
 | 
			
		||||
in
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  config = mkIf (elem "gaming" host.function) {
 | 
			
		||||
    hardware.opengl.extraPackages = [ pkgs.gamescope ];
 | 
			
		||||
    services.flatpak.enable = true;
 | 
			
		||||
    programs = {
 | 
			
		||||
      steam = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        package = steamFix;
 | 
			
		||||
        extraCompatPackages = [ pkgs.proton-ge-bin.steamcompattool ];
 | 
			
		||||
      };
 | 
			
		||||
      gamescope = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        capSysNice = true;
 | 
			
		||||
      };
 | 
			
		||||
      gamemode = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        settings = {
 | 
			
		||||
          general = {
 | 
			
		||||
            renice = 15;
 | 
			
		||||
            softrealtime = "auto";
 | 
			
		||||
          };
 | 
			
		||||
           custom = {
 | 
			
		||||
            start = "${pkgs.libnotify}/bin/notify-send 'GameMode started'";
 | 
			
		||||
            end = "${pkgs.libnotify}/bin/notify-send 'GameMode ended'";
 | 
			
		||||
          };
 | 
			
		||||
        };
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
    networking.firewall = {
 | 
			
		||||
      allowedTCPPorts = [ 3074 ];
 | 
			
		||||
      allowedUDPPorts = [
 | 
			
		||||
        88
 | 
			
		||||
        500
 | 
			
		||||
        3074
 | 
			
		||||
        2075
 | 
			
		||||
        3544
 | 
			
		||||
        4500
 | 
			
		||||
      ];
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										5
									
								
								sys/modules/roles/media-server/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								sys/modules/roles/media-server/default.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
{
 | 
			
		||||
  imports = [
 | 
			
		||||
    ./services
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										5
									
								
								sys/modules/roles/media-server/services/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								sys/modules/roles/media-server/services/default.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
{
 | 
			
		||||
  imports = [
 | 
			
		||||
    ./nixarr.nix
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										25
									
								
								sys/modules/roles/media-server/services/nixarr.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								sys/modules/roles/media-server/services/nixarr.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,25 @@
 | 
			
		|||
{ config, inputs, ... }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  admin = config.systemModules.host.admin;
 | 
			
		||||
in
 | 
			
		||||
  
 | 
			
		||||
{
 | 
			
		||||
  imports = [ inputs.nixarr.nixosModules.default ];
 | 
			
		||||
  nixarr = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
    mediaDir = "/jellyfin";
 | 
			
		||||
    stateDir = "/var/lib/nixarr";
 | 
			
		||||
    mediaUsers = ["${admin.name}"];
 | 
			
		||||
 | 
			
		||||
    jellyfin.enable = true;
 | 
			
		||||
    sonarr.enable = true;
 | 
			
		||||
    radarr.enable = true;
 | 
			
		||||
    prowlarr.enable = true;
 | 
			
		||||
    transmission.enable = true;
 | 
			
		||||
  };
 | 
			
		||||
  fileSystems."/jellyfin" = {
 | 
			
		||||
    device = "/dev/disk/by-label/jellyfin";
 | 
			
		||||
    fsType = "btrfs";
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										5
									
								
								sys/modules/roles/workstation/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								sys/modules/roles/workstation/default.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
{
 | 
			
		||||
  imports = [
 | 
			
		||||
    ./programs
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										18
									
								
								sys/modules/roles/workstation/programs/1password.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								sys/modules/roles/workstation/programs/1password.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,18 @@
 | 
			
		|||
{ lib, config, ... }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  inherit (lib) mkIf;
 | 
			
		||||
  host = config.systemModules.host;
 | 
			
		||||
in
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  config = mkIf (host.type != "phone") {
 | 
			
		||||
    programs = {
 | 
			
		||||
      _1password.enable = true;
 | 
			
		||||
      _1password-gui = {
 | 
			
		||||
        enable = true;
 | 
			
		||||
        polkitPolicyOwners = [ "${host.admin.name}" ];
 | 
			
		||||
      };
 | 
			
		||||
    };
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										13
									
								
								sys/modules/roles/workstation/programs/dconf.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								sys/modules/roles/workstation/programs/dconf.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,13 @@
 | 
			
		|||
{ lib, config, ... }:
 | 
			
		||||
 | 
			
		||||
let
 | 
			
		||||
  inherit (lib) mkIf;
 | 
			
		||||
  inherit (builtins) elem;
 | 
			
		||||
  host = config.systemModules.host;
 | 
			
		||||
in
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  config = mkIf (elem "workstation" host.function){
 | 
			
		||||
    programs.dconf.enable = true;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								sys/modules/roles/workstation/programs/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								sys/modules/roles/workstation/programs/default.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
{
 | 
			
		||||
  imports = [
 | 
			
		||||
    ./dconf.nix
 | 
			
		||||
    ./kdeconnect.nix
 | 
			
		||||
    ./1password.nix
 | 
			
		||||
  ];
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										7
									
								
								sys/modules/roles/workstation/programs/kdeconnect.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										7
									
								
								sys/modules/roles/workstation/programs/kdeconnect.nix
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,7 @@
 | 
			
		|||
{ ... }:
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
  programs.kdeconnect = {
 | 
			
		||||
    enable = true;
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue