Agent Diagnostic
- Checked existing GitHub issues and did not find a duplicate for the RPM/Podman/Docker dependency conflict.
- Inspected the current RPM and installer paths:
openshell.spec makes Podman a weak dependency for the base openshell package with Recommends: podman.
openshell.spec makes Podman a hard dependency for the openshell-gateway subpackage with Requires: podman.
- The RPM user unit has
After=podman.socket and Wants=podman.socket.
deploy/rpm/gateway.toml.default seeds compute_drivers = ["podman"].
install.sh downloads and installs both openshell and openshell-gateway RPMs, then starts the user gateway.
- Conclusion: the RPM install path currently assumes Podman even when the host already has Docker available.
Description
Actual behavior: Installing openshell-gateway v0.0.68 via RPM on a Rocky 8 host that already uses Docker fails during dependency resolution because the gateway RPM declares a hard dependency on Podman.
The observed failure is:
package openshell-gateway-0.0.68-1.fc44.x86_64 requires podman, but none of the providers can be installed
Podman pulls in runc, which conflicts with the containerd.io package provided by Docker's docker-ce-stable repo. This blocks installation on hosts where Docker is already the standard container runtime.
Expected behavior: The RPM gateway package should be installable on hosts that already have Docker available. Podman should not be required at package install time.
If the selected runtime is unavailable or misconfigured, OpenShell should fail clearly at gateway startup or sandbox creation time, not during package-manager dependency resolution.
Reproduction Steps
- Start from a Rocky Linux 8 host configured with Docker from
docker-ce-stable.
- Install OpenShell v0.0.68 through the RPM/package-manager path.
- Observe that
dnf attempts to install openshell-gateway and solve Requires: podman.
- Observe dependency resolution failure because Podman/runc conflicts with Docker-provided
containerd.io.
Environment
- OS: Rocky Linux 8
- Existing runtime: Docker
- OpenShell: v0.0.68
- Install method: RPM/package-manager path via
install.sh
- Reporter: Eric Busto, reported 2026-06-23
- Workaround confirmed: manual tarball install from https://gist.github.com/pimlock/1bbd1d8970318d7b0053e164392c95de, confirmed working on a Rocky 8 test VM on 2026-06-25
Logs
root@pdx4-sim-n32-016 log]# curl -LsSf https://raw.githubusercontent.com/NVIDIA/OpenShell/main/install.sh | sh
openshell: resolving latest version...
openshell: downloading v0.0.68 release checksums...
awk: warning: escape sequence `\.' treated as plain `.'
awk: warning: escape sequence `\.' treated as plain `.'
openshell: selected openshell-0.0.68-1.fc44.x86_64.rpm and openshell-gateway-0.0.68-1.fc44.x86_64.rpm
openshell: downloading openshell-0.0.68-1.fc44.x86_64.rpm...
openshell: verifying checksum for openshell-0.0.68-1.fc44.x86_64.rpm...
openshell: downloading openshell-gateway-0.0.68-1.fc44.x86_64.rpm...
openshell: verifying checksum for openshell-gateway-0.0.68-1.fc44.x86_64.rpm...
openshell: installing openshell-0.0.68-1.fc44.x86_64.rpm and openshell-gateway-0.0.68-1.fc44.x86_64.rpm...
Last metadata expiration check: 17:47:33 ago on Mon 22 Jun 2026 06:04:39 PM PDT.
Error:
Problem: package openshell-gateway-0.0.68-1.fc44.x86_64 from @commandline requires podman, but none of the providers can be installed
- package podman-4:4.9.4-4.module+el8.10.0+1833+b6e0f287.x86_64 from appstream requires runc >= 1.0.0-57, but none of the providers can be installed
...
- package containerd.io-1.3.7-3.1.el8.x86_64 from docker-ce-stable conflicts with runc provided by runc-1:1.1.12-1.module+el8.10.0+1815+5fe7415e.x86_64 from appstream
...
Proposed Fix
Make the RPM/package-manager path support Docker hosts without requiring Podman.
Likely implementation pieces:
- Change
openshell-gateway RPM metadata so Podman is not a hard Requires.
- Add an install-script option or environment variable to select the intended local runtime, for example Docker vs Podman.
- When Docker is selected, seed gateway config with Docker defaults instead of
compute_drivers = ["podman"].
- Revisit
After=podman.socket and Wants=podman.socket in the RPM user unit so the service does not implicitly depend on Podman when Docker is selected.
- Update the RPM default-config test and docs to cover Docker-host package installs.
Agent-First Checklist
Agent Diagnostic
openshell.specmakes Podman a weak dependency for the baseopenshellpackage withRecommends: podman.openshell.specmakes Podman a hard dependency for theopenshell-gatewaysubpackage withRequires: podman.After=podman.socketandWants=podman.socket.deploy/rpm/gateway.toml.defaultseedscompute_drivers = ["podman"].install.shdownloads and installs bothopenshellandopenshell-gatewayRPMs, then starts the user gateway.Description
Actual behavior: Installing
openshell-gatewayv0.0.68 via RPM on a Rocky 8 host that already uses Docker fails during dependency resolution because the gateway RPM declares a hard dependency on Podman.The observed failure is:
Podman pulls in
runc, which conflicts with thecontainerd.iopackage provided by Docker'sdocker-ce-stablerepo. This blocks installation on hosts where Docker is already the standard container runtime.Expected behavior: The RPM gateway package should be installable on hosts that already have Docker available. Podman should not be required at package install time.
If the selected runtime is unavailable or misconfigured, OpenShell should fail clearly at gateway startup or sandbox creation time, not during package-manager dependency resolution.
Reproduction Steps
docker-ce-stable.dnfattempts to installopenshell-gatewayand solveRequires: podman.containerd.io.Environment
install.shLogs
Proposed Fix
Make the RPM/package-manager path support Docker hosts without requiring Podman.
Likely implementation pieces:
openshell-gatewayRPM metadata so Podman is not a hardRequires.compute_drivers = ["podman"].After=podman.socketandWants=podman.socketin the RPM user unit so the service does not implicitly depend on Podman when Docker is selected.Agent-First Checklist