try hyprland instead
This commit is contained in:
		| @@ -1,17 +1,25 @@ | ||||
| {pkgs, ...}:  | ||||
| { | ||||
|     # Add a udev rule that launches a backup using restic when a specific USB device (the backup drive) is plugged in | ||||
|   # Add a udev rule that launches a backup using restic when a specific USB device (the backup drive) is plugged in | ||||
|  | ||||
|     environment.systemPackages = with pkgs; [ | ||||
|         restic | ||||
|     ]; | ||||
|     services.udev.packages = [ | ||||
|       (pkgs.writeTextFile { | ||||
|         name = "bakc"; | ||||
|         text = '' | ||||
|           SUBSYSTEMS=="usb", ATTRS{idVendor}=="3297", ATTRS{idProduct}=="1969", MODE="0666", TAG+="uaccess", SYMLINK+="stm32_dfu", GROUP="plugdev" | ||||
|         ''; | ||||
|         destination = "/etc/udev/rules.d/50-zsa.rules"; | ||||
|       }) | ||||
|     ]; | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|       restic | ||||
|   ]; | ||||
|  | ||||
|   # the udev rule: | ||||
|   services.udev.extraRules = '' | ||||
|     ACTION=="add", SUBSYSTEM=="block", ENV{ID_FS_LABEL}=="backup-restic", TAG+="systemd", ENV{SYSTEMD_WANTS}="backup-restic.service" | ||||
|   ''; | ||||
|  | ||||
|   # the systemd service: | ||||
|   systemd.services.backup-restic = { | ||||
|     description = "Backup using restic (triggered when USB drive is plugged in)"; | ||||
|     after = [ "local-fs.target" ]; | ||||
|     wantedBy = [ "multi-user.target" ]; | ||||
|     serviceConfig = { | ||||
|       Type = "oneshot"; | ||||
|       # TODO: adapt command | ||||
|       ExecStart = "${pkgs.restic}/bin/restic backup /home/username"; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										57
									
								
								modules/home-manager/hyprland-customization.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								modules/home-manager/hyprland-customization.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,57 @@ | ||||
| {inputs, pkgs, ...}:  | ||||
| { | ||||
|   programs.kitty.enable = true; | ||||
|   wayland.windowManager.hyprland = { | ||||
|     enable = true; | ||||
|     settings = { | ||||
|       "$mod" = "SUPER"; | ||||
|       bind = | ||||
|         [ | ||||
|           "$mod, F, exec, firefox" | ||||
|           "$mod, return, exec, walker" | ||||
|           "$mod_SHIFT, return, exec, kitty" | ||||
|           "$mod_SHIFT, q, kill" | ||||
|           "$mod, s, exec, code" | ||||
|         ]; | ||||
|      | ||||
|       # plugin.virtual-desktops = { | ||||
|  | ||||
|       # } | ||||
|     }; | ||||
|  | ||||
|     plugins = [ | ||||
|       # Touch gestures: https://github.com/horriblename/hyprgrass | ||||
|       inputs.hyprgrass.packages.${pkgs.system}.default | ||||
|       # Virtual desktops: https://github.com/levnikmyskin/hyprland-virtual-desktops | ||||
|       # inputs.hyprland-virtual-desktops.packages.${pkgs.system}.virtual-desktops | ||||
|     ]; | ||||
|   }; | ||||
|  | ||||
|   programs.walker = { | ||||
|     enable = true; | ||||
|     runAsService = true; | ||||
|  | ||||
|     # All options from the config.json can be used here. | ||||
|     config = { | ||||
|       search.placeholder = "Example"; | ||||
|       ui.fullscreen = true; | ||||
|       list = { | ||||
|         height = 200; | ||||
|       }; | ||||
|       websearch.prefix = "?"; | ||||
|       switcher.prefix = "/"; | ||||
|     }; | ||||
|  | ||||
|     # If this is not set the default styling is used. | ||||
|     # style = '' | ||||
|     #   * { | ||||
|     #     color: #dcd7ba; | ||||
|     #   } | ||||
|     # ''; | ||||
|   }; | ||||
|  | ||||
|   # # Set waybar config | ||||
|   # ".config/waybar/config".text = '' | ||||
|   # '' | ||||
|    | ||||
| } | ||||
							
								
								
									
										35
									
								
								modules/nixos/hyprland.nix
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								modules/nixos/hyprland.nix
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,35 @@ | ||||
| { | ||||
|   config, | ||||
|   lib, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: | ||||
| { | ||||
|   programs.uwsm.enable = true; | ||||
|  | ||||
|   programs.hyprland = { | ||||
|     enable = true; | ||||
|     xwayland.enable = false; | ||||
|     withUWSM = true; | ||||
|   }; | ||||
|  | ||||
|   # launch hyprland on login | ||||
|   # systemd.services.hyprland = { | ||||
|   #   description = "Hyprland"; | ||||
|   #   wantedBy = [ "graphical.target" ]; | ||||
|   #   after = [ "display-manager.service" ]; | ||||
|   #   serviceConfig = { | ||||
|   #     Type = "simple"; | ||||
|   #     ExecStart = "${pkgs.hyprland}/bin/hyprland"; | ||||
|   #     Restart = "always"; | ||||
|   #     RestartSec = "5"; | ||||
|   #     User = config.var.username; | ||||
|   #   }; | ||||
|   # }; | ||||
|  | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|     waybar   | ||||
|   ]; | ||||
|  | ||||
|  | ||||
| } | ||||
| @@ -17,19 +17,18 @@ | ||||
|           enable = true; | ||||
|         }; | ||||
|         hardware.nvidia = { | ||||
|           prime = { | ||||
|             nvidiaBusId = "PCI:1:0:0"; | ||||
|             intelBusId = "PCI:0:2:0"; | ||||
|  | ||||
|           }; | ||||
|           # prime = { | ||||
|           #   nvidiaBusId = "PCI:1:0:0"; | ||||
|           #   intelBusId = "PCI:0:2:0"; | ||||
|           # }; | ||||
|           modesetting.enable = true; | ||||
|           powerManagement.enable = false; | ||||
|           powerManagement.enable = true; | ||||
|           powerManagement.finegrained = false; | ||||
|           open = false; | ||||
|           nvidiaSettings = false; | ||||
|  | ||||
|           package = config.boot.kernelPackages.nvidiaPackages.mkDriver { | ||||
|             version = "565.77"; # latest | ||||
|             version = "565.77"; | ||||
|             sha256_64bit = "sha256-CnqnQsRrzzTXZpgkAtF7PbH9s7wbiTRNcM0SPByzFHw="; | ||||
|             sha256_aarch64 = "sha256-LSAYUnhfnK3rcuPe1dixOwAujSof19kNOfdRHE7bToE="; | ||||
|             openSha256 = "sha256-Fxo0t61KQDs71YA8u7arY+503wkAc1foaa51vi2Pl5I="; | ||||
| @@ -37,7 +36,7 @@ | ||||
|             persistencedSha256 = "sha256-wnDjC099D8d9NJSp9D0CbsL+vfHXyJFYYgU3CwcqKww="; | ||||
|           }; | ||||
|         }; | ||||
|  | ||||
|         # overwrite the blacklists set previously | ||||
|         boot.extraModprobeConfig = ""; | ||||
|         boot.blacklistedKernelModules = []; | ||||
|         services.udev.extraRules = ""; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user