forked from mirrors/nixpkgs
nixos/sks: Add option to configure database settings
This can be used for options to tweak the behavior around the database.
This commit is contained in:
parent
e47fcaed5b
commit
ab5dcc7068
|
@ -5,6 +5,9 @@ with lib;
|
||||||
let
|
let
|
||||||
cfg = config.services.sks;
|
cfg = config.services.sks;
|
||||||
sksPkg = cfg.package;
|
sksPkg = cfg.package;
|
||||||
|
dbConfig = pkgs.writeText "DB_CONFIG" ''
|
||||||
|
${cfg.extraDbConfig}
|
||||||
|
'';
|
||||||
|
|
||||||
in {
|
in {
|
||||||
meta.maintainers = with maintainers; [ primeos calbrecht jcumming ];
|
meta.maintainers = with maintainers; [ primeos calbrecht jcumming ];
|
||||||
|
@ -39,6 +42,20 @@ in {
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
extraDbConfig = mkOption {
|
||||||
|
type = types.str;
|
||||||
|
default = "";
|
||||||
|
description = ''
|
||||||
|
Set contents of the files "KDB/DB_CONFIG" and "PTree/DB_CONFIG" within
|
||||||
|
the ''${dataDir} directory. This is used to configure options for the
|
||||||
|
database for the sks key server.
|
||||||
|
|
||||||
|
Documentation of available options are available in the file named
|
||||||
|
"sampleConfig/DB_CONFIG" in the following repository:
|
||||||
|
https://bitbucket.org/skskeyserver/sks-keyserver/src
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
hkpAddress = mkOption {
|
hkpAddress = mkOption {
|
||||||
default = [ "127.0.0.1" "::1" ];
|
default = [ "127.0.0.1" "::1" ];
|
||||||
type = types.listOf types.str;
|
type = types.listOf types.str;
|
||||||
|
@ -99,6 +116,17 @@ in {
|
||||||
${lib.optionalString (cfg.webroot != null)
|
${lib.optionalString (cfg.webroot != null)
|
||||||
"ln -sfT \"${cfg.webroot}\" web"}
|
"ln -sfT \"${cfg.webroot}\" web"}
|
||||||
mkdir -p dump
|
mkdir -p dump
|
||||||
|
# Check that both database configs are symlinks before overwriting them
|
||||||
|
if [ -e KDB/DB_CONFIG ] && [ ! -L KBD/DB_CONFIG ]; then
|
||||||
|
echo "KDB/DB_CONFIG exists but is not a symlink." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if [ -e PTree/DB_CONFIG ] && [ ! -L PTree/DB_CONFIG ]; then
|
||||||
|
echo "PTree/DB_CONFIG exists but is not a symlink." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
ln -sf ${dbConfig} KDB/DB_CONFIG
|
||||||
|
ln -sf ${dbConfig} PTree/DB_CONFIG
|
||||||
${sksPkg}/bin/sks build dump/*.gpg -n 10 -cache 100 || true #*/
|
${sksPkg}/bin/sks build dump/*.gpg -n 10 -cache 100 || true #*/
|
||||||
${sksPkg}/bin/sks cleandb || true
|
${sksPkg}/bin/sks cleandb || true
|
||||||
${sksPkg}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
|
${sksPkg}/bin/sks pbuild -cache 20 -ptree_cache 70 || true
|
||||||
|
|
Loading…
Reference in a new issue