#!/bin/bash # ============================================================================= # packages/passt/passt.SlackBuild # # Builds the passt/pasta .txz package from upstream source (C, plain # Makefile — no autotools). passt is Podman's modern unprivileged # user-mode network transport for rootless containers, superseding # slirp4netns (see versions.env for why this project pins it via a git # commit snapshot rather than a tagged release: upstream has no GitHub # mirror and does not use semver tags). # # Requires (in the build environment): gcc, make. No external library # dependencies beyond libc — passt deliberately avoids them. # ============================================================================= set -eu REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" # shellcheck source=/dev/null . "$REPO_ROOT/scripts/lib/slackbuild-common.sh" # shellcheck source=/dev/null . "$REPO_ROOT/versions.env" VERSION="$PASST_VERSION" ARCH="$PKG_ARCH" BUILD="$PKG_BUILD" TAG="$PKG_TAG" sb_init "passt" tarball=$(sb_fetch_and_verify "$PASST_SRC_URL" "$PASST_SRC_SHA256" "passt-$PASST_COMMIT.tar.gz") srcdir=$(sb_extract "$tarball") for patch in "$CWD"/patches/*.patch; do [ -e "$patch" ] || continue echo "==> [passt] applying $(basename "$patch")" patch -d "$srcdir" -p1 < "$patch" done cd "$srcdir" echo "==> [passt] make" make echo "==> [passt] make install into \$PKG" make install prefix=/usr DESTDIR="$PKG" sb_install_docs "$srcdir/LICENSES/GPL-2.0-or-later.txt" "$srcdir/README.md" sb_make_package "$VERSION" "$ARCH" "$BUILD" "$TAG"