diff options
author | Kacper Kowalik <xarthisius@gentoo.org> | 2015-04-28 20:50:14 +0000 |
---|---|---|
committer | Kacper Kowalik <xarthisius@gentoo.org> | 2015-04-28 20:50:14 +0000 |
commit | ddbba084e3239445ea32a7c027a5b9bf0492e258 (patch) | |
tree | 27c560e735e12f469379d329edaae164ef39d467 /app-emulation | |
parent | dev-java/jna-posix has been removed. (diff) | |
download | historical-ddbba084e3239445ea32a7c027a5b9bf0492e258.tar.gz historical-ddbba084e3239445ea32a7c027a5b9bf0492e258.tar.bz2 historical-ddbba084e3239445ea32a7c027a5b9bf0492e258.zip |
Version bump, grabbed from tianon's docker overlay. Fixes #547316
Package-Manager: portage-2.2.17/cvs/Linux x86_64
Manifest-Sign-Key: 0x5D21B852895192F9
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/docker/ChangeLog | 7 | ||||
-rw-r--r-- | app-emulation/docker/Manifest | 30 | ||||
-rw-r--r-- | app-emulation/docker/docker-1.6.0.ebuild | 247 |
3 files changed, 269 insertions, 15 deletions
diff --git a/app-emulation/docker/ChangeLog b/app-emulation/docker/ChangeLog index f998fbf238ad..273c4393aed7 100644 --- a/app-emulation/docker/ChangeLog +++ b/app-emulation/docker/ChangeLog @@ -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 diff --git a/app-emulation/docker/Manifest b/app-emulation/docker/Manifest index 5167277d8ae0..23e896b2bfd6 100644 --- a/app-emulation/docker/Manifest +++ b/app-emulation/docker/Manifest @@ -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 index 000000000000..9948b891e36e --- /dev/null +++ b/app-emulation/docker/docker-1.6.0.ebuild @@ -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 "" +} |