diff --git a/hosts/library/default.nix b/hosts/library/default.nix index 47e2e74..5db69f3 100644 --- a/hosts/library/default.nix +++ b/hosts/library/default.nix @@ -74,6 +74,23 @@ with lib.my; wantedBy = [ "default.target" ]; }; + systemd.services.init-container-networking = { + description = "Create a network bridge for containers on this host"; + after = [ "network.target" ]; + wantedBy = [ "default.target" ]; + + serviceConfig.type = "oneshot"; + script = let podmancli = "${pkgs.podman}/bin/podman"; + in '' + check=$(${podmancli} network ls | grep "library-br" || true) + if [ -z "$check" ]; then + ${podmancli} network create library-br + else + echo "library-br already exists" + fi + ''; + }; + virtualisation.podman = { enable = true; extraPackages = [ pkgs.zfs ]; @@ -117,6 +134,7 @@ with lib.my; ]; extraOptions = [ "--label=io.containers.autoupdate=registry" + "--network=library-br" ]; dependsOn = [ "jellyfin" ]; }; @@ -134,6 +152,7 @@ with lib.my; ]; extraOptions = [ "--label=io.containers.autoupdate=registry" + "--network=library-br" ]; }; radarr = { @@ -147,6 +166,7 @@ with lib.my; extraOptions = [ "--label=io.containers.autoupdate=registry" "--mount=type=bind,source=/mnt/library/movies,target=/movies" + "--network=library-br" ]; dependsOn = [ "qbittorrent" ]; }; @@ -161,6 +181,7 @@ with lib.my; extraOptions = [ "--label=io.containers.autoupdate=registry" "--mount=type=bind,source=/mnt/library/tv,target=/tv" + "--network=library-br" ]; dependsOn = [ "qbittorrent" ]; };