about summary refs log tree commit diff stats
path: root/modules/home/conf/taskwarrior/firefox
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/taskwarrior/firefox
parentrefactor(pkgs): Categorize into `by-name` shards (diff)
downloadnixos-config-fd9b0ecef4142a62b45404700ba1cff488f84a73.zip
refactor(modules/home): Setup as "normal" NixOS module
Diffstat (limited to 'modules/home/conf/taskwarrior/firefox')
-rw-r--r--modules/home/conf/taskwarrior/firefox/default.nix32
1 files changed, 32 insertions, 0 deletions
diff --git a/modules/home/conf/taskwarrior/firefox/default.nix b/modules/home/conf/taskwarrior/firefox/default.nix
new file mode 100644
index 00000000..fb5daaa8
--- /dev/null
+++ b/modules/home/conf/taskwarrior/firefox/default.nix
@@ -0,0 +1,32 @@
+{
+  config,
+  lib,
+  # options
+  prefConfig,
+  profile_size,
+  search,
+  userChrome,
+  ...
+}: let
+  inherit (config.soispha.taskwarrior.projects) projects;
+
+  mkFirefoxProfile = {
+    name,
+    id,
+  }: {
+    inherit name;
+    value = {
+      isDefault = false;
+      extraConfig = prefConfig;
+      inherit id name search userChrome;
+    };
+  };
+  projects_id =
+    lib.imap0 (id: project: {
+      name = project;
+      id = id + profile_size;
+    })
+    projects;
+  firefoxProfiles = builtins.listToAttrs (builtins.map mkFirefoxProfile projects_id);
+in
+  firefoxProfiles