Replace vendored docker-compose with podman-compose
podman-compose and docker-compose aren't discovered the same way by `podman compose` - verified live (a fake-binary test reading podman's own provider-search error output) that docker-compose is searched for by exact path across a fixed list of CLI-plugin directories, while podman-compose is instead looked up as a plain command on $PATH. This package installs to /usr/local/bin/podman-compose accordingly, not under any cli-plugins/ directory. Unlike docker-compose (a single static Go binary), podman-compose is a Python script with two runtime dependencies neither of which ship with Unraid's own Python3 - PyYAML and python-dotenv, vendored here as plain pure-Python source (no C extension build; PyYAML's own fallback handles its optional C accelerator being absent). Verified end-to-end on a real host: with the previous docker-compose binary temporarily moved aside to confirm podman-compose was actually the one invoked, `podman compose up/ps/down` ran a real compose project correctly, including a live HTTP check against the started service. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
#
|
||||
# Orchestrates building all Slackware .txz packages this plugin ships
|
||||
# (podman, conmon, crun, netavark, aardvark-dns, passt, fuse-overlayfs,
|
||||
# catatonit, nftables, docker-compose), by running each package's
|
||||
# catatonit, nftables, podman-compose), by running each package's
|
||||
# <name>.SlackBuild in turn. See docs/ARCHITECTURE.md section 5.2
|
||||
# (Build-Strategie).
|
||||
#
|
||||
@@ -38,12 +38,14 @@ DIST_DIR="$REPO_ROOT/dist"
|
||||
# see packages/unraid-podman/README.md) is built last since it's by far the
|
||||
# fastest and has nothing useful to report on failure that earlier package
|
||||
# failures wouldn't already explain.
|
||||
ALL_PACKAGES=(catatonit nftables docker-compose conmon crun netavark aardvark-dns passt fuse-overlayfs podman unraid-podman)
|
||||
ALL_PACKAGES=(catatonit nftables podman-compose conmon crun netavark aardvark-dns passt fuse-overlayfs podman unraid-podman)
|
||||
|
||||
# catatonit, nftables, and docker-compose are listed first since they're
|
||||
# all a plain fetch-and-repackage of an already-built upstream artifact
|
||||
# (see their own README.md for why) — no compiler, fastest possible
|
||||
# signal if their pinned URL/checksum in versions.env ever goes stale.
|
||||
# catatonit, nftables, and podman-compose are listed first since none of
|
||||
# them involve a compiler — catatonit/nftables are a plain
|
||||
# fetch-and-repackage of an already-built upstream artifact, and
|
||||
# podman-compose is vendored pure-Python source with nothing to compile
|
||||
# (see their own README.md/SlackBuild for why) — fastest possible signal
|
||||
# if a pinned URL/checksum in versions.env ever goes stale.
|
||||
# Podman is listed second-to-last on purpose: among the compiled
|
||||
# components it is the slowest build and the one most likely to fail on
|
||||
# a dependency/tag mistake, so faster packages surface problems first
|
||||
|
||||
Reference in New Issue
Block a user