tangled
alpha
login
or
join now
da157.id
/
nix-config
0
fork
atom
0xda157's home-manager and nixos config
0
fork
atom
overview
issues
pulls
pipelines
add waybar timer
0xda157
1 month ago
2d69f480
3e3ce626
0/1
check.yml
failed
40s
+55
-1
2 changed files
expand all
collapse all
unified
split
modules
home
desktops
shared
waybar
default.nix
pkgs
waybar-timer
package.nix
+19
-1
modules/home/desktops/shared/waybar/default.nix
···
1
{
2
lib,
3
config,
0
0
4
...
5
}:
6
{
···
19
style = lib.mkAfter (
20
''
21
window#waybar, tooltip {
22
-
background: alpha(@base00, ${builtins.toString config.stylix.opacity.desktop});
23
color: @base05;
24
}
25
''
···
33
spacing = 5;
34
modules-left = [
35
"clock"
0
36
"hyprland/workspaces"
37
"mpris"
38
];
···
181
deactivated = "";
182
};
183
};
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
184
};
185
};
186
};
···
1
{
2
lib,
3
config,
4
+
self,
5
+
pkgs,
6
...
7
}:
8
{
···
21
style = lib.mkAfter (
22
''
23
window#waybar, tooltip {
24
+
background: alpha(@base00, ${toString config.stylix.opacity.desktop});
25
color: @base05;
26
}
27
''
···
35
spacing = 5;
36
modules-left = [
37
"clock"
38
+
"custom/timer"
39
"hyprland/workspaces"
40
"mpris"
41
];
···
184
deactivated = "";
185
};
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
+
};
202
};
203
};
204
};
+36
pkgs/waybar-timer/package.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
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
+
}