summary refs log tree commit diff
path: root/nixos/modules/services/web-apps
diff options
context:
space:
mode:
authorJustin Humm <justin.humm@posteo.de>2021-03-12 22:09:51 +0100
committererictapen <justin.humm@posteo.de>2021-03-26 13:45:13 +0100
commit347a9168aee712703b6add4933164f2a0d8b41f8 (patch)
treeaa948ad441aef03656809a8bad44276947ad1f99 /nixos/modules/services/web-apps
parent569940b9fd60ea40359a8d8f1bbffd5db31b19c8 (diff)
downloadnixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.tar
nixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.tar.gz
nixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.tar.bz2
nixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.tar.lz
nixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.tar.xz
nixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.tar.zst
nixpkgs-347a9168aee712703b6add4933164f2a0d8b41f8.zip
nixos/hledger-web: set capabilites as boolean
Diffstat (limited to 'nixos/modules/services/web-apps')
-rw-r--r--nixos/modules/services/web-apps/hledger-web.nix33
1 files changed, 27 insertions, 6 deletions
diff --git a/nixos/modules/services/web-apps/hledger-web.nix b/nixos/modules/services/web-apps/hledger-web.nix
index f0c9b2b6c4c..a69767194c3 100644
--- a/nixos/modules/services/web-apps/hledger-web.nix
+++ b/nixos/modules/services/web-apps/hledger-web.nix
@@ -26,12 +26,28 @@ in {
       '';
     };
 
-    capabilities = mkOption {
-      type = types.commas;
-      default = "view";
-      description = ''
-        Enable the view, add, and/or manage capabilities. E.g. view,add
-      '';
+    capabilities = {
+      view = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Enable the view capability.
+        '';
+      };
+      add = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable the add capability.
+        '';
+      };
+      manage = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Enable the manage capability.
+        '';
+      };
     };
 
     stateDir = mkOption {
@@ -86,6 +102,11 @@ in {
     users.groups.hledger = {};
 
     systemd.services.hledger-web = let
+      capabilityString = with cfg.capabilities; concatStringsSep "," (
+        (optional view "view")
+        ++ (optional add "add")
+        ++ (optional manage "manage")
+      );
       serverArgs = with cfg; escapeShellArgs ([
         "--serve"
         "--host=${host}"