Gentoo Archives: gentoo-commits

From: "Markos Chandras (hwoarang)" <hwoarang@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-emulation/lxc: metadata.xml lxc-1.1.0.ebuild ChangeLog
Date: Sun, 08 Feb 2015 09:53:37
Message-Id: 20150208095331.EB0A611500@oystercatcher.gentoo.org
1 hwoarang 15/02/08 09:53:31
2
3 Modified: metadata.xml ChangeLog
4 Added: lxc-1.1.0.ebuild
5 Log:
6 Version bump. Bug #538698
7
8 (Portage version: 2.2.15/cvs/Linux x86_64, signed Manifest commit with key 09BF4F54C2BA7F3C!)
9
10 Revision Changes Path
11 1.9 app-emulation/lxc/metadata.xml
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/metadata.xml?rev=1.9&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/metadata.xml?rev=1.9&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/metadata.xml?r1=1.8&r2=1.9
16
17 Index: metadata.xml
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/app-emulation/lxc/metadata.xml,v
20 retrieving revision 1.8
21 retrieving revision 1.9
22 diff -u -r1.8 -r1.9
23 --- metadata.xml 18 Oct 2014 17:03:23 -0000 1.8
24 +++ metadata.xml 8 Feb 2015 09:53:31 -0000 1.9
25 @@ -12,6 +12,7 @@
26 <email>hwoarang@g.o</email>
27 </maintainer>
28 <use>
29 + <flag name="cgmanager">Enable support for cgroup management using <pkg>app-admin/cgmanager</pkg></flag>
30 <flag name="seccomp">Use seccomp syscall filters using <pkg>sys-libs/libseccomp</pkg></flag>
31 </use>
32 </pkgmetadata>
33
34
35
36 1.58 app-emulation/lxc/ChangeLog
37
38 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/ChangeLog?rev=1.58&view=markup
39 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/ChangeLog?rev=1.58&content-type=text/plain
40 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/ChangeLog?r1=1.57&r2=1.58
41
42 Index: ChangeLog
43 ===================================================================
44 RCS file: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v
45 retrieving revision 1.57
46 retrieving revision 1.58
47 diff -u -r1.57 -r1.58
48 --- ChangeLog 5 Feb 2015 18:49:27 -0000 1.57
49 +++ ChangeLog 8 Feb 2015 09:53:31 -0000 1.58
50 @@ -1,6 +1,12 @@
51 # ChangeLog for app-emulation/lxc
52 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
53 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.57 2015/02/05 18:49:27 hwoarang Exp $
54 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.58 2015/02/08 09:53:31 hwoarang Exp $
55 +
56 +*lxc-1.1.0 (08 Feb 2015)
57 +
58 + 08 Feb 2015; Markos Chandras <hwoarang@g.o> +lxc-1.1.0.ebuild,
59 + metadata.xml:
60 + Version bump. Bug #538698
61
62 05 Feb 2015; Markos Chandras <hwoarang@g.o> lxc-1.0.6-r1.ebuild,
63 lxc-1.0.7.ebuild:
64
65
66
67 1.1 app-emulation/lxc/lxc-1.1.0.ebuild
68
69 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/lxc-1.1.0.ebuild?rev=1.1&view=markup
70 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/lxc/lxc-1.1.0.ebuild?rev=1.1&content-type=text/plain
71
72 Index: lxc-1.1.0.ebuild
73 ===================================================================
74 # Copyright 1999-2015 Gentoo Foundation
75 # Distributed under the terms of the GNU General Public License v2
76 # $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-1.1.0.ebuild,v 1.1 2015/02/08 09:53:31 hwoarang Exp $
77
78 EAPI="5"
79
80 MY_P="${P/_/-}"
81 PYTHON_COMPAT=( python{3_2,3_3,3_4} )
82 DISTUTILS_OPTIONAL=1
83
84 inherit autotools bash-completion-r1 distutils-r1 eutils linux-info versionator flag-o-matic systemd
85
86 DESCRIPTION="LinuX Containers userspace utilities"
87 HOMEPAGE="https://linuxcontainers.org/"
88 SRC_URI="https://github.com/lxc/lxc/archive/${MY_P}.tar.gz"
89
90 KEYWORDS="~amd64"
91
92 LICENSE="LGPL-3"
93 SLOT="0"
94 IUSE="cgmanager doc examples lua python seccomp"
95
96 RDEPEND="net-libs/gnutls
97 sys-libs/libcap
98 cgmanager? ( app-admin/cgmanager )
99 lua? ( >=dev-lang/lua-5.1 )
100 python? ( ${PYTHON_DEPS} )
101 seccomp? ( sys-libs/libseccomp )"
102
103 DEPEND="${RDEPEND}
104 doc? ( app-text/docbook-sgml-utils )
105 >=sys-kernel/linux-headers-3.2"
106
107 RDEPEND="${RDEPEND}
108 sys-process/criu
109 sys-apps/util-linux
110 app-misc/pax-utils
111 virtual/awk"
112
113 CONFIG_CHECK="~CGROUPS ~CGROUP_DEVICE
114 ~CPUSETS ~CGROUP_CPUACCT
115 ~RESOURCE_COUNTERS
116 ~CGROUP_SCHED
117
118 ~NAMESPACES
119 ~IPC_NS ~USER_NS ~PID_NS
120
121 ~NETLINK_DIAG ~PACKET_DIAG
122 ~INET_UDP_DIAG ~INET_TCP_DIAG
123 ~UNIX_DIAG
124
125 ~DEVPTS_MULTIPLE_INSTANCES
126 ~CGROUP_FREEZER
127 ~UTS_NS ~NET_NS
128 ~VETH ~MACVLAN
129
130 ~POSIX_MQUEUE
131 ~!NETPRIO_CGROUP
132
133 ~!GRKERNSEC_CHROOT_MOUNT
134 ~!GRKERNSEC_CHROOT_DOUBLE
135 ~!GRKERNSEC_CHROOT_PIVOT
136 ~!GRKERNSEC_CHROOT_CHMOD
137 ~!GRKERNSEC_CHROOT_CAPS
138 "
139
140 ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container"
141
142 ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers"
143
144 ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info"
145 ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network"
146
147 ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking"
148 ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking"
149
150 ERROR_NETLINK_DIAG="CONFIG_NETLINK_DIAG: needed for lxc-checkpoint"
151 ERROR_PACKET_DIAG="CONFIG_PACKET_DIAG: needed for lxc-checkpoint"
152 ERROR_INET_UDP_DIAG="CONFIG_INET_UDP_DIAG: needed for lxc-checkpoint"
153 ERROR_INET_TCP_DIAG="CONFIG_INET_TCP_DIAG: needed for lxc-checkpoint"
154 ERROR_UNIX_DIAG="UNIX_DIAG: needed for lxc-checkpoint"
155
156 ERROR_POSIX_MQUEUE="CONFIG_POSIX_MQUEUE: needed for lxc-execute command"
157
158 ERROR_NETPRIO_CGROUP="CONFIG_NETPRIO_CGROUP: as of kernel 3.3 and lxc 0.8.0_rc1 this causes LXCs to fail booting."
159
160 ERROR_GRKERNSEC_CHROOT_MOUNT="CONFIG_GRKERNSEC_CHROOT_MOUNT: some GRSEC features make LXC unusable see postinst notes"
161 ERROR_GRKERNSEC_CHROOT_DOUBLE="CONFIG_GRKERNSEC_CHROOT_DOUBLE: some GRSEC features make LXC unusable see postinst notes"
162 ERROR_GRKERNSEC_CHROOT_PIVOT="CONFIG_GRKERNSEC_CHROOT_PIVOT: some GRSEC features make LXC unusable see postinst notes"
163 ERROR_GRKERNSEC_CHROOT_CHMOD="CONFIG_GRKERNSEC_CHROOT_CHMOD: some GRSEC features make LXC unusable see postinst notes"
164 ERROR_GRKERNSEC_CHROOT_CAPS="CONFIG_GRKERNSEC_CHROOT_CAPS: some GRSEC features make LXC unusable see postinst notes"
165
166 DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS README doc/FAQ.txt)
167
168 S="${WORKDIR}/${PN}-${MY_P}"
169
170 REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
171
172 src_prepare() {
173 sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.ac || die
174 if [[ -n ${BACKPORTS} ]]; then
175 epatch "${WORKDIR}"/patches/*
176 fi
177
178 epatch "${FILESDIR}"/${PN}-1.0.6-bash-completion.patch
179
180 eautoreconf
181 }
182
183 src_configure() {
184 append-flags -fno-strict-aliasing
185
186 # I am not sure about the --with-rootfs-path
187 # /var/lib/lxc is probably more appropriate than
188 # /usr/lib/lxc.
189 econf \
190 --localstatedir=/var \
191 --bindir=/usr/sbin \
192 --docdir=/usr/share/doc/${PF} \
193 --with-config-path=/etc/lxc \
194 --with-rootfs-path=/var/lib/lxc/rootfs \
195 --with-distro=gentoo \
196 --with-runtime-path=/run \
197 --disable-apparmor \
198 $(use_enable cgmanager) \
199 $(use_enable doc) \
200 $(use_enable examples) \
201 $(use_enable lua) \
202 --disable-python \
203 $(use_enable seccomp)
204 }
205
206 python_compile() {
207 distutils-r1_python_compile build_ext -I ../ -L ../${PN}
208 }
209
210 src_compile() {
211 default
212
213 if use python; then
214 pushd "${S}/src/python-${PN}" > /dev/null
215 distutils-r1_src_compile
216 popd > /dev/null
217 fi
218 }
219
220 src_install() {
221 default
222
223 mv "${ED}"/usr/share/bash-completion/completions/${PN} "${ED}"/$(get_bashcompdir)/${PN}-start || die
224 bashcomp_alias ${PN}-start \
225 ${PN}-{attach,cgroup,clone,console,create,destroy,device,execute,freeze,info,monitor,snapshot,start-ephemeral,stop,unfreeze,wait}
226
227 if use python; then
228 pushd "${S}/src/python-lxc" > /dev/null
229 # Unset DOCS. This has been handled by the default target
230 unset DOCS
231 distutils-r1_src_install
232 popd > /dev/null
233 fi
234
235 keepdir /etc/lxc /var/lib/lxc/rootfs /var/log/lxc
236
237 find "${D}" -name '*.la' -delete
238
239 # Gentoo-specific additions!
240 # Use initd.3 per #517144
241 newinitd "${FILESDIR}/${PN}.initd.3" ${PN}
242
243 # lxc-devsetup script
244 exeinto /usr/libexec/${PN}
245 doexe config/init/systemd/${PN}-devsetup
246 # Use that script with the systemd service (Similar to upstream
247 # Makefile.am
248 cp "${FILESDIR}"/${PN}_at.service ${PN}_at.service || die
249 sed -i \
250 "/Restart=always/a ExecStartPre=/usr/libexec/${PN}/${PN}-devsetup" \
251 ${PN}_at.service \
252 || die "Failed to add ${PN}-devsetup to the systemd service file"
253 systemd_newunit ${PN}_at.service "lxc@.service"
254 }
255
256 pkg_postinst() {
257 elog "There is an init script provided with the package now; no documentation"
258 elog "is currently available though, so please check out /etc/init.d/lxc ."
259 elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname"
260 elog "to start the container defined into /etc/lxc/configname.conf ."
261 elog "For further information about LXC development see"
262 elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available
263 elog ""
264 }