fix: NixOS module: fix /etc/headplane/config.yaml generation
This commit is contained in:
parent
12592936f1
commit
49c7be3e05
@ -13,13 +13,17 @@
|
|||||||
types
|
types
|
||||||
;
|
;
|
||||||
cfg = config.services.headplane;
|
cfg = config.services.headplane;
|
||||||
|
settingsFormat = pkgs.formats.yaml {};
|
||||||
|
settingsFile = settingsFormat.generate "headplane-config.yaml" cfg.settings;
|
||||||
in {
|
in {
|
||||||
options.services.headplane = {
|
options.services.headplane = {
|
||||||
enable = mkEnableOption "headplane";
|
enable = mkEnableOption "headplane";
|
||||||
package = mkPackageOption pkgs "headplane" {};
|
package = mkPackageOption pkgs "headplane" {};
|
||||||
|
|
||||||
settings = mkOption {
|
settings = mkOption {
|
||||||
type = with types; attrsOf (oneOf [str int bool]);
|
type = types.submodule {
|
||||||
|
freeformType = settingsFormat.type;
|
||||||
|
};
|
||||||
default = {};
|
default = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -56,10 +60,7 @@ in {
|
|||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.systemPackages = [cfg.package];
|
environment.systemPackages = [cfg.package];
|
||||||
|
|
||||||
environment.etc."headplane/config.yaml".source = let
|
environment.etc."headplane/config.yaml".source = "${settingsFile}";
|
||||||
format = pkgs.formats.yaml {};
|
|
||||||
headplaneConfig = format.generate "headplane-config.yaml" cfg.settings;
|
|
||||||
in "${headplaneConfig}";
|
|
||||||
|
|
||||||
systemd.services.headplane-agent =
|
systemd.services.headplane-agent =
|
||||||
mkIf cfg.agent.enable
|
mkIf cfg.agent.enable
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user