Version bump, grabbed from tianon's docker overlay. Fixes #547316
authorKacper Kowalik <xarthisius@gentoo.org>
Tue, 28 Apr 2015 20:50:14 +0000 (20:50 +0000)
committerKacper Kowalik <xarthisius@gentoo.org>
Tue, 28 Apr 2015 20:50:14 +0000 (20:50 +0000)
Package-Manager: portage-2.2.17/cvs/Linux x86_64
Manifest-Sign-Key: 0x5D21B852895192F9

app-emulation/docker/ChangeLog
app-emulation/docker/Manifest
app-emulation/docker/docker-1.6.0.ebuild [new file with mode: 0644]

index f998fbf238adffc4d7f46d9e1798ae1d78c0b37e..273c4393aed7b1d30868b4037c9ebeab3712632b 100644 (file)
@@ -1,6 +1,11 @@
 # ChangeLog for app-emulation/docker
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/docker/ChangeLog,v 1.41 2015/03/14 02:47:43 xarthisius Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/docker/ChangeLog,v 1.42 2015/04/28 20:50:02 xarthisius Exp $
+
+*docker-1.6.0 (28 Apr 2015)
+
+  28 Apr 2015; Kacper Kowalik <xarthisius@gentoo.org> +docker-1.6.0.ebuild:
+  Version bump, grabbed from tianon's docker overlay. Fixes #547316
 
   14 Mar 2015; Kacper Kowalik <xarthisius@gentoo.org> docker-1.5.0.ebuild:
   Check if CPUSETS are enabled in kernel wrt bug #536546 by Dirk Best <mail
index 5167277d8ae0bce5c26427fc709381ba56d60a2f..23e896b2bfd6e1b4eefa952e83d11fa233370cec 100644 (file)
@@ -5,23 +5,25 @@ AUX docker-r2.confd 581 SHA256 94e1c07b09701f3b0b1c4f6f917206da3b32f8d7e961c3850
 AUX docker-r2.initd 1767 SHA256 0cb83137cf3d37aadf450dd30ec9e0ceca3d865867f7fe64a43a1d5f42d2ecf8 SHA512 1250f8b16ded27877cf2759fca1d69f37ce308d4d5e5a29438210e847894617fa088260b0cfd87e1ee65ed26a4293d98c79462c1ccc93aac14203fbfed4b69a2 WHIRLPOOL 272f04feb587a0f91079f41ad90868f99c28a21a5ec35876f38dbbd342a53796dd4ec822fa2cd3506f22485b6a0147d24da2e7ab89da7875f84e3e9fab50c3c8
 AUX docker.service 249 SHA256 ddf23c8bd07303a87f7e76881b14c023c54835feba575998d6f5a9a7ec8a0a0a SHA512 d7564489486b3547cb79057fa44cb3eb0aa6c50ec47eca12579748170d62ab435395d173fdf39fcec8e86f4778db7413b7fa0ab85dbbd2fc1636164d4aad8b37 WHIRLPOOL 553f8a93a5d7cb6cc037a2004e19efa06520eba363e12574a5d251d10b23d9f24d1a023eb9915968a9bb661bddb577163948fb180a85ca9c916cac5c6680b1df
 DIST docker-1.5.0.tar.gz 6459415 SHA256 cf97a1b3a75a63d3b7cb743b5376a1b1bc00eac651dce9e3f094202901a43c48 SHA512 cc620570c67454bedfae73de86b722a845fce4b0bd46446d1190ae98917010db54fbf82951167ebf62358e53dedb45fff2a7f25014c79b42efc2a5f2b611b4d9 WHIRLPOOL acb62b6c1b354212cf250b60227c5dbedc7fe6c6e729fc887653b776a991cd13650c643e20abf06a4326412cb10a1b4e2a20bac0a1fbc056b8d2cf2d54d1fcd0
+DIST docker-1.6.0.tar.gz 5711975 SHA256 8ba01d3ae2c6db8532fef56dbbe16719baf4d08d66fa0f35550e98db6784df0e SHA512 c544818f61454c61e3459cec26363bd297b6852e7df0860417d68d64269820aa3a880a10f779e0ae5c541e4a59387aa54b0556e9b9c46d367061905c9532d10b WHIRLPOOL ae1b09b9f2c6034c860018ed5cc015606744e13790f563f4513631e83c13b9d300d8c11df213f3b3f792e956dd03b81d9445117dd0baf74380ab95b61e337c96
 EBUILD docker-1.5.0.ebuild 6822 SHA256 19f5e21476163342094b3de4571c6cb04e9cb5a6759cbcf7fa5b69055a34e977 SHA512 5629aa2ae6402a75fcd94278e1e107c6ce529db7764d8bfd3e9f4f656b0e59f3901769b9ca4126e2ce822d9b3b73cf217a39c7bd302b3b7f21288804525e611e WHIRLPOOL ddb1cdaff5c6393434b129df788e4df9062e43a22904dea89dfa72a68af889ec9071b062c97ae7bd758e111774afca181418e5e7c306b07efb1d6ba872cf115c
-MISC ChangeLog 6782 SHA256 978459139ff0fcce58615be18ee0a4b497e549dacd50b938379419858ba71364 SHA512 a6d25661a202379c3fad882e24f8d5a4696f4ba5941f309cf61c10396d0fe43fd4f857d172a731b150ac1f8533270fdc5bc9f91c96e7005f92eec85fa4965426 WHIRLPOOL c93f53b1389e5880f6dade143b98b4bbb43b877b0dd580e2e6c685f71fed18c048d847ef939fb2b99f20ebc719b3612e1a46e8caf76daf8d9028dc8f90caa8a8
+EBUILD docker-1.6.0.ebuild 7021 SHA256 ca2393df19d65434fd9abe81494ed91e52d6358afae6d2155261d6ff4b006206 SHA512 4488a7e15f1bbe2188d8f55879d8eae6ff6284f1ce92b0bf402ac8d2fe8b478dd7762c066cd94c241ac4068f028def34419f104838e418cc34f7be5a90b043dc WHIRLPOOL f125682fd949888dbcd9ed234a5e5799440fae4a60c8e49a2702feb0c930ab18b77a1dbfa4039b5a60c58bccf288e2e7fc5cf5a1273a4f9e0adf6ac95c304e36
+MISC ChangeLog 6956 SHA256 ba6bfff749cf67fc20f182a64db314814a9883d039c320a47173a3848521a903 SHA512 a82b8a5ce9c154eae93131cce9e3759d967928eab44a7075637ede094db96d5700c6f4146c6398675ef3c70a47b8d5e895e26874521fa9d501b68ee5a00cbba9 WHIRLPOOL 95df0350db34c95fff473c8e73a4893de759abe04406cbe76ce770342b01cc43ff84dcb3691f9b479b24954f1f0585d5184c101277118adb275715322fc1aeaf
 MISC metadata.xml 1404 SHA256 47b10fac828cc7c80f752c786452104d924bee553c0e6f95e8de5de585ef832d SHA512 e88b6183842f53cec880671f2c9785b1690917f4214f13f521747cc968f6be9cad0a5b09ca36705b69a168b8c4db4271f754c345f4042f5baccbd249e80eaed1 WHIRLPOOL 8c9dc0c496e788fed2fcffb826cbadbd8d4646fcfff5e807dc0946b360b15a833fbdb4d2bf45cd54e771d783ddd747f4ded575ee2e3e99998da774505e39e596
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQIcBAEBCAAGBQJVA6FTAAoJEF0huFKJUZL5ZzEP/08BIylLDoPABs522c1ZVxNu
-yQLln4ocMYZHEJED+k5Z6OYjmzRyKva9sFNVr80DUdMxkvCnqBY0u82FAP4LLnKM
-0jyuG3VHkSQa+3o/WqDL/optNTQUT8xTZA3+Ehpp//7+ZQzH5FEvkc8QptjZRmQK
-weM9AVoRwo0uJPs517I12uC+w5CGmKYiej7AYNJ2aoJ7/Hus4QzX5O0GAxPlP2Ub
-mPf5gRslyC7UX70p1zsP+4etEg7e6Rb2mVlNvCWn9Kg1q+xqH1L53tpmErpf/d93
-Fh0AqNBbAbQ38wMIvvdMdBgE7NtdU7ZCAsCj/yvQ8xd0a2z0oyjERIPeeRiYBFbz
-TT7Qwf0alqZ9Rba5HXKYSeVg+b+42eyeW4ZmFN7TdidgvC9raHz8Pz018x5AcJKt
-tu3Z+Nj8fNKL09sBxfaYzeIPvuLe5V2wYiSgit0iDjo1yU6kNIaLN5QG9pl59i8X
-PvHG2gIdOpFlC3j3GrLWYwWYHQv11vn6gY+qavuH+UFjRo3raW3MFw4YjuqlaYuQ
-gGFYWbFeZZa061XULMBkTivwBziv5DSLXbMVFhiZl8hl5BSw0DTxPtivVofSGKxB
-fjNKdjk6J55YwWipgG7vDH1PVnOUeZ6akmubDD6lYDF8hicD9FJSKkeCCrI35Hw/
-urIJ5Btj+VJakBixVDP+
-=9yCE
+iQIcBAEBCAAGBQJVP/J+AAoJEF0huFKJUZL5ngYQAJHcFginjxYj4oPJAanv17N5
+BeA882bS0Ib/T96ps4HbMXjlsMJXXk5lgpBPa9UHoL10A8RBTvOzMdvE3MNZt8rB
+/FoLyqGz2cqMn6/iV70raxVo1mQWEFtb6Di30TdYUjNqiVry/g9jV2ymMh6exdM0
+2ZLjPxj24CU/tvE25zA4U187C8EVsz/n4VoDlr3BUrAWzz2qnFSr0IHCGhhsg/Sm
+SZagrEpcojwN7BQLpuIMk1BfZFAGcA2w2RNsx2Ba98l/fjoBauNEiIYcBZgjDhsd
+0wQ8sc2eo2IFQgZ6dhUW/SfIxeKML+O4RDnwOVwbpC+H0zgJT6kdrdZoidlikBy9
+Zx9fHBEsNDZ5tHNBiur/zvddATO8sB22V3YHTfaEVpTeTbG49NuGkHtpcA91F8JG
+6amBncVEJ1PhB/MM6JyfL0kA/UnqN589zT3kN/jApJUI4LdkRebxwx9oxJn+8Qku
+rDj0kgyUx4S4pjaiUeY9iT31Rb108qURAxMsMAkic2HyXVGlGt3fcKHT5G6PgTGX
+OmaX9cK4qRGJNDKnGkRQjrX5y6qGfawwnJvqCYEWSRaufzSgqmtj1YK184Et3voe
+Euu/gX79jKZJ796js9EhNU8oR2DD6hWloOgUB50Ht5GSpkatIfsBKTUhXm+lHscp
+zRJ4/adhYnnfeqeYolpo
+=uT9f
 -----END PGP SIGNATURE-----
diff --git a/app-emulation/docker/docker-1.6.0.ebuild b/app-emulation/docker/docker-1.6.0.ebuild
new file mode 100644 (file)
index 0000000..9948b89
--- /dev/null
@@ -0,0 +1,247 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/docker/docker-1.6.0.ebuild,v 1.1 2015/04/28 20:50:02 xarthisius Exp $
+
+EAPI=5
+
+DESCRIPTION="Docker complements kernel namespacing with a high-level API which operates at the process level"
+HOMEPAGE="https://www.docker.com"
+
+GITHUB_URI="github.com/docker/docker"
+
+if [[ ${PV} == *9999 ]]; then
+       SRC_URI=""
+       EGIT_REPO_URI="git://${GITHUB_URI}.git"
+       inherit git-2
+else
+       MY_PV="${PV/_/-}"
+       MY_P="${PN}-${MY_PV}"
+       SRC_URI="https://${GITHUB_URI}/archive/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+       S="${WORKDIR}/${MY_P}"
+       DOCKER_GITCOMMIT="4749651"
+       KEYWORDS="~amd64"
+       [ "$DOCKER_GITCOMMIT" ] || die "DOCKER_GITCOMMIT must be added manually for each bump!"
+fi
+
+inherit bash-completion-r1 linux-info multilib systemd udev user
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="aufs btrfs +contrib +device-mapper doc lxc overlay vim-syntax zsh-completion"
+
+# https://github.com/docker/docker/blob/master/hack/PACKAGERS.md#build-dependencies
+CDEPEND="
+       >=dev-db/sqlite-3.7.9:3
+       device-mapper? (
+               >=sys-fs/lvm2-2.02.89[thin]
+       )
+"
+
+DEPEND="
+       ${CDEPEND}
+       >=dev-lang/go-1.3
+       btrfs? (
+               >=sys-fs/btrfs-progs-3.16.1
+       )
+"
+
+# https://github.com/docker/docker/blob/master/hack/PACKAGERS.md#runtime-dependencies
+# https://github.com/docker/docker/blob/master/hack/PACKAGERS.md#optional-dependencies
+RDEPEND="
+       ${CDEPEND}
+
+       !app-emulation/docker-bin
+       >=net-firewall/iptables-1.4
+       sys-process/procps
+       >=dev-vcs/git-1.7
+       >=app-arch/xz-utils-4.9
+
+       lxc? (
+               >=app-emulation/lxc-1.0.7
+       )
+       aufs? (
+               || (
+                       sys-fs/aufs3
+                       sys-kernel/aufs-sources
+               )
+       )
+"
+
+RESTRICT="installsources strip"
+
+# see "contrib/check-config.sh" from upstream's sources
+CONFIG_CHECK="
+       NAMESPACES NET_NS PID_NS IPC_NS UTS_NS
+       DEVPTS_MULTIPLE_INSTANCES
+       CGROUPS CGROUP_CPUACCT CGROUP_DEVICE CGROUP_FREEZER CGROUP_SCHED CPUSETS
+       MACVLAN VETH BRIDGE
+       NF_NAT_IPV4 IP_NF_FILTER IP_NF_TARGET_MASQUERADE
+       NETFILTER_XT_MATCH_ADDRTYPE NETFILTER_XT_MATCH_CONNTRACK
+       NF_NAT NF_NAT_NEEDED
+
+       POSIX_MQUEUE
+
+       ~MEMCG_SWAP ~MEMCG_SWAP_ENABLED
+       ~RESOURCE_COUNTERS
+       ~CGROUP_PERF
+       ~CFS_BANDWIDTH
+"
+
+ERROR_MEMCG_SWAP="CONFIG_MEMCG_SWAP: is required if you wish to limit swap usage of containers"
+ERROR_RESOURCE_COUNTERS="CONFIG_RESOURCE_COUNTERS: is optional for container statistics gathering"
+ERROR_CGROUP_PERF="CONFIG_CGROUP_PERF: is optional for container statistics gathering"
+ERROR_CFS_BANDWIDTH="CONFIG_CFS_BANDWIDTH: is optional for container statistics gathering"
+
+pkg_setup() {
+       if kernel_is lt 3 8; then
+               eerror ""
+               eerror "Using Docker with kernels older than 3.8 is unstable and unsupported."
+               eerror " - http://docs.docker.com/installation/binaries/#check-kernel-dependencies"
+               die 'Kernel is too old - need 3.8 or above'
+       fi
+
+       # for where these kernel versions come from, see:
+       # https://www.google.com/search?q=945b2b2d259d1a4364a2799e80e8ff32f8c6ee6f+site%3Akernel.org%2Fpub%2Flinux%2Fkernel+file%3AChangeLog*
+       if ! {
+               kernel_is ge 3 16 \
+               || { kernel_is 3 15 && kernel_is ge 3 15 5; } \
+               || { kernel_is 3 14 && kernel_is ge 3 14 12; } \
+               || { kernel_is 3 12 && kernel_is ge 3 12 25; }
+       }; then
+               ewarn ""
+               ewarn "There is a serious Docker-related kernel panic that has been fixed in 3.16+"
+               ewarn "  (and was backported to 3.15.5+, 3.14.12+, and 3.12.25+)"
+               ewarn ""
+               ewarn "See also https://github.com/docker/docker/issues/2960"
+       fi
+
+       if use aufs; then
+               CONFIG_CHECK+="
+                       ~AUFS_FS
+                       ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
+               "
+               # TODO there must be a way to detect "sys-kernel/aufs-sources" so we don't warn "sys-fs/aufs3" users about this
+               # an even better solution would be to check if the current kernel sources include CONFIG_AUFS_FS as an option, but that sounds hairy and error-prone
+               ERROR_AUFS_FS="CONFIG_AUFS_FS: is required to be set if and only if aufs-sources are used"
+       fi
+
+       if use btrfs; then
+               CONFIG_CHECK+="
+                       ~BTRFS_FS
+               "
+       fi
+
+       if use device-mapper; then
+               CONFIG_CHECK+="
+                       ~BLK_DEV_DM ~DM_THIN_PROVISIONING ~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
+               "
+       fi
+
+       if use overlay; then
+               CONFIG_CHECK+="
+                       ~OVERLAY_FS ~EXT4_FS_SECURITY ~EXT4_FS_POSIX_ACL
+               "
+       fi
+
+       linux-info_pkg_setup
+}
+
+src_prepare() {
+       # allow user patches (use sparingly - upstream won't support them)
+       epatch_user
+}
+
+src_compile() {
+       # if we treat them right, Docker's build scripts will set up a
+       # reasonable GOPATH for us
+       export AUTO_GOPATH=1
+
+       # setup CFLAGS and LDFLAGS for separate build target
+       # see https://github.com/tianon/docker-overlay/pull/10
+       export CGO_CFLAGS="-I${ROOT}/usr/include"
+       export CGO_LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
+
+       # if we're building from a zip, we need the GITCOMMIT value
+       [ "$DOCKER_GITCOMMIT" ] && export DOCKER_GITCOMMIT
+
+       if gcc-specs-pie; then
+               sed -i "s/EXTLDFLAGS_STATIC='/EXTLDFLAGS_STATIC='-fno-PIC /" hack/make.sh || die
+               grep -q -- '-fno-PIC' hack/make.sh || die 'hardened sed failed'
+
+               sed -i "s/LDFLAGS_STATIC_DOCKER='/LDFLAGS_STATIC_DOCKER='-extldflags -fno-PIC /" hack/make/dynbinary || die
+               grep -q -- '-fno-PIC' hack/make/dynbinary || die 'hardened sed failed'
+       fi
+
+       # let's set up some optional features :)
+       export DOCKER_BUILDTAGS=''
+       for gd in aufs btrfs device-mapper overlay; do
+               if ! use $gd; then
+                       DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}"
+               fi
+       done
+
+       # time to build!
+       ./hack/make.sh dynbinary || die 'dynbinary failed'
+
+       # TODO get go-md2man and then include the man pages using docs/man/md2man-all.sh
+}
+
+src_install() {
+       VERSION=$(cat VERSION)
+       newbin bundles/$VERSION/dynbinary/docker-$VERSION docker
+       exeinto /usr/libexec/docker
+       newexe bundles/$VERSION/dynbinary/dockerinit-$VERSION dockerinit
+
+       newinitd contrib/init/openrc/docker.initd docker
+       newconfd contrib/init/openrc/docker.confd docker
+
+       systemd_dounit contrib/init/systemd/docker.{service,socket}
+
+       udev_dorules contrib/udev/*.rules
+
+       dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
+       if use doc; then
+               # TODO doman contrib/man/man*/*
+
+               docompress -x /usr/share/doc/${PF}/md
+               docinto md
+               dodoc -r docs/sources/*
+       fi
+
+       dobashcomp contrib/completion/bash/*
+
+       if use zsh-completion; then
+               insinto /usr/share/zsh/site-functions
+               doins contrib/completion/zsh/*
+       fi
+
+       if use vim-syntax; then
+               insinto /usr/share/vim/vimfiles
+               doins -r contrib/syntax/vim/ftdetect
+               doins -r contrib/syntax/vim/syntax
+       fi
+
+       if use contrib; then
+               mkdir -p "${D}/usr/share/${PN}/contrib"
+               cp -R contrib/* "${D}/usr/share/${PN}/contrib"
+       fi
+}
+
+pkg_postinst() {
+       udev_reload
+
+       elog ""
+       elog "To use Docker, the Docker daemon must be running as root. To automatically"
+       elog "start the Docker daemon at boot, add Docker to the default runlevel:"
+       elog "  rc-update add docker default"
+       elog "Similarly for systemd:"
+       elog "  systemctl enable docker.service"
+       elog ""
+
+       # create docker group if the code checking for it in /etc/group exists
+       enewgroup docker
+
+       elog "To use Docker as a non-root user, add yourself to the 'docker' group:"
+       elog "  usermod -aG docker youruser"
+       elog ""
+}