nixos/kubo: unmount on service stop
When kubo is force killed with `pkill -KILL ipfs` or by systemd-oomd, it doesn't unmount /ipfs and /ipns. That prevents it from starting up the next time. So, unmount on postStop.
This commit is contained in:
parent
28949db47e
commit
4bd622cd9d
2 changed files with 6 additions and 0 deletions
|
@ -332,6 +332,8 @@ In addition to numerous new and upgraded packages, this release has the followin
|
||||||
[headscale's example configuration](https://github.com/juanfont/headscale/blob/main/config-example.yaml)
|
[headscale's example configuration](https://github.com/juanfont/headscale/blob/main/config-example.yaml)
|
||||||
can be directly written as attribute-set in Nix within this option.
|
can be directly written as attribute-set in Nix within this option.
|
||||||
|
|
||||||
|
- `services.kubo` unmounts `ipfsMountDir` and `ipnsMountDir` even if it is killed uncleanly, when 'autoMount` is enabled.
|
||||||
|
|
||||||
- `nixos/lib/make-disk-image.nix` can now mutate EFI variables, run user-provided EFI firmware or variable templates. This is now extensively documented in the NixOS manual.
|
- `nixos/lib/make-disk-image.nix` can now mutate EFI variables, run user-provided EFI firmware or variable templates. This is now extensively documented in the NixOS manual.
|
||||||
|
|
||||||
- `services.grafana` listens only on localhost by default again. This was changed to upstreams default of `0.0.0.0` by accident in the freeform setting conversion.
|
- `services.grafana` listens only on localhost by default again. This was changed to upstreams default of `0.0.0.0` by accident in the freeform setting conversion.
|
||||||
|
|
|
@ -319,6 +319,10 @@ in
|
||||||
# change when the changes are applied. Whyyyyyy.....
|
# change when the changes are applied. Whyyyyyy.....
|
||||||
ipfs --offline config replace -
|
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
|
||||||
|
'';
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${kuboFlags}" ];
|
ExecStart = [ "" "${cfg.package}/bin/ipfs daemon ${kuboFlags}" ];
|
||||||
User = cfg.user;
|
User = cfg.user;
|
||||||
|
|
Loading…
Reference in a new issue