Summary
NemoClaw currently hard-rejects Podman at onboarding with a fatal exit, preventing deployment on Fedora and RHEL systems where Podman is the default (and often only) container runtime. This blocks running NemoClaw sandboxes inside OpenShell VMs provisioned on OpenShift Virtualization, which use Fedora Cloud images with Podman pre-installed.
Current behavior
src/lib/onboard/fatal-runtime-preflight.ts calls rejectUnsupportedContainerRuntime() which checks host.runtime === "podman" and exits with code 1
- Error message: "Podman is not supported for this integration path. Switch to Docker Engine, Docker Desktop, or Colima."
- The Docker adapter in
src/lib/adapters/docker/run.ts hardcodes the "docker" binary name
- Socket paths are hardcoded to
/var/run/docker.sock in multiple files (docker-driver-gateway-compat.ts, vllm-storage.ts)
- The install script (
scripts/install.sh) assumes docker group membership
Requested behavior
Support Podman as a first-class (or at minimum, compatible) container runtime:
- Remove the fatal Podman rejection in
fatal-runtime-preflight.ts — or downgrade it to an advisory warning (one already exists in src/lib/advisories/checks/host/runtime.ts)
- Abstract the container runtime binary — use
podman when detected instead of hardcoded "docker" in the adapter layer. Podman's CLI is Docker-compatible by design
- Support Podman socket paths —
$XDG_RUNTIME_DIR/podman/podman.sock for rootless, /run/podman/podman.sock for rootful (some awareness already exists in src/lib/actions/dns/index.ts)
- Handle rootless mode — Podman rootless doesn't use a
docker group; permission checks need adjustment
Why this matters
- Fedora and RHEL ship Podman as the default container runtime and don't include Docker
- OpenShift Virtualization provisions Fedora Cloud VMs for OpenShell sandboxes — installing Docker inside these VMs adds unnecessary complexity and conflicts with the existing Podman installation
- Podman's Docker-compatible CLI and OCI compliance should make this largely a configuration change rather than an architectural one
Related
This may be related to the previously closed issue #420 (Podman tracking). The platform support docs list Podman as explicitly unsupported and non-Ubuntu distros as unsupported due to the apt-get assumption in the installer.
Summary
NemoClaw currently hard-rejects Podman at onboarding with a fatal exit, preventing deployment on Fedora and RHEL systems where Podman is the default (and often only) container runtime. This blocks running NemoClaw sandboxes inside OpenShell VMs provisioned on OpenShift Virtualization, which use Fedora Cloud images with Podman pre-installed.
Current behavior
src/lib/onboard/fatal-runtime-preflight.tscallsrejectUnsupportedContainerRuntime()which checkshost.runtime === "podman"and exits with code 1src/lib/adapters/docker/run.tshardcodes the"docker"binary name/var/run/docker.sockin multiple files (docker-driver-gateway-compat.ts,vllm-storage.ts)scripts/install.sh) assumesdockergroup membershipRequested behavior
Support Podman as a first-class (or at minimum, compatible) container runtime:
fatal-runtime-preflight.ts— or downgrade it to an advisory warning (one already exists insrc/lib/advisories/checks/host/runtime.ts)podmanwhen detected instead of hardcoded"docker"in the adapter layer. Podman's CLI is Docker-compatible by design$XDG_RUNTIME_DIR/podman/podman.sockfor rootless,/run/podman/podman.sockfor rootful (some awareness already exists insrc/lib/actions/dns/index.ts)dockergroup; permission checks need adjustmentWhy this matters
Related
This may be related to the previously closed issue #420 (Podman tracking). The platform support docs list Podman as explicitly unsupported and non-Ubuntu distros as unsupported due to the
apt-getassumption in the installer.