nixos/vaultwarden: make package configurable (#113216)
This allows the user to override the version of Vaultwarden used by the service, if using an overlay to keep up to date with releases for example.
This commit is contained in:
@@ -26,12 +26,12 @@ let
|
||||
if value != null then [ (nameValuePair (nameToEnvVar name) (if isBool value then boolToString value else toString value)) ] else []
|
||||
) cfg.config));
|
||||
in { DATA_FOLDER = "/var/lib/bitwarden_rs"; } // optionalAttrs (!(configEnv ? WEB_VAULT_ENABLED) || configEnv.WEB_VAULT_ENABLED == "true") {
|
||||
WEB_VAULT_FOLDER = "${pkgs.vaultwarden-vault}/share/vaultwarden/vault";
|
||||
WEB_VAULT_FOLDER = "${cfg.webVaultPackage}/share/vaultwarden/vault";
|
||||
} // configEnv;
|
||||
|
||||
configFile = pkgs.writeText "vaultwarden.env" (concatStrings (mapAttrsToList (name: value: "${name}=${value}\n") configEnv));
|
||||
|
||||
vaultwarden = pkgs.vaultwarden.override { inherit (cfg) dbBackend; };
|
||||
vaultwarden = cfg.package.override { inherit (cfg) dbBackend; };
|
||||
|
||||
in {
|
||||
imports = [
|
||||
@@ -102,6 +102,20 @@ in {
|
||||
<literal>vaultwarden</literal> is running.
|
||||
'';
|
||||
};
|
||||
|
||||
package = mkOption {
|
||||
type = package;
|
||||
default = pkgs.vaultwarden;
|
||||
defaultText = "pkgs.vaultwarden";
|
||||
description = "Vaultwarden package to use.";
|
||||
};
|
||||
|
||||
webVaultPackage = mkOption {
|
||||
type = package;
|
||||
default = pkgs.vaultwarden-vault;
|
||||
defaultText = "pkgs.vaultwarden-vault";
|
||||
description = "Web vault package to use.";
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
Reference in New Issue
Block a user