diff --git a/nixos/modules/services/network-filesystems/ipfs.nix b/nixos/modules/services/network-filesystems/ipfs.nix index 7c376207db4..a5f514974f2 100644 --- a/nixos/modules/services/network-filesystems/ipfs.nix +++ b/nixos/modules/services/network-filesystems/ipfs.nix @@ -249,12 +249,13 @@ in { # Note the upstream service assumes default host / port # we should override it when a custom is provided above. - systemd.sockets.ipfs-gateway = mkIf cfg.startWhenNeeded { + systemd.sockets.ipfs-gateway = { wantedBy = [ "sockets.target" ]; }; - systemd.sockets.ipfs-api = mkIf cfg.startWhenNeeded { + systemd.sockets.ipfs-api = { wantedBy = [ "sockets.target" ]; + socketConfig.ListenStream = [ "%t/ipfs.sock" ]; }; }; diff --git a/nixos/tests/ipfs.nix b/nixos/tests/ipfs.nix index 4d721aec0c7..82234f96922 100644 --- a/nixos/tests/ipfs.nix +++ b/nixos/tests/ipfs.nix @@ -21,5 +21,12 @@ import ./make-test-python.nix ({ pkgs, ...} : { ) machine.succeed(f"ipfs cat /ipfs/{ipfs_hash.strip()} | grep fnord") + + ipfs_hash = machine.succeed( + "echo fnord2 | ipfs --api /unix/run/ipfs.sock add | awk '{ print $2 }'" + ) + machine.succeed( + f"ipfs --api /unix/run/ipfs.sock cat /ipfs/{ipfs_hash.strip()} | grep fnord2" + ) ''; })