diff --git a/hosts/manatee/modules/komga/default.nix b/hosts/manatee/modules/komga/default.nix index 1ce064d..11023aa 100644 --- a/hosts/manatee/modules/komga/default.nix +++ b/hosts/manatee/modules/komga/default.nix @@ -114,6 +114,12 @@ in libraryId = "0PNE1NEPY6995"; }; + # `libraryRoot` is bind mounted into the service's own mount namespace when it + # starts, so starting before the ZFS dataset is mounted leaves it with an empty folder + systemd.services.komga-book-manager.unitConfig.RequiresMountsFor = [ + config.services.komga-book-manager.libraryRoot + ]; + services.komga-reading-stats = { enable = true; host = "0.0.0.0"; diff --git a/hosts/manatee/modules/navidrome/default.nix b/hosts/manatee/modules/navidrome/default.nix index 158341b..19b59e9 100644 --- a/hosts/manatee/modules/navidrome/default.nix +++ b/hosts/manatee/modules/navidrome/default.nix @@ -37,5 +37,11 @@ in }; }; }; + + # `MusicFolder` is bind mounted into the service's own mount namespace when it + # starts, so starting before the ZFS dataset is mounted leaves it with an empty folder + systemd.services.navidrome = lib.mkIf navidromeEnabled { + unitConfig.RequiresMountsFor = [ config.services.navidrome.settings.MusicFolder ]; + }; }; } diff --git a/hosts/manatee/modules/transmission/default.nix b/hosts/manatee/modules/transmission/default.nix index 28ab0d4..d3570e9 100644 --- a/hosts/manatee/modules/transmission/default.nix +++ b/hosts/manatee/modules/transmission/default.nix @@ -52,5 +52,12 @@ in }; }; }; + + # Both paths are bind mounted into the service's own mount namespace when it + # starts, so starting before the ZFS dataset is mounted writes to the root disk + systemd.services.transmission.unitConfig.RequiresMountsFor = [ + config.services.transmission.home + config.services.transmission.settings.download-dir + ]; }; }