Merge pull request #274570 from Luflosi/kubo-more-RFC42
nixos/kubo: convert two settings to RFC42-style settings
This commit is contained in:
commit
54a4f96cfc
@ -147,18 +147,6 @@ in
|
||||
description = lib.mdDoc "Whether Kubo should try to run the fs-repo-migration at startup.";
|
||||
};
|
||||
|
||||
ipfsMountDir = mkOption {
|
||||
type = types.str;
|
||||
default = "/ipfs";
|
||||
description = lib.mdDoc "Where to mount the IPFS namespace to";
|
||||
};
|
||||
|
||||
ipnsMountDir = mkOption {
|
||||
type = types.str;
|
||||
default = "/ipns";
|
||||
description = lib.mdDoc "Where to mount the IPNS namespace to";
|
||||
};
|
||||
|
||||
enableGC = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
@ -205,6 +193,18 @@ in
|
||||
];
|
||||
description = lib.mdDoc "Where Kubo listens for incoming p2p connections";
|
||||
};
|
||||
|
||||
Mounts.IPFS = mkOption {
|
||||
type = types.str;
|
||||
default = "/ipfs";
|
||||
description = lib.mdDoc "Where to mount the IPFS namespace to";
|
||||
};
|
||||
|
||||
Mounts.IPNS = mkOption {
|
||||
type = types.str;
|
||||
default = "/ipns";
|
||||
description = lib.mdDoc "Where to mount the IPNS namespace to";
|
||||
};
|
||||
};
|
||||
};
|
||||
description = lib.mdDoc ''
|
||||
@ -309,8 +309,8 @@ in
|
||||
systemd.tmpfiles.rules = [
|
||||
"d '${cfg.dataDir}' - ${cfg.user} ${cfg.group} - -"
|
||||
] ++ optionals cfg.autoMount [
|
||||
"d '${cfg.ipfsMountDir}' - ${cfg.user} ${cfg.group} - -"
|
||||
"d '${cfg.ipnsMountDir}' - ${cfg.user} ${cfg.group} - -"
|
||||
"d '${cfg.settings.Mounts.IPFS}' - ${cfg.user} ${cfg.group} - -"
|
||||
"d '${cfg.settings.Mounts.IPNS}' - ${cfg.user} ${cfg.group} - -"
|
||||
];
|
||||
|
||||
# The hardened systemd unit breaks the fuse-mount function according to documentation in the unit file itself
|
||||
@ -320,8 +320,6 @@ in
|
||||
|
||||
services.kubo.settings = mkIf cfg.autoMount {
|
||||
Mounts.FuseAllowOther = lib.mkDefault true;
|
||||
Mounts.IPFS = lib.mkDefault cfg.ipfsMountDir;
|
||||
Mounts.IPNS = lib.mkDefault cfg.ipnsMountDir;
|
||||
};
|
||||
|
||||
systemd.services.ipfs = {
|
||||
@ -352,8 +350,8 @@ in
|
||||
ipfs --offline config replace -
|
||||
'';
|
||||
postStop = mkIf cfg.autoMount ''
|
||||
# After an unclean shutdown the fuse mounts at cfg.ipnsMountDir and cfg.ipfsMountDir are locked
|
||||
umount --quiet '${cfg.ipnsMountDir}' '${cfg.ipfsMountDir}' || true
|
||||
# After an unclean shutdown the fuse mounts at cfg.settings.Mounts.IPFS and cfg.settings.Mounts.IPNS are locked
|
||||
umount --quiet '${cfg.settings.Mounts.IPFS}' '${cfg.settings.Mounts.IPNS}' || true
|
||||
'';
|
||||
serviceConfig = {
|
||||
ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${kuboFlags}" ];
|
||||
@ -405,8 +403,8 @@ in
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "defaultMode" ] [ "services" "kubo" "defaultMode" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "autoMount" ] [ "services" "kubo" "autoMount" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "autoMigrate" ] [ "services" "kubo" "autoMigrate" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "ipfsMountDir" ] [ "services" "kubo" "ipfsMountDir" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "ipnsMountDir" ] [ "services" "kubo" "ipnsMountDir" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "ipfsMountDir" ] [ "services" "kubo" "settings" "Mounts" "IPFS" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "ipnsMountDir" ] [ "services" "kubo" "settings" "Mounts" "IPNS" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "gatewayAddress" ] [ "services" "kubo" "settings" "Addresses" "Gateway" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "apiAddress" ] [ "services" "kubo" "settings" "Addresses" "API" ])
|
||||
(mkRenamedOptionModule [ "services" "ipfs" "swarmAddress" ] [ "services" "kubo" "settings" "Addresses" "Swarm" ])
|
||||
@ -421,5 +419,7 @@ in
|
||||
(mkRenamedOptionModule [ "services" "kubo" "gatewayAddress" ] [ "services" "kubo" "settings" "Addresses" "Gateway" ])
|
||||
(mkRenamedOptionModule [ "services" "kubo" "apiAddress" ] [ "services" "kubo" "settings" "Addresses" "API" ])
|
||||
(mkRenamedOptionModule [ "services" "kubo" "swarmAddress" ] [ "services" "kubo" "settings" "Addresses" "Swarm" ])
|
||||
(mkRenamedOptionModule [ "services" "kubo" "ipfsMountDir" ] [ "services" "kubo" "settings" "Mounts" "IPFS" ])
|
||||
(mkRenamedOptionModule [ "services" "kubo" "ipnsMountDir" ] [ "services" "kubo" "settings" "Mounts" "IPNS" ])
|
||||
];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user