about summary refs log tree commit diff stats
path: root/modules/home/conf/yambar/default.nix
diff options
context:
space:
mode:
authorBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-23 13:31:11 +0200
committerBenedikt Peetz <benedikt.peetz@b-peetz.de>2024-05-23 13:33:40 +0200
commitfd9b0ecef4142a62b45404700ba1cff488f84a73 (patch)
treeef6c1f74f05a2220a41ccff4b0890c39229f32f7 /modules/home/conf/yambar/default.nix
parentrefactor(pkgs): Categorize into `by-name` shards (diff)
downloadnixos-config-fd9b0ecef4142a62b45404700ba1cff488f84a73.tar.gz
nixos-config-fd9b0ecef4142a62b45404700ba1cff488f84a73.zip
refactor(modules/home): Setup as "normal" NixOS module
Diffstat (limited to 'modules/home/conf/yambar/default.nix')
-rw-r--r--modules/home/conf/yambar/default.nix52
1 files changed, 52 insertions, 0 deletions
diff --git a/modules/home/conf/yambar/default.nix b/modules/home/conf/yambar/default.nix
new file mode 100644
index 00000000..021dfbdd
--- /dev/null
+++ b/modules/home/conf/yambar/default.nix
@@ -0,0 +1,52 @@
+{
+  nixosConfig,
+  sysLib,
+  system,
+  pkgs,
+  yambar_cpu,
+  yambar_memory,
+  ...
+}: let
+  makeScript = {
+    name,
+    dependencies,
+    ...
+  }:
+    sysLib.writeShellScript {
+      inherit name;
+      src = ./scripts/${name}.sh;
+      dependencies = dependencies ++ (builtins.attrValues {inherit (pkgs) dash;});
+    }
+    + "/bin/${name}";
+in {
+  xdg.configFile."yambar/config.yml".source = pkgs.substituteAll {
+    src =
+      if nixosConfig.soispha.laptop.enable
+      then ./config/laptop.yml
+      else ./config/config.yml;
+
+    backlight =
+      if nixosConfig.soispha.laptop.enable
+      then nixosConfig.soispha.laptop.backlight
+      else "";
+
+    mpd_song_name_script = makeScript {
+      dependencies = builtins.attrValues {inherit (pkgs) mpc-cli;};
+      name = "mpd_song_name";
+    };
+
+    volume_script = makeScript {
+      dependencies = builtins.attrValues {inherit (pkgs) pulseaudio gawk coreutils;};
+      name = "sound-volume";
+    };
+
+    cpu_script = yambar_cpu.app.${system}.default.program;
+
+    memory_script = yambar_memory.app.${system}.default.program;
+
+    disk_script = makeScript {
+      dependencies = builtins.attrValues {inherit (pkgs) gawk btrfs-progs coreutils;};
+      name = "disk";
+    };
+  };
+}