merge flake-parts rewrite into main #19
					 10 changed files with 228 additions and 58 deletions
				
			
		
							
								
								
									
										17
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										17
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							|  | @ -1276,22 +1276,6 @@ | |||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "nixpkgs-tuya-vacuum": { | ||||
|       "locked": { | ||||
|         "lastModified": 1743180016, | ||||
|         "narHash": "sha256-REuNO+d3gTjk+03wZEcwCvXZNQGbb0nv44gwoLMTj4Q=", | ||||
|         "owner": "Daholli", | ||||
|         "repo": "nixpkgs", | ||||
|         "rev": "84b34e39e7a0879367189f34401191f6a0364bcf", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "Daholli", | ||||
|         "repo": "nixpkgs", | ||||
|         "rev": "84b34e39e7a0879367189f34401191f6a0364bcf", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "nixpkgs-unstable": { | ||||
|       "locked": { | ||||
|         "lastModified": 1761373498, | ||||
|  | @ -1450,7 +1434,6 @@ | |||
|         "nixos-wsl": "nixos-wsl", | ||||
|         "nixpkgs": "nixpkgs_3", | ||||
|         "nixpkgs-latest-factorio": "nixpkgs-latest-factorio", | ||||
|         "nixpkgs-tuya-vacuum": "nixpkgs-tuya-vacuum", | ||||
|         "nixpkgs-unstable": "nixpkgs-unstable", | ||||
|         "simple-nixos-mailserver": "simple-nixos-mailserver", | ||||
|         "sops-nix": "sops-nix", | ||||
|  |  | |||
|  | @ -16,8 +16,10 @@ | |||
|     import-tree.url = "github:vic/import-tree"; | ||||
|     treefmt-nix.url = "github:numtide/treefmt-nix"; | ||||
| 
 | ||||
|     catppuccin.url = "github:catppuccin/nix"; | ||||
|     sops-nix.url = "github:Mic92/sops-nix"; | ||||
| 
 | ||||
|     nixpkgs-latest-factorio.url = "github:Daholli/nixpkgs/e880129391be2f558d6c205cfd931be338b3b707"; | ||||
|     nixpkgs-tuya-vacuum.url = "github:Daholli/nixpkgs/84b34e39e7a0879367189f34401191f6a0364bcf"; | ||||
| 
 | ||||
|     home-manager = { | ||||
|       url = "github:nix-community/home-manager/master"; | ||||
|  | @ -90,13 +92,9 @@ | |||
|       flake = false; | ||||
|     }; | ||||
| 
 | ||||
|     sops-nix.url = "github:Mic92/sops-nix"; | ||||
| 
 | ||||
|     ## temporary | ||||
|     zen-browser.url = "github:0xc000022070/zen-browser-flake"; | ||||
| 
 | ||||
|     simple-nixos-mailserver.url = "gitlab:simple-nixos-mailserver/nixos-mailserver"; | ||||
|     catppuccin.url = "github:catppuccin/nix"; | ||||
| 
 | ||||
|     ################ | ||||
|     ## inputs for dev shells | ||||
|  |  | |||
|  | @ -7,8 +7,8 @@ | |||
| 
 | ||||
|         home.packages = [ | ||||
|           pkgs.kitty | ||||
|           pkgs.xfce.thunar | ||||
|         ]; | ||||
| 
 | ||||
|         home.sessionVariables.TERMINAL = "kitty"; | ||||
| 
 | ||||
|         home.file.".config/Thunar/uca.xml".text = '' | ||||
|  |  | |||
|  | @ -9,14 +9,5 @@ | |||
|           enable = true; | ||||
|         }; | ||||
|       }; | ||||
| 
 | ||||
|       # systemd = { | ||||
|       #   services.NetworkManager-wait-online.enable = false; | ||||
|       #   network.wait-online.enable = false; | ||||
|       # }; | ||||
| 
 | ||||
|       services.resolved = { | ||||
|         enable = true; | ||||
|       }; | ||||
|     }; | ||||
| } | ||||
|  |  | |||
|  | @ -13,7 +13,6 @@ | |||
|         { | ||||
|           imports = [ | ||||
|             inputs.sops-nix.homeManagerModules.sops | ||||
|             inputs.catppuccin.homeModules.catppuccin | ||||
|           ]; | ||||
| 
 | ||||
|           home = { | ||||
|  | @ -31,7 +30,6 @@ | |||
|         { | ||||
|           imports = [ | ||||
|             inputs.sops-nix.nixosModules.sops | ||||
|             inputs.catppuccin.nixosModules.catppuccin | ||||
|           ]; | ||||
| 
 | ||||
|           environment.systemPackages = with pkgs; [ | ||||
|  |  | |||
|  | @ -11,12 +11,18 @@ | |||
|       username = "cholli"; | ||||
|     in | ||||
|     { | ||||
|       imports = [ inputs.nix-ld.nixosModules.nix-ld ]; | ||||
| 
 | ||||
|       environment.systemPackages = with pkgs; [ | ||||
|         nixfmt-rfc-style | ||||
|         nix-prefetch-git | ||||
| 
 | ||||
|         nix-index | ||||
| 
 | ||||
|         nix-output-monitor | ||||
| 
 | ||||
|         nix-du | ||||
|         nix-weather | ||||
|         nix-index | ||||
|       ]; | ||||
| 
 | ||||
|       programs.nh = { | ||||
|  | @ -26,6 +32,8 @@ | |||
|       }; | ||||
| 
 | ||||
|       nix = { | ||||
|         package = pkgs.lix; | ||||
| 
 | ||||
|         settings = | ||||
|           let | ||||
|             users = [ | ||||
|  |  | |||
|  | @ -255,28 +255,28 @@ | |||
|                 "$mod CTRL, right, movecurrentworkspacetomonitor, r" | ||||
| 
 | ||||
|                 # move focus | ||||
|                 "$mod, h, hy3:movefocus, l" | ||||
|                 "$mod, j, hy3:movefocus, d" | ||||
|                 "$mod, k, hy3:movefocus, u" | ||||
|                 "$mod, l, hy3:movefocus, r" | ||||
|                 "$mod, left, hy3:movefocus, l" | ||||
|                 "$mod, down, hy3:movefocus, d" | ||||
|                 "$mod, up, hy3:movefocus, u" | ||||
|                 "$mod, right, hy3:movefocus, r" | ||||
|                 "$mod, h, movefocus, l" | ||||
|                 "$mod, j, movefocus, d" | ||||
|                 "$mod, k, movefocus, u" | ||||
|                 "$mod, l, movefocus, r" | ||||
|                 "$mod, left, movefocus, l" | ||||
|                 "$mod, down, movefocus, d" | ||||
|                 "$mod, up, movefocus, u" | ||||
|                 "$mod, right, movefocus, r" | ||||
| 
 | ||||
|                 # move focus | ||||
|                 "$mod SHIFT, h, hy3:movewindow, l, once" | ||||
|                 "$mod SHIFT, j, hy3:movewindow, d, once" | ||||
|                 "$mod SHIFT, k, hy3:movewindow, u, once" | ||||
|                 "$mod SHIFT, l, hy3:movewindow, r, once" | ||||
|                 "$mod SHIFT, left, hy3:movewindow, l, once" | ||||
|                 "$mod SHIFT, down, hy3:movewindow, d, once" | ||||
|                 "$mod SHIFT, up, hy3:movewindow, u, once" | ||||
|                 "$mod SHIFT, right, hy3:movewindow, r, once" | ||||
|                 "$mod SHIFT, h, movewindow, l, once" | ||||
|                 "$mod SHIFT, j, movewindow, d, once" | ||||
|                 "$mod SHIFT, k, movewindow, u, once" | ||||
|                 "$mod SHIFT, l, movewindow, r, once" | ||||
|                 "$mod SHIFT, left, movewindow, l, once" | ||||
|                 "$mod SHIFT, down, movewindow, d, once" | ||||
|                 "$mod SHIFT, up, movewindow, u, once" | ||||
|                 "$mod SHIFT, right, movewindow, r, once" | ||||
| 
 | ||||
|                 #run important programs | ||||
|                 "$mod, Return, exec, kitty" | ||||
|                 "$mod, D, exec, rofi -show drun" | ||||
|                 "$mod, D, exec, fuzzel" | ||||
|                 "$mod, P, exec, focus-or-open-1pass" | ||||
|                 # "$mod, D, exec, rofi -show combi" | ||||
| 
 | ||||
|  | @ -294,7 +294,7 @@ | |||
|                     in | ||||
|                     [ | ||||
|                       "$mod, code:1${toString i}, workspace, ${toString ws}" | ||||
|                       "$mod SHIFT, code:1${toString i}, hy3:movetoworkspace, ${toString ws}" | ||||
|                       "$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}" | ||||
|                     ] | ||||
|                   ) 9 | ||||
|                 ) | ||||
|  |  | |||
|  | @ -1,3 +1,165 @@ | |||
| { | ||||
|   flake.modules.nixos.niri = { ... }: { }; | ||||
|   flake.modules = { | ||||
|     nixos.niri = | ||||
|       { inputs, pkgs, ... }: | ||||
|       { | ||||
|         imports = [ | ||||
|           inputs.niri-flake.nixosModules.niri | ||||
|         ]; | ||||
| 
 | ||||
|         programs.niri = { | ||||
|           enable = true; | ||||
|           package = inputs.niri-flake.packages.${pkgs.system}.niri-unstable; | ||||
|         }; | ||||
| 
 | ||||
|         environment.systemPackages = [ | ||||
|           pkgs.alacritty | ||||
|           pkgs.fuzzel | ||||
|         ]; | ||||
|       }; | ||||
| 
 | ||||
|     homeManager.cholli = | ||||
|       { | ||||
|         config, | ||||
|         inputs, | ||||
|         lib, | ||||
|         osConfig, | ||||
|         pkgs, | ||||
|         ... | ||||
|       }: | ||||
|       { | ||||
|         config = lib.mkIf osConfig.programs.niri.enable { | ||||
|           programs.niri.settings = { | ||||
|             input = { | ||||
|               keyboard = { | ||||
|                 numlock = true; | ||||
|               }; | ||||
|             }; | ||||
| 
 | ||||
|             outputs."DP-1" = { | ||||
|               mode = { | ||||
|                 width = 3440; | ||||
|                 height = 1440; | ||||
|               }; | ||||
|             }; | ||||
|             outputs."HDMI-A-1" = { | ||||
|               mode = { | ||||
|                 width = 1920; | ||||
|                 height = 1080; | ||||
|               }; | ||||
|               transform.rotation = 90; | ||||
|             }; | ||||
| 
 | ||||
|             layout = { | ||||
|               gaps = 5; | ||||
|               center-focused-column = "never"; | ||||
| 
 | ||||
|               default-column-width = { | ||||
|                 proportion = 0.5; | ||||
|               }; | ||||
| 
 | ||||
|               preset-column-widths = [ | ||||
|                 { proportion = 1. / 3.; } | ||||
|                 { proportion = 1. / 2.; } | ||||
|                 { proportion = 2. / 3.; } | ||||
| 
 | ||||
|               ]; | ||||
| 
 | ||||
|               focus-ring = { | ||||
|                 width = 1; | ||||
|                 active = { | ||||
|                   color = "#7fc8ff"; | ||||
|                 }; | ||||
|                 inactive = { | ||||
|                   color = "#505050"; | ||||
|                 }; | ||||
|               }; | ||||
|             }; | ||||
| 
 | ||||
|             hotkey-overlay.skip-at-startup = true; | ||||
| 
 | ||||
|             screenshot-path = "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"; | ||||
| 
 | ||||
|             # block 1pass from screenshots and window capture | ||||
|             window-rules = [ | ||||
|             ]; | ||||
| 
 | ||||
|             binds = | ||||
|               with config.lib.niri; | ||||
|               let | ||||
|                 workspaces = (builtins.genList (x: x + 1) 9); | ||||
| 
 | ||||
|                 focus-workspaces = builtins.listToAttrs ( | ||||
|                   map (num: { | ||||
|                     name = "Mod+${toString num}"; | ||||
|                     value = { | ||||
|                       action.focus-workspace = num; | ||||
|                     }; | ||||
|                   }) workspaces | ||||
|                 ); | ||||
|               in | ||||
| 
 | ||||
|               lib.mkMerge [ | ||||
|                 { | ||||
|                   "Mod+Shift+Slash".action = actions.show-hotkey-overlay; | ||||
| 
 | ||||
|                   "Mod+Return".action.spawn = "${lib.getExe pkgs.kitty}"; | ||||
|                   "Mod+D".action.spawn = "${lib.getExe pkgs.fuzzel}"; | ||||
|                   "Mod+Alt+L".action.spawn = "hyprlock-blur"; | ||||
| 
 | ||||
|                   "Mod+Shift+Q" = { | ||||
|                     action = actions.close-window; | ||||
|                     repeat = false; | ||||
|                   }; | ||||
| 
 | ||||
|                   "Mod+O" = { | ||||
|                     action = actions.toggle-overview; | ||||
|                     repeat = false; | ||||
|                   }; | ||||
| 
 | ||||
|                   "XF86AudioRaiseVolume" = { | ||||
|                     action.spawn = [ | ||||
|                       "wpctl" | ||||
|                       "set-volume" | ||||
|                       "@DEFAULT_AUDIO_SINK@" | ||||
|                       "0.1+" | ||||
|                     ]; | ||||
|                     allow-when-locked = true; | ||||
|                   }; | ||||
|                   "XF86AudioLowerVolume" = { | ||||
|                     action.spawn = [ | ||||
|                       "wpctl" | ||||
|                       "set-volume" | ||||
|                       "@DEFAULT_AUDIO_SINK@" | ||||
|                       "0.1-" | ||||
|                     ]; | ||||
|                     allow-when-locked = true; | ||||
|                   }; | ||||
|                   "XF86AudioMute" = { | ||||
|                     action.spawn = [ | ||||
|                       "wpctl" | ||||
|                       "set-mute" | ||||
|                       "@DEFAULT_AUDIO_SINK@" | ||||
|                       "toggle" | ||||
|                     ]; | ||||
|                     allow-when-locked = true; | ||||
|                   }; | ||||
|                   "XF86AudioMicMute" = { | ||||
|                     action.spawn = [ | ||||
|                       "wpctl" | ||||
|                       "set-mute" | ||||
|                       "@DEFAULT_AUDIO_SOURCE@" | ||||
|                       "toggle" | ||||
|                     ]; | ||||
|                     allow-when-locked = true; | ||||
|                   }; | ||||
|                 } | ||||
|                 focus-workspaces | ||||
|               ]; | ||||
| 
 | ||||
|           }; | ||||
| 
 | ||||
|         }; | ||||
|       }; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
|  | @ -6,7 +6,12 @@ let | |||
| in | ||||
| { | ||||
|   flake.modules.nixos."hosts/yggdrasil" = | ||||
|     { lib, pkgs, ... }: | ||||
|     { | ||||
|       inputs, | ||||
|       lib, | ||||
|       pkgs, | ||||
|       ... | ||||
|     }: | ||||
|     { | ||||
|       nixpkgs.config.allowUnfree = true; | ||||
| 
 | ||||
|  | @ -19,7 +24,18 @@ in | |||
|         diebahn | ||||
| 
 | ||||
|         path-of-building | ||||
|         bottles | ||||
| 
 | ||||
|         # to be removed | ||||
|         kdePackages.bluez-qt | ||||
|         zed-editor | ||||
|         seahorse | ||||
|         font-manager | ||||
|         vesktop | ||||
|         rofi-unwrapped | ||||
|       ]; | ||||
|       # to be removed | ||||
|       virtualisation.waydroid.enable = true; | ||||
| 
 | ||||
|       services.teamviewer.enable = true; | ||||
|       environment.pathsToLink = [ "/libexec" ]; | ||||
|  | @ -31,6 +47,11 @@ in | |||
|       imports = | ||||
|         with config.flake.modules.nixos; | ||||
|         [ | ||||
|           inputs.nixos-hardware.nixosModules.common-cpu-amd | ||||
|           inputs.nixos-hardware.nixosModules.common-pc | ||||
|           inputs.nixos-hardware.nixosModules.common-pc-ssd | ||||
|           inputs.catppuccin.nixosModules.catppuccin | ||||
| 
 | ||||
|           # System modules | ||||
|           base | ||||
|           dev | ||||
|  | @ -44,6 +65,7 @@ in | |||
| 
 | ||||
|           # dektops | ||||
|           hyprland | ||||
|           niri | ||||
| 
 | ||||
|           # apps | ||||
|           _1password | ||||
|  | @ -55,6 +77,9 @@ in | |||
|           { | ||||
|             home-manager.users.cholli = { | ||||
|               imports = with config.flake.modules.homeManager; [ | ||||
|                 inputs.catppuccin.homeModules.catppuccin | ||||
| 
 | ||||
|                 # components | ||||
|                 base | ||||
|                 dev | ||||
| 
 | ||||
|  | @ -106,8 +131,6 @@ in | |||
| 
 | ||||
|       }; | ||||
| 
 | ||||
|       services.fstrim.enable = true; | ||||
| 
 | ||||
|       fileSystems = { | ||||
|         "/" = { | ||||
|           device = "/dev/disk/by-uuid/b1a956f4-91d5-456e-a92b-be505bb719bd"; | ||||
|  | @ -144,6 +167,7 @@ in | |||
|       ]; | ||||
| 
 | ||||
|       nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
|       hardware.enableRedistributableFirmware = true; | ||||
|       hardware.cpu.amd.updateMicrocode = true; | ||||
|     }; | ||||
| } | ||||
|  |  | |||
|  | @ -47,7 +47,7 @@ | |||
|         }; | ||||
| 
 | ||||
|       homeManager.cholli = | ||||
|         { ... }: | ||||
|         { pkgs, ... }: | ||||
|         let | ||||
|           defaultIconFileName = "profile.png"; | ||||
|         in | ||||
|  | @ -64,6 +64,12 @@ | |||
|               ".face".source = ./${defaultIconFileName}; | ||||
|               "Pictures/${defaultIconFileName}".source = ./${defaultIconFileName}; | ||||
|             }; | ||||
| 
 | ||||
|             packages = with pkgs; [ graphviz ]; | ||||
|             shellAliases = { | ||||
|               nixsize = "nix-du -n=50 | dot -Tsvg > ~/Pictures/store.svg"; | ||||
|             }; | ||||
| 
 | ||||
|           }; | ||||
|         }; | ||||
|     }; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue