0xda157's home-manager and nixos config

add waybar timer

+55 -1
+19 -1
modules/home/desktops/shared/waybar/default.nix
··· 1 1 { 2 2 lib, 3 3 config, 4 + self, 5 + pkgs, 4 6 ... 5 7 }: 6 8 { ··· 19 21 style = lib.mkAfter ( 20 22 '' 21 23 window#waybar, tooltip { 22 - background: alpha(@base00, ${builtins.toString config.stylix.opacity.desktop}); 24 + background: alpha(@base00, ${toString config.stylix.opacity.desktop}); 23 25 color: @base05; 24 26 } 25 27 '' ··· 33 35 spacing = 5; 34 36 modules-left = [ 35 37 "clock" 38 + "custom/timer" 36 39 "hyprland/workspaces" 37 40 "mpris" 38 41 ]; ··· 181 184 deactivated = "󰒲"; 182 185 }; 183 186 }; 187 + "custom/timer" = 188 + let 189 + timer = lib.getExe self.packages.${pkgs.stdenv.hostPlatform.system}.waybar-timer; 190 + in 191 + { 192 + exec = timer; 193 + return-type = "json"; 194 + format = "{}"; 195 + on-click = "${timer} click"; 196 + on-click-right = "${timer} right"; 197 + on-click-middle = "${timer} middle"; 198 + on-scroll-down = "${timer} down"; 199 + on-scroll-up = "${timer} up"; 200 + tooltip = true; 201 + }; 184 202 }; 185 203 }; 186 204 };
+36
pkgs/waybar-timer/package.nix
··· 1 + { 2 + lib, 3 + stdenvNoCC, 4 + fetchFromGitHub, 5 + libnotify, 6 + }: 7 + stdenvNoCC.mkDerivation { 8 + name = "waybar-timer"; 9 + version = "0-unstable-2026-01-13"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "nirabyte"; 13 + repo = "waybar-timer"; 14 + rev = "0faf1fe03ec0d517fc90c31fe518c45c7ee1a54b"; 15 + hash = "sha256-4uyvWnEom5c/XB9HpQOPsGYo6uXYG5YOeb49+puSaoQ="; 16 + }; 17 + 18 + dontUnpack = true; 19 + 20 + installPhase = '' 21 + install -Dm755 $src/timer.sh $out/bin/waybar-timer 22 + ''; 23 + 24 + postInstall = '' 25 + wrapProgram $out/bin/waybar-timer \ 26 + --prefix PATH : ${lib.makeBinPath [ libnotify ]} 27 + ''; 28 + 29 + meta = { 30 + mainProgram = "waybar-timer"; 31 + description = "Flexible timer module for Waybar"; 32 + homepage = "https://github.com/nirabyte/waybar-timer"; 33 + platforms = lib.platforms.all; 34 + maintainers = [ lib.maintainers.da157 ]; 35 + }; 36 + }