mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-12-08 23:03:46 +00:00
105 lines
3.8 KiB
Bash
105 lines
3.8 KiB
Bash
# $Id$
|
|
# Maintainer: Sébastien "Seblu" Luttringer
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
|
|
pkgname=docker
|
|
pkgver=1.12.3
|
|
pkgrel=1
|
|
epoch=1
|
|
pkgdesc='Pack, ship and run any application as a lightweight container'
|
|
arch=('x86_64')
|
|
url='https://www.docker.com/'
|
|
license=('Apache')
|
|
depends=('bridge-utils' 'iproute2' 'device-mapper' 'sqlite' 'systemd' 'libseccomp')
|
|
makedepends=('git' 'go' 'btrfs-progs' 'go-md2man')
|
|
optdepends=('btrfs-progs: btrfs backend support'
|
|
'lxc: lxc backend support')
|
|
# don't strip binaries! A sha1 is used to check binary consistency.
|
|
options=('!strip')
|
|
install=$pkgname.install
|
|
# Use exact commit version from Dockerfile for runc and containerd until 1.0.0
|
|
# https://github.com/docker/containerd/issues/299#issuecomment-240745119
|
|
source=("git+https://github.com/docker/docker.git#tag=v$pkgver"
|
|
'git+https://github.com/opencontainers/runc.git#commit=cc29e3dded8e27ba8f65738f40d251c885030a28'
|
|
'git+https://github.com/docker/containerd.git#commit=0ac3cd1be170d180b2baed755e8f0da547ceb267'
|
|
"$pkgname.sysusers")
|
|
md5sums=('SKIP'
|
|
'SKIP'
|
|
'SKIP'
|
|
'8cf9900ebada61f352a03465a088da34')
|
|
|
|
prepare() {
|
|
cd docker
|
|
# apply patch from the source array (should be a pacman feature)
|
|
local filename
|
|
for filename in "${source[@]}"; do
|
|
if [[ "$filename" =~ \.patch$ ]]; then
|
|
msg2 "Applying patch $filename"
|
|
patch -p1 -N -i "$srcdir/$filename"
|
|
fi
|
|
done
|
|
:
|
|
}
|
|
|
|
build() {
|
|
export GOPATH="$srcdir"
|
|
|
|
# runc
|
|
msg2 'Building runc'
|
|
mkdir -p src/github.com/opencontainers
|
|
ln -rsf "$srcdir/runc" src/github.com/opencontainers/runc
|
|
cd src/github.com/opencontainers/runc
|
|
make BUILDTAGS='seccomp'
|
|
|
|
# containerd
|
|
msg2 'Building containerd'
|
|
cd "$srcdir"
|
|
mkdir -p src/github.com/docker
|
|
ln -rsf containerd src/github.com/docker
|
|
cd src/github.com/docker/containerd
|
|
LDFLAGS= make
|
|
|
|
# docker
|
|
msg2 'Building docker'
|
|
cd "$srcdir"/docker
|
|
export AUTO_GOPATH=1 DOCKER_BUILDTAGS='seccomp'
|
|
hack/make.sh dynbinary
|
|
# man pages
|
|
man/md2man-all.sh 2>/dev/null
|
|
}
|
|
|
|
#check() {
|
|
# cd docker
|
|
# ./hack/make.sh dyntest
|
|
#}
|
|
|
|
package() {
|
|
# runc & containerd
|
|
install -Dm755 containerd/bin/containerd "$pkgdir/usr/bin/docker-containerd"
|
|
install -Dm755 containerd/bin/containerd-shim "$pkgdir/usr/bin/docker-containerd-shim"
|
|
install -Dm755 containerd/bin/ctr "$pkgdir/usr/bin/docker-containerd-ctr"
|
|
install -Dm755 runc/runc "$pkgdir/usr/bin/docker-runc"
|
|
# docker binary
|
|
cd docker
|
|
install -Dm755 "bundles/$pkgver/dynbinary-client/docker-$pkgver" "$pkgdir/usr/bin/docker"
|
|
install -Dm755 "bundles/$pkgver/dynbinary-daemon/docker-proxy-$pkgver" "$pkgdir/usr/bin/docker-proxy"
|
|
install -Dm755 "bundles/$pkgver/dynbinary-daemon/dockerd-$pkgver" "$pkgdir/usr/bin/dockerd"
|
|
# completion
|
|
install -Dm644 'contrib/completion/bash/docker' "$pkgdir/usr/share/bash-completion/completions/docker"
|
|
install -Dm644 'contrib/completion/zsh/_docker' "$pkgdir/usr/share/zsh/site-functions/_docker"
|
|
install -Dm644 'contrib/completion/fish/docker.fish' "$pkgdir/usr/share/fish/vendor_completions.d/docker.fish"
|
|
# systemd
|
|
install -Dm644 'contrib/init/systemd/docker.service' "$pkgdir/usr/lib/systemd/system/docker.service"
|
|
install -Dm644 'contrib/init/systemd/docker.socket' "$pkgdir/usr/lib/systemd/system/docker.socket"
|
|
install -Dm644 'contrib/udev/80-docker.rules' "$pkgdir/usr/lib/udev/rules.d/80-docker.rules"
|
|
install -Dm644 "$srcdir/$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
|
|
# vim syntax
|
|
install -Dm644 'contrib/syntax/vim/syntax/dockerfile.vim' "$pkgdir/usr/share/vim/vimfiles/syntax/dockerfile.vim"
|
|
install -Dm644 'contrib/syntax/vim/ftdetect/dockerfile.vim' "$pkgdir/usr/share/vim/vimfiles/ftdetect/dockerfile.vim"
|
|
# man
|
|
install -dm755 "$pkgdir/usr/share/man"
|
|
mv man/man* "$pkgdir/usr/share/man"
|
|
}
|
|
|
|
# vim:set ts=2 sw=2 et:
|