nixos/redmine: Fix PNG generation of Gant diagrams
The Ruby gem `minimagick` is used to export Gant diagrams as PNG. However, minimagick can't find a font and Redmine throws an error. The setting `minimagick_font_path` allows configuring a path to a font file in the Redmine configuration. Thus, add the option `services.redmine.components.minimagick_font_path` allowing to do that. Also, add an assertion to check if `services.redmine.components.minimagick_font_path` is set when imagemagick is enabled. Signed-off-by: Felix Singer <felixsinger@posteo.net>
This commit is contained in:
parent
66ef66fc62
commit
562bc5c2a9
|
@ -249,6 +249,13 @@ in
|
|||
default = false;
|
||||
description = "Allows exporting Gant diagrams as PDF.";
|
||||
};
|
||||
|
||||
minimagick_font_path = mkOption {
|
||||
type = types.str;
|
||||
default = "";
|
||||
description = "";
|
||||
example = "/run/current-system/sw/share/X11/fonts/LiberationSans-Regular.ttf";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
@ -269,6 +276,9 @@ in
|
|||
{ assertion = cfg.database.createLocally -> cfg.database.host == "localhost";
|
||||
message = "services.redmine.database.host must be set to localhost if services.redmine.database.createLocally is set to true";
|
||||
}
|
||||
{ assertion = cfg.components.imagemagick -> cfg.components.minimagick_font_path != "";
|
||||
message = "services.redmine.components.minimagick_font_path must be configured with a path to a font file if services.redmine.components.imagemagick is set to true.";
|
||||
}
|
||||
];
|
||||
|
||||
services.redmine.settings = {
|
||||
|
@ -280,6 +290,7 @@ in
|
|||
scm_bazaar_command = if cfg.components.breezy then "${pkgs.breezy}/bin/bzr" else "";
|
||||
imagemagick_convert_command = if cfg.components.imagemagick then "${pkgs.imagemagick}/bin/convert" else "";
|
||||
gs_command = if cfg.components.ghostscript then "${pkgs.ghostscript}/bin/gs" else "";
|
||||
minimagick_font_path = "${cfg.components.minimagick_font_path}";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in a new issue