diff options
| author | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-09-24 23:13:51 +0530 |
|---|---|---|
| committer | Arpit Chakladar <54011232+arpitchakladar@users.noreply.github.com> | 2024-09-24 23:13:51 +0530 |
| commit | c0c5087218c27e31c3e6f66f3937bff22fa0f647 (patch) | |
| tree | dede2292db1423cef901932a7898ec951c9d2345 /modules/desktop/status-bar/polybar | |
| parent | 21265ba643f1c12ad40e5195de8a3a97682adbde (diff) | |
| download | home-manager-config-c0c5087218c27e31c3e6f66f3937bff22fa0f647.tar.gz home-manager-config-c0c5087218c27e31c3e6f66f3937bff22fa0f647.zip | |
Using nix flake modules to manage the configurations.
Diffstat (limited to 'modules/desktop/status-bar/polybar')
10 files changed, 165 insertions, 0 deletions
diff --git a/modules/desktop/status-bar/polybar/bars/main.nix b/modules/desktop/status-bar/polybar/bars/main.nix new file mode 100644 index 0000000..630664d --- /dev/null +++ b/modules/desktop/status-bar/polybar/bars/main.nix @@ -0,0 +1,28 @@ +config: + +with config.scheme.withHashtag; +{ + width = "100%"; + height = 30; + radius = 3; + fixed-center = false; + + background = "${base00}"; + foreground = "${base05}"; + + line-size = 3; + line-color = "${base08}"; + + border-size = 4; + padding-left = 2; + padding-right = 2; + + module-margin-left = 2; + module-margin-right = 2; + + font-0 = "FiraCode Nerd Font:pixelsize=16;3"; + + modules-left = "bspwm"; + modules-center = "xwindow"; + modules-right = "memory cpu battery time date kernel-version"; +} diff --git a/modules/desktop/status-bar/polybar/default.nix b/modules/desktop/status-bar/polybar/default.nix new file mode 100644 index 0000000..11f4f1a --- /dev/null +++ b/modules/desktop/status-bar/polybar/default.nix @@ -0,0 +1,24 @@ +{ config, lib, ... }: + +{ + options = { + polybar.enable = lib.mkEnableOption "Enables polybar."; + }; + + config = lib.mkIf config.polybar.enable { + services.polybar.enable = true; + services.polybar.script = "polybar main &"; + + services.polybar.config = { + "bar/main" = import ./bars/main.nix config; + "module/xwindow" = import ./modules/xwindow.nix config; + "module/bspwm" = import ./modules/bspwm.nix config; + "module/cpu" = import ./modules/cpu.nix config; + "module/memory" = import ./modules/memory.nix config; + "module/date" = import ./modules/date.nix config; + "module/time" = import ./modules/time.nix config; + "module/battery" = import ./modules/battery.nix config; + "module/kernel-version" = import ./modules/kernel-version.nix config; + }; + }; +} diff --git a/modules/desktop/status-bar/polybar/modules/battery.nix b/modules/desktop/status-bar/polybar/modules/battery.nix new file mode 100644 index 0000000..9860c3c --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/battery.nix @@ -0,0 +1,36 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/battery"; + battery = "BAT0"; + adapter = "ADP1"; + + format-charging = "<animation-charging> <label-charging>"; + format-discharging = "<ramp-capacity> <label-discharging>"; + format-full-prefix = "%{F${base0B}}%{F-}"; + + ramp-capacity-0 = "%{F${base0C}}%{F-}"; + ramp-capacity-1 = "%{F${base0C}}%{F-}"; + ramp-capacity-2 = "%{F${base0C}}%{F-}"; + ramp-capacity-3 = "%{F${base0C}}%{F-}"; + ramp-capacity-4 = "%{F${base0C}}%{F-}"; + ramp-capacity-5 = "%{F${base0C}}%{F-}"; + ramp-capacity-6 = "%{F${base0C}}%{F-}"; + ramp-capacity-7 = "%{F${base0C}}%{F-}"; + ramp-capacity-8 = "%{F${base0C}}%{F-}"; + ramp-capacity-9 = "%{F${base0C}}%{F-}"; + + animation-charging-0 = "%{F${base0C}}%{F-}"; + animation-charging-1 = "%{F${base0C}}%{F-}"; + animation-charging-2 = "%{F${base0C}}%{F-}"; + animation-charging-3 = "%{F${base0C}}%{F-}"; + animation-charging-4 = "%{F${base0C}}%{F-}"; + animation-charging-5 = "%{F${base0C}}%{F-}"; + animation-charging-6 = "%{F${base0C}}%{F-}"; + animation-charging-7 = "%{F${base0C}}%{F-}"; + animation-charging-8 = "%{F${base0C}}%{F-}"; + animation-charging-9 = "%{F${base0C}}%{F-}"; + + animation-charging-framerate = 750; +} diff --git a/modules/desktop/status-bar/polybar/modules/bspwm.nix b/modules/desktop/status-bar/polybar/modules/bspwm.nix new file mode 100644 index 0000000..7ec5c6d --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/bspwm.nix @@ -0,0 +1,22 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/bspwm"; + + label-focused = "%index%"; + label-focused-background = "${base01}"; + label-focused-underline = "${base0D}"; + label-focused-padding = 2; + + label-occupied = "%index%"; + label-occupied-padding = 2; + + label-urgent = "%index%!"; + label-urgent-background = "${base08}"; + label-urgent-padding = 2; + + label-empty = "%index%"; + label-empty-foreground = "${base03}"; + label-empty-padding = 2; +} diff --git a/modules/desktop/status-bar/polybar/modules/cpu.nix b/modules/desktop/status-bar/polybar/modules/cpu.nix new file mode 100644 index 0000000..f118990 --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/cpu.nix @@ -0,0 +1,9 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/cpu"; + interval = 2; + format-prefix = "%{F${base09}} %{F-}"; + label = "%percentage%%"; +} diff --git a/modules/desktop/status-bar/polybar/modules/date.nix b/modules/desktop/status-bar/polybar/modules/date.nix new file mode 100644 index 0000000..11a5934 --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/date.nix @@ -0,0 +1,10 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/date"; + interval = 60; + date = "%d/%m/%Y"; + label = "%date%"; + format-prefix = "%{F${base0B}} %{F-}"; +} diff --git a/modules/desktop/status-bar/polybar/modules/kernel-version.nix b/modules/desktop/status-bar/polybar/modules/kernel-version.nix new file mode 100644 index 0000000..a900264 --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/kernel-version.nix @@ -0,0 +1,10 @@ +config: + +with config.scheme.withHashtag; +{ + type = "custom/script"; + exec = "uname -r"; + interval = 1024; + format-prefix = "%{F${base03}} %{F-}"; + label = "%output%"; +} diff --git a/modules/desktop/status-bar/polybar/modules/memory.nix b/modules/desktop/status-bar/polybar/modules/memory.nix new file mode 100644 index 0000000..1aff8a3 --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/memory.nix @@ -0,0 +1,9 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/memory"; + interval = 2; + format-prefix = "%{F${base0A}} %{F-}"; + label = "%percentage_used%%"; +} diff --git a/modules/desktop/status-bar/polybar/modules/time.nix b/modules/desktop/status-bar/polybar/modules/time.nix new file mode 100644 index 0000000..e4c7cbe --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/time.nix @@ -0,0 +1,10 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/date"; + interval = 30; + time = "%H:%M"; + label = "%time%"; + format-prefix = "%{F${base0C}} %{F-}"; +} diff --git a/modules/desktop/status-bar/polybar/modules/xwindow.nix b/modules/desktop/status-bar/polybar/modules/xwindow.nix new file mode 100644 index 0000000..23245ba --- /dev/null +++ b/modules/desktop/status-bar/polybar/modules/xwindow.nix @@ -0,0 +1,7 @@ +config: + +with config.scheme.withHashtag; +{ + type = "internal/xwindow"; + label = "%title:0:30:...%"; +} |
