···
cfgFile = pkgs.writeText "kibana.json" (builtins.toJSON (
(filterAttrsRecursive (n: v: v != null) ({
11
-
host = cfg.listenAddress;
10
+
host = cfg.listenAddress;
12
+
ssl_cert_file = cfg.cert;
13
+
ssl_key_file = cfg.key;
21
-
defaultAppId = cfg.defaultAppId;
15
+
kibana_index = cfg.index;
16
+
default_app_id = cfg.defaultAppId;
25
-
url = cfg.elasticsearch.url;
26
-
username = cfg.elasticsearch.username;
27
-
password = cfg.elasticsearch.password;
29
-
cert = cfg.elasticsearch.cert;
30
-
key = cfg.elasticsearch.key;
31
-
ca = cfg.elasticsearch.ca;
18
+
elasticsearch_url = cfg.elasticsearch.url;
19
+
kibana_elasticsearch_username = cfg.elasticsearch.username;
20
+
kibana_elasticsearch_password = cfg.elasticsearch.password;
21
+
kibana_elasticsearch_cert = cfg.elasticsearch.cert;
22
+
kibana_elasticsearch_key = cfg.elasticsearch.key;
23
+
ca = cfg.elasticsearch.ca;
36
-
verbose = cfg.logLevel == "verbose";
37
-
quiet = cfg.logLevel == "quiet";
38
-
silent = cfg.logLevel == "silent";
25
+
bundled_plugin_ids = [
26
+
"plugins/dashboard/index"
27
+
"plugins/discover/index"
29
+
"plugins/kibana/index"
30
+
"plugins/markdown_vis/index"
31
+
"plugins/metric_vis/index"
32
+
"plugins/settings/index"
33
+
"plugins/table_vis/index"
34
+
"plugins/vis_types/index"
35
+
"plugins/visualize/index"
···
121
-
logLevel = mkOption {
122
-
description = "Kibana log level";
123
-
default = "normal";
124
-
type = types.enum ["verbose" "normal" "silent" "quiet"];
description = "Kibana package to use";
···
description = "Kibana Service";
wantedBy = [ "multi-user.target" ];
after = [ "network-interfaces.target" "elasticsearch.service" ];
142
+
environment = { BABEL_CACHE_PATH = "${cfg.dataDir}/.babelcache.json"; };
ExecStart = "${cfg.package}/bin/kibana --config ${cfgFile}";