Gentoo Archives: gentoo-commits

From: "Manuel Rüger" <mrueg@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/docker/
Date: Sun, 10 Sep 2017 10:58:08
Message-Id: 1505041073.fd91b576ec3671ad7cd830e78dc274a6a7b7c7b5.mrueg@gentoo
1 commit: fd91b576ec3671ad7cd830e78dc274a6a7b7c7b5
2 Author: Manuel Rüger <mrueg <AT> gentoo <DOT> org>
3 AuthorDate: Sun Sep 10 10:57:53 2017 +0000
4 Commit: Manuel Rüger <mrueg <AT> gentoo <DOT> org>
5 CommitDate: Sun Sep 10 10:57:53 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd91b576
7
8 app-emulation/docker: Remove old
9
10 Package-Manager: Portage-2.3.8, Repoman-2.3.3
11
12 app-emulation/docker/Manifest | 2 -
13 app-emulation/docker/docker-17.03.1.ebuild | 292 ---------------------------
14 app-emulation/docker/docker-17.06.1.ebuild | 314 -----------------------------
15 3 files changed, 608 deletions(-)
16
17 diff --git a/app-emulation/docker/Manifest b/app-emulation/docker/Manifest
18 index 80c10a3c9f4..ae7ed95928c 100644
19 --- a/app-emulation/docker/Manifest
20 +++ b/app-emulation/docker/Manifest
21 @@ -1,4 +1,2 @@
22 -DIST docker-17.03.1.tar.gz 7773296 SHA256 a8f1eefadf3966885ad0579facfc2017cca7dd3a0b20d086dfd798168716cb83 SHA512 51e2a9d6ca529ac67d63794b9fd257f962278019ae1a36a39ff635c742d6ca16286cc164470333ff6cd88d709ecf2cb90343b2dd94bb3939747550f74fb442d5 WHIRLPOOL 9178bdf5b13851650e31d95370a090a72c8c70b53416e83693ffbdbc549d3992f3004908c1db5b26c013552f02293dddf9f761b8b5b9d2e0f0bf7cfab5330ca9
23 DIST docker-17.03.2.tar.gz 7783969 SHA256 171a65c44340c7b5710da6948b0afb9306b126b36c531ddab1a3653fd2980aaa SHA512 9fad6c1fa38f9a14208547ca2d3d6a11a565fe4cebd7b432ccad9e2a57ab4a005df20415d1c797f747a99d309b07d8ec97bb45c67644554622aafe0bf1893e04 WHIRLPOOL e34f04698e4a510ed26c9e8f87510878a940d77dc7558df40173a8ea452a2843327196dea3099844dc389a051e23294671b3bc835120af3ca1f4c9c758de44a3
24 -DIST docker-17.06.1.tar.gz 9682381 SHA256 2ca8615162873b32d9565f95a4b2977d025fd44c69e087046e004f5dfb1ce30c SHA512 0a7dd578b3f5aa2be9e8df270b74cc5ad698b9c00ed4c314ecfea588cddddef26c0696265978d09abc5799f22f8bd8013b4f1a818e78eb7f7a4e7c15e082b5d0 WHIRLPOOL f6cf32cca15b36b4fa17239ee800d7e9347fc5f97050eca3590c75a76ab4d36ffff676508e7240aef5bd440795a870aa4349f7cede4e9fb4d610a3146693f8d7
25 DIST docker-17.06.2.tar.gz 9684548 SHA256 cfcb5646db32f52c4c394bc688fff405e585beab4ded64251958804a102a5269 SHA512 0a9b7b122aadef911141ec1f606759e892c0673821ddf5f3247a5b2d4476a20018add84a22c5aca32f0f91c1046e5be6d8d3f9ce65c3e4244896bf061b1eac6b WHIRLPOOL d0cc166319dbf735d67796df3836f79b24b9108327276ca0ba272398cdc70d6fae4649d9097b6dd29e62633ee636a216343e0d3ffd781cf63ef4c7a7c8cea259
26
27 diff --git a/app-emulation/docker/docker-17.03.1.ebuild b/app-emulation/docker/docker-17.03.1.ebuild
28 deleted file mode 100644
29 index 5577efb953d..00000000000
30 --- a/app-emulation/docker/docker-17.03.1.ebuild
31 +++ /dev/null
32 @@ -1,292 +0,0 @@
33 -# Copyright 1999-2017 Gentoo Foundation
34 -# Distributed under the terms of the GNU General Public License v2
35 -
36 -EAPI=6
37 -
38 -EGO_PN="github.com/docker/docker"
39 -
40 -if [[ ${PV} = *9999* ]]; then
41 - # Docker cannot be fetched via "go get", thanks to autogenerated code
42 - EGIT_REPO_URI="https://${EGO_PN}.git"
43 - EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/src/${EGO_PN}"
44 - inherit git-r3
45 -else
46 - MY_PV="${PV/_/-}"
47 - DOCKER_GITCOMMIT="c6d412e"
48 - EGIT_COMMIT="v${MY_PV}-ce"
49 - SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
50 - KEYWORDS="amd64 ~arm"
51 - [ "$DOCKER_GITCOMMIT" ] || die "DOCKER_GITCOMMIT must be added manually for each bump!"
52 - inherit golang-vcs-snapshot
53 -fi
54 -inherit bash-completion-r1 golang-base linux-info systemd udev user
55 -
56 -DESCRIPTION="The core functions you need to create Docker images and run Docker containers"
57 -HOMEPAGE="https://dockerproject.org"
58 -LICENSE="Apache-2.0"
59 -SLOT="0"
60 -IUSE="apparmor aufs btrfs +container-init +device-mapper hardened overlay pkcs11 seccomp"
61 -
62 -# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies
63 -CDEPEND="
64 - >=dev-db/sqlite-3.7.9:3
65 - device-mapper? (
66 - >=sys-fs/lvm2-2.02.89[thin]
67 - )
68 - seccomp? ( >=sys-libs/libseccomp-2.2.1 )
69 - apparmor? ( sys-libs/libapparmor )
70 -"
71 -
72 -DEPEND="
73 - ${CDEPEND}
74 -
75 - dev-go/go-md2man
76 -
77 - btrfs? (
78 - >=sys-fs/btrfs-progs-3.16.1
79 - )
80 -"
81 -
82 -# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#runtime-dependencies
83 -# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#optional-dependencies
84 -# Runc/Containerd: Unfortunately docker does not version the releases, in order to avoid
85 -# incompatiblities we depend on snapshots
86 -RDEPEND="
87 - ${CDEPEND}
88 -
89 - !app-emulation/docker-bin
90 - >=net-firewall/iptables-1.4
91 - sys-process/procps
92 - >=dev-vcs/git-1.7
93 - >=app-arch/xz-utils-4.9
94 -
95 - >=app-emulation/containerd-0.2.5_p20170308
96 - ~app-emulation/docker-runc-1.0.0_rc2_p20170308[apparmor?,seccomp?]
97 - app-emulation/docker-proxy
98 - container-init? ( >=sys-process/tini-0.13.0[static] )
99 -"
100 -
101 -RESTRICT="installsources strip"
102 -
103 -S="${WORKDIR}/${P}/src/${EGO_PN}"
104 -
105 -# see "contrib/check-config.sh" from upstream's sources
106 -CONFIG_CHECK="
107 - ~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS
108 - ~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG
109 - ~KEYS
110 - ~VETH ~BRIDGE ~BRIDGE_NETFILTER
111 - ~NF_NAT_IPV4 ~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE
112 - ~NETFILTER_XT_MATCH_ADDRTYPE ~NETFILTER_XT_MATCH_CONNTRACK
113 - ~NF_NAT ~NF_NAT_NEEDED
114 - ~POSIX_MQUEUE
115 -
116 - ~USER_NS
117 - ~SECCOMP
118 - ~CGROUP_PIDS
119 - ~MEMCG_SWAP ~MEMCG_SWAP_ENABLED
120 -
121 - ~BLK_CGROUP ~BLK_DEV_THROTTLING ~IOSCHED_CFQ ~CFQ_GROUP_IOSCHED
122 - ~CGROUP_PERF
123 - ~CGROUP_HUGETLB
124 - ~NET_CLS_CGROUP
125 - ~CFS_BANDWIDTH ~FAIR_GROUP_SCHED ~RT_GROUP_SCHED
126 - ~IP_VS ~IP_VS_PROTO_TCP ~IP_VS_PROTO_UDP ~IP_VS_NFCT ~IP_VS_RR
127 -
128 - ~VXLAN
129 - ~XFRM_ALGO ~XFRM_USER
130 - ~IPVLAN
131 - ~MACVLAN ~DUMMY
132 -"
133 -
134 -ERROR_KEYS="CONFIG_KEYS: is mandatory"
135 -ERROR_MEMCG_SWAP="CONFIG_MEMCG_SWAP: is required if you wish to limit swap usage of containers"
136 -ERROR_RESOURCE_COUNTERS="CONFIG_RESOURCE_COUNTERS: is optional for container statistics gathering"
137 -
138 -ERROR_BLK_CGROUP="CONFIG_BLK_CGROUP: is optional for container statistics gathering"
139 -ERROR_IOSCHED_CFQ="CONFIG_IOSCHED_CFQ: is optional for container statistics gathering"
140 -ERROR_CGROUP_PERF="CONFIG_CGROUP_PERF: is optional for container statistics gathering"
141 -ERROR_CFS_BANDWIDTH="CONFIG_CFS_BANDWIDTH: is optional for container statistics gathering"
142 -ERROR_XFRM_ALGO="CONFIG_XFRM_ALGO: is optional for secure networks"
143 -ERROR_XFRM_USER="CONFIG_XFRM_USER: is optional for secure networks"
144 -
145 -PATCHES=(
146 - "${FILESDIR}"/1.13.1-split-openrc-log.patch
147 -)
148 -
149 -pkg_setup() {
150 - if kernel_is lt 3 10; then
151 - ewarn ""
152 - ewarn "Using Docker with kernels older than 3.10 is unstable and unsupported."
153 - ewarn " - http://docs.docker.com/engine/installation/binaries/#check-kernel-dependencies"
154 - fi
155 -
156 - # for where these kernel versions come from, see:
157 - # https://www.google.com/search?q=945b2b2d259d1a4364a2799e80e8ff32f8c6ee6f+site%3Akernel.org%2Fpub%2Flinux%2Fkernel+file%3AChangeLog*
158 - if ! {
159 - kernel_is ge 3 16 \
160 - || { kernel_is 3 15 && kernel_is ge 3 15 5; } \
161 - || { kernel_is 3 14 && kernel_is ge 3 14 12; } \
162 - || { kernel_is 3 12 && kernel_is ge 3 12 25; }
163 - }; then
164 - ewarn ""
165 - ewarn "There is a serious Docker-related kernel panic that has been fixed in 3.16+"
166 - ewarn " (and was backported to 3.15.5+, 3.14.12+, and 3.12.25+)"
167 - ewarn ""
168 - ewarn "See also https://github.com/docker/docker/issues/2960"
169 - fi
170 -
171 - if kernel_is le 3 18; then
172 - CONFIG_CHECK+="
173 - ~RESOURCE_COUNTERS
174 - "
175 - fi
176 -
177 - if kernel_is le 3 13; then
178 - CONFIG_CHECK+="
179 - ~NETPRIO_CGROUP
180 - "
181 - else
182 - CONFIG_CHECK+="
183 - ~CGROUP_NET_PRIO
184 - "
185 - fi
186 -
187 - if kernel_is lt 4 5; then
188 - CONFIG_CHECK+="
189 - ~MEMCG_KMEM
190 - "
191 - ERROR_MEMCG_KMEM="CONFIG_MEMCG_KMEM: is optional"
192 - fi
193 -
194 - if kernel_is lt 4 7; then
195 - CONFIG_CHECK+="
196 - ~DEVPTS_MULTIPLE_INSTANCES
197 - "
198 - fi
199 -
200 - if use aufs; then
201 - CONFIG_CHECK+="
202 - ~AUFS_FS
203 - ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
204 - "
205 - ERROR_AUFS_FS="CONFIG_AUFS_FS: is required to be set if and only if aufs-sources are used instead of aufs4/aufs3"
206 - fi
207 -
208 - if use btrfs; then
209 - CONFIG_CHECK+="
210 - ~BTRFS_FS
211 - ~BTRFS_FS_POSIX_ACL
212 - "
213 - fi
214 -
215 - if use device-mapper; then
216 - CONFIG_CHECK+="
217 - ~BLK_DEV_DM ~DM_THIN_PROVISIONING ~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
218 - "
219 - fi
220 -
221 - if use overlay; then
222 - CONFIG_CHECK+="
223 - ~OVERLAY_FS ~EXT4_FS_SECURITY ~EXT4_FS_POSIX_ACL
224 - "
225 - fi
226 -
227 - linux-info_pkg_setup
228 -
229 - # create docker group for the code checking for it in /etc/group
230 - enewgroup docker
231 -}
232 -
233 -src_compile() {
234 - export GOPATH="${WORKDIR}/${P}:${PWD}/vendor"
235 -
236 - # setup CFLAGS and LDFLAGS for separate build target
237 - # see https://github.com/tianon/docker-overlay/pull/10
238 - export CGO_CFLAGS="-I${ROOT}/usr/include"
239 - export CGO_LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
240 -
241 - # if we're building from a tarball, we need the GITCOMMIT value
242 - [ "$DOCKER_GITCOMMIT" ] && export DOCKER_GITCOMMIT
243 -
244 - if use hardened; then
245 - sed -i "s/EXTLDFLAGS_STATIC='/&-fno-PIC /" hack/make.sh || die
246 - grep -q -- '-fno-PIC' hack/make.sh || die 'hardened sed failed'
247 -
248 - sed "s/LDFLAGS_STATIC_DOCKER='/&-extldflags -fno-PIC /" \
249 - -i hack/make/dynbinary-client || die
250 - sed "s/LDFLAGS_STATIC_DOCKER='/&-extldflags -fno-PIC /" \
251 - -i hack/make/dynbinary-daemon || die
252 - grep -q -- '-fno-PIC' hack/make/dynbinary-daemon || die 'hardened sed failed'
253 - grep -q -- '-fno-PIC' hack/make/dynbinary-client || die 'hardened sed failed'
254 - fi
255 -
256 - # let's set up some optional features :)
257 - export DOCKER_BUILDTAGS=''
258 - for gd in aufs btrfs device-mapper overlay; do
259 - if ! use $gd; then
260 - DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}"
261 - fi
262 - done
263 -
264 - for tag in apparmor pkcs11 seccomp; do
265 - if use $tag; then
266 - DOCKER_BUILDTAGS+=" $tag"
267 - fi
268 - done
269 -
270 - # time to build!
271 - ./hack/make.sh dynbinary || die 'dynbinary failed'
272 -
273 - # build the man pages too
274 - ./man/md2man-all.sh || die "unable to generate man pages"
275 -}
276 -
277 -src_install() {
278 - VERSION="$(cat VERSION)"
279 - newbin "bundles/$VERSION/dynbinary-client/docker-$VERSION" docker
280 - newbin "bundles/$VERSION/dynbinary-daemon/dockerd-$VERSION" dockerd
281 - dosym containerd /usr/bin/docker-containerd
282 - dosym containerd-shim /usr/bin/docker-containerd-shim
283 - dosym runc /usr/bin/docker-runc
284 - use container-init && dosym tini /usr/bin/docker-init
285 -
286 - newinitd contrib/init/openrc/docker.initd docker
287 - newconfd contrib/init/openrc/docker.confd docker
288 -
289 - systemd_dounit contrib/init/systemd/docker.{service,socket}
290 -
291 - udev_dorules contrib/udev/*.rules
292 -
293 - dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
294 - dodoc -r docs/*
295 - doman man/man*/*
296 -
297 - dobashcomp contrib/completion/bash/*
298 -
299 - insinto /usr/share/zsh/site-functions
300 - doins contrib/completion/zsh/_*
301 -
302 - insinto /usr/share/vim/vimfiles
303 - doins -r contrib/syntax/vim/ftdetect
304 - doins -r contrib/syntax/vim/syntax
305 -
306 - # note: intentionally not using "doins" so that we preserve +x bits
307 - dodir /usr/share/${PN}/contrib
308 - cp -R contrib/* "${ED}/usr/share/${PN}/contrib"
309 -}
310 -
311 -pkg_postinst() {
312 - udev_reload
313 -
314 - elog
315 - elog "To use Docker, the Docker daemon must be running as root. To automatically"
316 - elog "start the Docker daemon at boot, add Docker to the default runlevel:"
317 - elog " rc-update add docker default"
318 - elog "Similarly for systemd:"
319 - elog " systemctl enable docker.service"
320 - elog
321 - elog "To use Docker as a non-root user, add yourself to the 'docker' group:"
322 - elog " usermod -aG docker youruser"
323 - elog
324 -}
325
326 diff --git a/app-emulation/docker/docker-17.06.1.ebuild b/app-emulation/docker/docker-17.06.1.ebuild
327 deleted file mode 100644
328 index fbfe5cc8142..00000000000
329 --- a/app-emulation/docker/docker-17.06.1.ebuild
330 +++ /dev/null
331 @@ -1,314 +0,0 @@
332 -# Copyright 1999-2017 Gentoo Foundation
333 -# Distributed under the terms of the GNU General Public License v2
334 -
335 -EAPI=6
336 -
337 -EGO_PN="github.com/docker/docker-ce"
338 -
339 -if [[ ${PV} = *9999* ]]; then
340 - # Docker cannot be fetched via "go get", thanks to autogenerated code
341 - EGIT_REPO_URI="https://${EGO_PN}.git"
342 - EGIT_CHECKOUT_DIR="${WORKDIR}/${P}/src/${EGO_PN}"
343 - inherit git-r3
344 -else
345 - inherit versionator
346 - if [ "$(get_version_component_count)" = 4 ]; then
347 - MY_PV="$(replace_version_separator 3 '-ce-')"
348 - else
349 - MY_PV="$PV-ce"
350 - fi
351 - DOCKER_GITCOMMIT="874a737"
352 - EGIT_COMMIT="v${MY_PV}"
353 - SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz"
354 - KEYWORDS="~amd64 ~arm"
355 - [ "$DOCKER_GITCOMMIT" ] || die "DOCKER_GITCOMMIT must be added manually for each bump!"
356 - inherit golang-vcs-snapshot
357 -fi
358 -inherit bash-completion-r1 golang-base linux-info systemd udev user
359 -
360 -DESCRIPTION="The core functions you need to create Docker images and run Docker containers"
361 -HOMEPAGE="https://dockerproject.org"
362 -LICENSE="Apache-2.0"
363 -SLOT="0"
364 -IUSE="apparmor aufs btrfs +container-init +device-mapper hardened overlay pkcs11 seccomp"
365 -
366 -# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies
367 -CDEPEND="
368 - >=dev-db/sqlite-3.7.9:3
369 - device-mapper? (
370 - >=sys-fs/lvm2-2.02.89[thin]
371 - )
372 - seccomp? ( >=sys-libs/libseccomp-2.2.1 )
373 - apparmor? ( sys-libs/libapparmor )
374 -"
375 -
376 -DEPEND="
377 - ${CDEPEND}
378 -
379 - dev-go/go-md2man
380 -
381 - btrfs? (
382 - >=sys-fs/btrfs-progs-3.16.1
383 - )
384 -"
385 -
386 -# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#runtime-dependencies
387 -# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#optional-dependencies
388 -RDEPEND="
389 - ${CDEPEND}
390 - >=net-firewall/iptables-1.4
391 - sys-process/procps
392 - >=dev-vcs/git-1.7
393 - >=app-arch/xz-utils-4.9
394 -
395 - ~app-emulation/containerd-0.2.9_p20170605
396 - ~app-emulation/docker-runc-1.0.0_rc3_p20170706[apparmor?,seccomp?]
397 - app-emulation/docker-proxy
398 - container-init? ( >=sys-process/tini-0.15.0[static] )
399 -"
400 -
401 -RESTRICT="installsources strip"
402 -
403 -S="${WORKDIR}/${P}/src/${EGO_PN}"
404 -
405 -# see "contrib/check-config.sh" from upstream's sources
406 -CONFIG_CHECK="
407 - ~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS
408 - ~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG
409 - ~KEYS
410 - ~VETH ~BRIDGE ~BRIDGE_NETFILTER
411 - ~NF_NAT_IPV4 ~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE
412 - ~NETFILTER_XT_MATCH_ADDRTYPE ~NETFILTER_XT_MATCH_CONNTRACK
413 - ~NF_NAT ~NF_NAT_NEEDED
414 - ~POSIX_MQUEUE
415 -
416 - ~USER_NS
417 - ~SECCOMP
418 - ~CGROUP_PIDS
419 - ~MEMCG_SWAP ~MEMCG_SWAP_ENABLED
420 -
421 - ~BLK_CGROUP ~BLK_DEV_THROTTLING ~IOSCHED_CFQ ~CFQ_GROUP_IOSCHED
422 - ~CGROUP_PERF
423 - ~CGROUP_HUGETLB
424 - ~NET_CLS_CGROUP
425 - ~CFS_BANDWIDTH ~FAIR_GROUP_SCHED ~RT_GROUP_SCHED
426 - ~IP_VS ~IP_VS_PROTO_TCP ~IP_VS_PROTO_UDP ~IP_VS_NFCT ~IP_VS_RR
427 -
428 - ~VXLAN
429 - ~XFRM_ALGO ~XFRM_USER
430 - ~IPVLAN
431 - ~MACVLAN ~DUMMY
432 -"
433 -
434 -ERROR_KEYS="CONFIG_KEYS: is mandatory"
435 -ERROR_MEMCG_SWAP="CONFIG_MEMCG_SWAP: is required if you wish to limit swap usage of containers"
436 -ERROR_RESOURCE_COUNTERS="CONFIG_RESOURCE_COUNTERS: is optional for container statistics gathering"
437 -
438 -ERROR_BLK_CGROUP="CONFIG_BLK_CGROUP: is optional for container statistics gathering"
439 -ERROR_IOSCHED_CFQ="CONFIG_IOSCHED_CFQ: is optional for container statistics gathering"
440 -ERROR_CGROUP_PERF="CONFIG_CGROUP_PERF: is optional for container statistics gathering"
441 -ERROR_CFS_BANDWIDTH="CONFIG_CFS_BANDWIDTH: is optional for container statistics gathering"
442 -ERROR_XFRM_ALGO="CONFIG_XFRM_ALGO: is optional for secure networks"
443 -ERROR_XFRM_USER="CONFIG_XFRM_USER: is optional for secure networks"
444 -
445 -pkg_setup() {
446 - if kernel_is lt 3 10; then
447 - ewarn ""
448 - ewarn "Using Docker with kernels older than 3.10 is unstable and unsupported."
449 - ewarn " - http://docs.docker.com/engine/installation/binaries/#check-kernel-dependencies"
450 - fi
451 -
452 - # for where these kernel versions come from, see:
453 - # https://www.google.com/search?q=945b2b2d259d1a4364a2799e80e8ff32f8c6ee6f+site%3Akernel.org%2Fpub%2Flinux%2Fkernel+file%3AChangeLog*
454 - if ! {
455 - kernel_is ge 3 16 \
456 - || { kernel_is 3 15 && kernel_is ge 3 15 5; } \
457 - || { kernel_is 3 14 && kernel_is ge 3 14 12; } \
458 - || { kernel_is 3 12 && kernel_is ge 3 12 25; }
459 - }; then
460 - ewarn ""
461 - ewarn "There is a serious Docker-related kernel panic that has been fixed in 3.16+"
462 - ewarn " (and was backported to 3.15.5+, 3.14.12+, and 3.12.25+)"
463 - ewarn ""
464 - ewarn "See also https://github.com/docker/docker/issues/2960"
465 - fi
466 -
467 - if kernel_is le 3 18; then
468 - CONFIG_CHECK+="
469 - ~RESOURCE_COUNTERS
470 - "
471 - fi
472 -
473 - if kernel_is le 3 13; then
474 - CONFIG_CHECK+="
475 - ~NETPRIO_CGROUP
476 - "
477 - else
478 - CONFIG_CHECK+="
479 - ~CGROUP_NET_PRIO
480 - "
481 - fi
482 -
483 - if kernel_is lt 4 5; then
484 - CONFIG_CHECK+="
485 - ~MEMCG_KMEM
486 - "
487 - ERROR_MEMCG_KMEM="CONFIG_MEMCG_KMEM: is optional"
488 - fi
489 -
490 - if kernel_is lt 4 7; then
491 - CONFIG_CHECK+="
492 - ~DEVPTS_MULTIPLE_INSTANCES
493 - "
494 - fi
495 -
496 - if use aufs; then
497 - CONFIG_CHECK+="
498 - ~AUFS_FS
499 - ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
500 - "
501 - ERROR_AUFS_FS="CONFIG_AUFS_FS: is required to be set if and only if aufs-sources are used instead of aufs4/aufs3"
502 - fi
503 -
504 - if use btrfs; then
505 - CONFIG_CHECK+="
506 - ~BTRFS_FS
507 - ~BTRFS_FS_POSIX_ACL
508 - "
509 - fi
510 -
511 - if use device-mapper; then
512 - CONFIG_CHECK+="
513 - ~BLK_DEV_DM ~DM_THIN_PROVISIONING ~EXT4_FS ~EXT4_FS_POSIX_ACL ~EXT4_FS_SECURITY
514 - "
515 - fi
516 -
517 - if use overlay; then
518 - CONFIG_CHECK+="
519 - ~OVERLAY_FS ~EXT4_FS_SECURITY ~EXT4_FS_POSIX_ACL
520 - "
521 - fi
522 -
523 - linux-info_pkg_setup
524 -
525 - # create docker group for the code checking for it in /etc/group
526 - enewgroup docker
527 -}
528 -
529 -src_compile() {
530 - export GOPATH="${WORKDIR}/${P}"
531 -
532 - # setup CFLAGS and LDFLAGS for separate build target
533 - # see https://github.com/tianon/docker-overlay/pull/10
534 - export CGO_CFLAGS="-I${ROOT}/usr/include"
535 - export CGO_LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
536 -
537 - # if we're building from a tarball, we need the GITCOMMIT value
538 - [ "$DOCKER_GITCOMMIT" ] && export DOCKER_GITCOMMIT
539 -
540 - # fake golang layout
541 - ln -s docker-ce/components/engine ../docker || die
542 - ln -s docker-ce/components/cli ../cli || die
543 -
544 - # let's set up some optional features :)
545 - export DOCKER_BUILDTAGS=''
546 - for gd in aufs btrfs device-mapper overlay; do
547 - if ! use $gd; then
548 - DOCKER_BUILDTAGS+=" exclude_graphdriver_${gd//-/}"
549 - fi
550 - done
551 -
552 - for tag in apparmor pkcs11 seccomp; do
553 - if use $tag; then
554 - DOCKER_BUILDTAGS+=" $tag"
555 - fi
556 - done
557 -
558 - pushd components/engine || die
559 -
560 - if use hardened; then
561 - sed -i "s/EXTLDFLAGS_STATIC='/&-fno-PIC /" hack/make.sh || die
562 - grep -q -- '-fno-PIC' hack/make.sh || die 'hardened sed failed'
563 - sed "s/LDFLAGS_STATIC_DOCKER='/&-extldflags -fno-PIC /" \
564 - -i hack/make/dynbinary-daemon || die
565 - grep -q -- '-fno-PIC' hack/make/dynbinary-daemon || die 'hardened sed failed'
566 - fi
567 -
568 - # build daemon
569 - ./hack/make.sh dynbinary || die 'dynbinary failed'
570 -
571 - popd || die # components/engine
572 -
573 - pushd components/cli || die
574 -
575 - # build cli
576 - emake \
577 - LDFLAGS="$(usex hardened '-extldflags -fno-PIC' '')" \
578 - VERSION="$(cat ../../VERSION)" \
579 - GITCOMMIT="${DOCKER_GITCOMMIT}" \
580 - dynbinary || die
581 -
582 - # build man pages
583 - go build -o gen-manpages github.com/docker/cli/man || die
584 - ./gen-manpages --root . --target ./man/man1 || die
585 - ./man/md2man-all.sh -q || die
586 - rm gen-manpages || die
587 - # see "components/cli/scripts/docs/generate-man.sh" (which also does "go get" for go-md2man)
588 -
589 - popd || die # components/cli
590 -}
591 -
592 -src_install() {
593 - dosym containerd /usr/bin/docker-containerd
594 - dosym containerd-shim /usr/bin/docker-containerd-shim
595 - dosym runc /usr/bin/docker-runc
596 - use container-init && dosym tini /usr/bin/docker-init
597 -
598 - pushd components/engine || die
599 - newbin "$(readlink -f bundles/latest/dynbinary-daemon/dockerd)" dockerd
600 -
601 - newinitd contrib/init/openrc/docker.initd docker
602 - newconfd contrib/init/openrc/docker.confd docker
603 -
604 - systemd_dounit contrib/init/systemd/docker.{service,socket}
605 -
606 - udev_dorules contrib/udev/*.rules
607 -
608 - dodoc AUTHORS CONTRIBUTING.md CHANGELOG.md NOTICE README.md
609 - dodoc -r docs/*
610 -
611 - insinto /usr/share/vim/vimfiles
612 - doins -r contrib/syntax/vim/ftdetect
613 - doins -r contrib/syntax/vim/syntax
614 -
615 - # note: intentionally not using "doins" so that we preserve +x bits
616 - dodir /usr/share/${PN}/contrib
617 - cp -R contrib/* "${ED}/usr/share/${PN}/contrib"
618 - popd || die # components/engine
619 -
620 - pushd components/cli || die
621 -
622 - newbin build/docker-* docker
623 -
624 - doman man/man*/*
625 -
626 - dobashcomp contrib/completion/bash/*
627 - insinto /usr/share/zsh/site-functions
628 - doins contrib/completion/zsh/_*
629 - popd || die # components/cli
630 -}
631 -
632 -pkg_postinst() {
633 - udev_reload
634 -
635 - elog
636 - elog "To use Docker, the Docker daemon must be running as root. To automatically"
637 - elog "start the Docker daemon at boot, add Docker to the default runlevel:"
638 - elog " rc-update add docker default"
639 - elog "Similarly for systemd:"
640 - elog " systemctl enable docker.service"
641 - elog
642 - elog "To use Docker as a non-root user, add yourself to the 'docker' group:"
643 - elog " usermod -aG docker youruser"
644 - elog
645 -}