Files
binary-repo/app/containers/docker/ympbuild
T
2025-09-11 19:48:46 +00:00

87 lines
2.7 KiB
Bash
Executable File

#!/usr/bin/env bash
name='docker'
release='4'
version='28.4.0'
url='https://docker.io'
description='Pack, ship and run any application as a lightweight container'
email='aliriza.keskin@pardus.org.tr'
maintainer='aliriza'
license=('GPLv3')
source=("cli.tar.gz::https://github.com/docker/cli/archive/v$version.tar.gz"
"moby.tar.gz::https://github.com/moby/moby/archive/v$version.tar.gz"
'docker.initd'
'docker.confd')
depends=(make-ca containerd iptables tini)
makedepends=(go)
sha256sums=('420f9caf3ba09229cd98f7f8325fb9969d0746cccf4bdc3c56dfe2621bb07803'
'4aa0776ef3c040204cada69f3d4d7b89a3cef85e07cbe098c05cdcb000ea7e30'
'SKIP'
'SKIP')
group=(app.containers)
uses=()
arch=('x86_64')
# Thx alpine linux
# https://git.alpinelinux.org/aports/tree/community/docker/APKBUILD
_cli_commit=d8eb465f86cfceeb57f8582e373d41a558d35503 # https://github.com/docker/cli/commits/v$pkgver
_moby_commit=249d679a6baf8a32bb6d72d6ac5cc7ab9c90b4ea # https://github.com/moby/moby/commits/v$pkgver
export AUTO_GOPATH=1
export GITCOMMIT=$_cli_commit # for cli
export DOCKER_GITCOMMIT=$_moby_commit # for moby
export DOCKER_BUILDTAGS=$_buildtags
export DISABLE_WARN_OUTSIDE_CONTAINER=1
export EXCLUDE_AUTO_BUILDTAG_JOURNALD=1
unset CC # prevent possible ccache issues
_cli_builddir="$HOME/cli-$version"
_moby_builddir="$HOME/moby-$version"
unset PREFIX
build () {
# engine (moby)
cd moby-$version
mkdir -p src/github.com/docker/
ln -sf "$HOME/moby-$version" src/github.com/docker/dockerd
GO_BUILDTAGS="" GOPATH="$PWD" VERSION="$pkgver" hack/make.sh dynbinary
# Required for building man-pages
export GOPATH="$_cli_builddir"
export GOBIN="$GOPATH/bin"
export PATH="$GOBIN:$PATH"
# cli
cd ../cli-$version
mkdir -p "$_cli_builddir"/src/github.com/docker/
ln -sf "$_cli_builddir" "$_cli_builddir"/src/github.com/docker/cli
GO_BUILDTAGS="" LDFLAGS="" make VERSION="$pkgver" dynbinary
}
package () {
install -Dm644 "$_cli_builddir"/contrib/completion/fish/$name.fish \
"$DESTDIR"/usr/share/fish/vendor_completions.d/$name.fish
install -Dm644 "$_cli_builddir"/contrib/completion/zsh/_$name \
"$DESTDIR"/usr/share/zsh/site-functions/_$name
install -Dm644 "$_cli_builddir"/contrib/completion/bash/$name \
"$DESTDIR"/usr/share/bash-completion/completions/$name
# 'build/docker' is a symlink to 'docker-linux-$arch' e.g. 'docker-linux-amd64'
install -Dm755 "$_cli_builddir"/build/docker \
"$DESTDIR"/usr/bin/docker
install -Dm755 -t "$DESTDIR"/usr/bin \
"$_moby_builddir"/bundles/dynbinary-daemon/dockerd \
"$_moby_builddir"/bundles/dynbinary-daemon/docker-proxy
# service files from gentoo
install -Dm755 docker.initd "$DESTDIR"/etc/init.d/docker
install -Dm644 docker.confd "$DESTDIR"/etc/conf.d/docker
}