mirror of
				https://github.com/ItsDrike/nixdots
				synced 2025-10-31 22:36:37 +00:00 
			
		
		
		
	Compare commits
	
		
			No commits in common. "47d070ce5edcc3134e18082e3d74aa95cf7300d8" and "7a79342f93e15d8fead502af6dbde8406e09acfc" have entirely different histories.
		
	
	
		
			47d070ce5e
			...
			7a79342f93
		
	
		
					 4 changed files with 11 additions and 60 deletions
				
			
		|  | @ -7,7 +7,6 @@ the window names. Window name and class are obtained from piped stdin, to preven | ||||||
| needlessly keep restarting this program, which takes a while due to the interpreter starting | needlessly keep restarting this program, which takes a while due to the interpreter starting | ||||||
| overhead. | overhead. | ||||||
| """ | """ | ||||||
| 
 |  | ||||||
| import json | import json | ||||||
| import re | import re | ||||||
| import sys | import sys | ||||||
|  | @ -51,9 +50,9 @@ class RemapRule: | ||||||
| # Rules will be applied in specified order | # Rules will be applied in specified order | ||||||
| REMAP_RULES: list[RemapRule] = [ | REMAP_RULES: list[RemapRule] = [ | ||||||
|     RemapRule(r"", "", ""), |     RemapRule(r"", "", ""), | ||||||
|     RemapRule(r"(.*) — Mozilla Firefox", "  {}", "firefox"), |     RemapRule(r"(.*) — Mozilla Firefox", " {}", "firefox"), | ||||||
|     RemapRule(r"Mozilla Firefox", "  Mozilla Firefox", "firefox"), |     RemapRule(r"Mozilla Firefox", " Mozilla Firefox", "firefox"), | ||||||
|     RemapRule(r"Alacritty", "  Alacritty", "Alacritty"), |     RemapRule(r"Alacritty", " Alacritty", "Alacritty"), | ||||||
|     RemapRule( |     RemapRule( | ||||||
|         r"zsh;#toggleterm#1 - \(term:\/\/(.+)\/\/(\d+):(.+)\) - N?VIM", |         r"zsh;#toggleterm#1 - \(term:\/\/(.+)\/\/(\d+):(.+)\) - N?VIM", | ||||||
|         " Terminal: {0}", |         " Terminal: {0}", | ||||||
|  | @ -64,13 +63,13 @@ REMAP_RULES: list[RemapRule] = [ | ||||||
|     RemapRule(r"(.+) - Discord", " {}", "discord"), |     RemapRule(r"(.+) - Discord", " {}", "discord"), | ||||||
|     RemapRule(r"(?:\(\d+\) )?Discord \| (.+)", " {}", "vesktop"), |     RemapRule(r"(?:\(\d+\) )?Discord \| (.+)", " {}", "vesktop"), | ||||||
|     RemapRule(r"(.+) - mpv", " {}", "mpv"), |     RemapRule(r"(.+) - mpv", " {}", "mpv"), | ||||||
|     RemapRule(r"Stremio - (.+)", "  Stremio - {}", r"(Stremio)|(com.stremio.stremio)"), |     RemapRule(r"Stremio - (.+)", " Stremio - {}", r"(Stremio)|(com.stremio.stremio)"), | ||||||
|     RemapRule(r"Spotify((?: Premium)?)", " Spotify{}", "[Ss]potify"), |     RemapRule(r"Spotify", " Spotify", "Spotify"), | ||||||
|     RemapRule(r"pulsemixer", "  Pulsemixer"), |     RemapRule(r"pulsemixer", " Pulsemixer"), | ||||||
|     RemapRule(r"(.*)", " {}", "Pcmanfm"), |     RemapRule(r"(.*)", " {}", "Pcmanfm"), | ||||||
|     RemapRule(r"(.*)", " {}", "pcmanfm-qt"), |     RemapRule(r"(.*)", " {}", "pcmanfm-qt"), | ||||||
|     # Needs to be last |     # Needs to be last | ||||||
|     RemapRule(r"(.*)", "  {}", "kitty"), |     RemapRule(r"(.*)", " {}", "kitty"), | ||||||
| ] | ] | ||||||
| 
 | 
 | ||||||
| MAX_LENGTH = 65 | MAX_LENGTH = 65 | ||||||
|  | @ -82,9 +81,7 @@ def iter_window() -> Iterator[tuple[str, str]]: | ||||||
|         line = line.removesuffix("\n") |         line = line.removesuffix("\n") | ||||||
|         els = line.split(",", maxsplit=1) |         els = line.split(",", maxsplit=1) | ||||||
|         if len(els) != 2: |         if len(els) != 2: | ||||||
|             raise ValueError( |             raise ValueError(f"Expected 2 arguments from stdin line (name, class), but got {len(els)}") | ||||||
|                 f"Expected 2 arguments from stdin line (name, class), but got {len(els)}" |  | ||||||
|             ) |  | ||||||
|         yield els[1], els[0] |         yield els[1], els[0] | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -54,42 +54,29 @@ | ||||||
|           enable = true; |           enable = true; | ||||||
|           persistentMountPoint = "/persist/home"; |           persistentMountPoint = "/persist/home"; | ||||||
|           extraDirectories = [ |           extraDirectories = [ | ||||||
|             # Nixos flake |  | ||||||
|             "dots" |  | ||||||
| 
 |  | ||||||
|             # Personal data |  | ||||||
|             "Downloads" |             "Downloads" | ||||||
|             "Personal" |             "Personal" | ||||||
|             "Media" |             "Media" | ||||||
|  |             "dots" | ||||||
| 
 | 
 | ||||||
|             # Browsers |  | ||||||
|             ".mozilla" |             ".mozilla" | ||||||
|             ".mullvad" |             ".mullvad" | ||||||
|             ".config/chromium" |             ".config/chromium" | ||||||
| 
 |  | ||||||
|             # Applications |  | ||||||
|             ".config/spotify" |             ".config/spotify" | ||||||
|             ".config/vesktop" |             ".config/vesktop" | ||||||
|             ".local/share/Smart Code ltd/Stremio" |  | ||||||
| 
 |  | ||||||
|             # Tools |  | ||||||
|             ".local/share/gnupg" |             ".local/share/gnupg" | ||||||
|             ".local/share/zoxide" |             ".local/share/zoxide" | ||||||
|             ".local/share/wakatime" |             ".local/share/wakatime" | ||||||
|             ".local/share/nvim" |             ".local/share/nvim" | ||||||
|             ".local/state/nvim" |             ".local/state/nvim" | ||||||
| 
 |             ".local/share/zsh" | ||||||
|             # Services |             ".local/share/Smart Code ltd/Stremio" | ||||||
|             ".local/state/wireplumber" # volume settings |  | ||||||
| 
 |  | ||||||
|             # Language package managers |  | ||||||
|             ".local/share/cargo" |             ".local/share/cargo" | ||||||
|             ".local/share/go" |             ".local/share/go" | ||||||
|           ]; |           ]; | ||||||
|           extraFiles = [ |           extraFiles = [ | ||||||
|             ".config/git/git-credentials" |             ".config/git/git-credentials" | ||||||
|             ".cache/walker/history.gob" |             ".cache/walker/history.gob" | ||||||
|             ".local/share/zsh/zsh_history" |  | ||||||
|           ]; |           ]; | ||||||
|         }; |         }; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -4,7 +4,6 @@ _: { | ||||||
|     ./generic.nix |     ./generic.nix | ||||||
|     ./secure-boot.nix |     ./secure-boot.nix | ||||||
|     ./initrd.nix |     ./initrd.nix | ||||||
|     ./numlock.nix |  | ||||||
|     ./plymouth.nix |     ./plymouth.nix | ||||||
|   ]; |   ]; | ||||||
| } | } | ||||||
|  |  | ||||||
|  | @ -1,32 +0,0 @@ | ||||||
| { pkgs, ... }: { |  | ||||||
|   boot.initrd.systemd = { |  | ||||||
|     # Include setleds binary in the initrd |  | ||||||
|     # (the nix store doesn't exists in there yet, so we need to include |  | ||||||
|     # all of the necessary binaries ahead of time here) |  | ||||||
|     extraBin = { |  | ||||||
|       setleds = "${pkgs.kbd}/bin/setleds"; |  | ||||||
|     }; |  | ||||||
| 
 |  | ||||||
|     # Enable numlock in the early userspace (initrd) |  | ||||||
|     # This will happen before we're asked for the disk decryption password |  | ||||||
|     services."numlock" = { |  | ||||||
|       enable = true; |  | ||||||
|       description = "Activate Numlock"; |  | ||||||
|       wantedBy = [ "initrd.target" ]; |  | ||||||
|       # Delay disk decryption until this unit is started |  | ||||||
|       before = [ "systemd-cryptsetup@cryptfs.service" ]; |  | ||||||
|       unitConfig.DefaultDependencies = "no"; |  | ||||||
|       serviceConfig.Type = "oneshot"; |  | ||||||
|       # This is essentially runs the same code as present in the  |  | ||||||
|       # mkinitcpio-numlock hook on Arch Linux (AUR). |  | ||||||
|       script = '' |  | ||||||
|         #!/bin/bash |  | ||||||
| 
 |  | ||||||
|         for tty in /dev/tty{1..6} |  | ||||||
|         do |  | ||||||
|             /bin/setleds -D +num < "$tty"; |  | ||||||
|         done |  | ||||||
|       ''; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue