2 # - package apparmor stuff
5 %bcond_without seccomp # SecComp syscall filter
6 %bcond_without apparmor # apparmor
7 %bcond_without lua # Lua binding
8 %bcond_without python # Python binding
9 %bcond_with selinux # SELinux
10 %bcond_with cgmanager # Enable cgmanager (BR: libcgmanager, libnih >= 1.0.2, libnih-dbus >= 1.0.0, dbus-1 >= 1.2.16)
12 Summary: Linux Containers userspace tools
13 Summary(pl.UTF-8): Narzędzia do kontenerów linuksowych (LXC)
18 Group: Applications/System
19 Source0: https://www.linuxcontainers.org/downloads/%{name}-%{version}.tar.gz
20 # Source0-md5: 9d9af9e9e69a831cd50b58d91c786013
21 Source1: %{name}-pld.in.sh
22 Patch1: %{name}-pld.patch
23 URL: https://www.linuxcontainers.org/
24 BuildRequires: autoconf >= 2.50
25 BuildRequires: automake
26 BuildRequires: docbook-dtd30-sgml
27 BuildRequires: docbook-utils
28 BuildRequires: docbook2X
29 BuildRequires: gnutls-devel
30 %{?with_apparmor:BuildRequires: libapparmor-devel}
31 BuildRequires: libcap-devel
32 %{?with_seccomp:BuildRequires: libseccomp-devel}
33 %{?with_lua:BuildRequires: lua51-devel >= 5.1}
34 BuildRequires: pkgconfig
35 %{?with_python:BuildRequires: python3-devel >= 3.2}
36 BuildRequires: rpmbuild(macros) >= 1.612
37 BuildRequires: sed >= 4.0
38 Requires: rc-scripts >= 0.4.6
41 Suggests: gnupg-plugin-keys_curl
42 Suggests: gnupg-plugin-keys_hkp
46 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48 %define configpath /var/lib/lxc
51 Tools to create and manage containers. It contains a full featured
52 container with the isolation / virtualization of the pids, the ipc,
53 the utsname, the mount points, /proc, /sys, the network and it takes
54 into account the control groups. It is very light, flexible, and
55 provides a set of tools around the container like the monitoring with
56 asynchronous events notification, or the freeze of the container. This
57 package is useful to create Virtual Private Server, or to run isolated
58 applications like bash or sshd.
60 %description -l pl.UTF-8
61 Narzędzia do tworzenia i zarządzania kontenerami. System ten obejmuje
62 w pełni funkcjonalne kontenery z ilozacją/wirtualizacją pidów, ipc,
63 utsname, punktów montowania, /proc, /sys, sieci oraz uwzględniające
64 grupy kontrolne. Jest bardzo lekki, elastyczny i udostępnia narzędzia
65 do czynności związanych z kontenerami, takich jak monitorowanie z
66 asynchronicznym powiadamianiem o zdarzeniach czy zamrażanie. Ten
67 pakiet jest przydatny do tworzenia wirtualnych serwerów prywatnych
68 oraz uruchamiania izolowanych aplikacji, takich jak bash czy sshd.
71 Summary: Header files for lxc library
72 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki lxc
73 Group: Development/Libraries
74 Requires: %{name} = %{version}-%{release}
77 Header files for lxc library.
79 %description devel -l pl.UTF-8
80 Pliki nagłówkowe biblioteki lxc.
83 Summary: Lua binding for LXC
84 Summary(pl.UTF-8): Wiązanie Lua do LXC
86 Requires: %{name} = %{version}-%{release}
87 Requires: lua51-libs >= 5.1
89 %description -n lua-lxc
92 %description -n lua-lxc -l pl.UTF-8
95 %package -n python3-lxc
96 Summary: Python (3.x) binding for LXC
97 Summary(pl.UTF-8): Wiązanie Pythona (3.x) do LXC
99 Requires: %{name} = %{version}-%{release}
100 Requires: python3-libs >= 3.2
101 Requires: python3-modules
103 %description -n python3-lxc
104 Python (3.x) binding for LXC.
106 %description -n python3-lxc -l pl.UTF-8
107 Wiązanie Pythona (3.x) do LXC.
109 %package -n bash-completion-%{name}
110 Summary: bash-completion for LXC
111 Summary(pl.UTF-8): bashowe uzupełnianie nazw dla LXC
112 Group: Applications/Shells
114 Requires: bash-completion
116 %description -n bash-completion-%{name}
117 bash-completion for LXC.
119 %description -n bash-completion-%{name} -l pl.UTF-8
120 bashowe uzupełnianie nazw dla LXC.
126 cp -p %{SOURCE1} templates/lxc-pld.in
129 %{__aclocal} -I config
134 db2xman=docbook2X2man \
139 %{__enable_disable apparmor} \
140 %{__enable_disable lua} %{?with_lua:--with-lua-pc=lua51} \
141 %{__enable_disable python} \
142 %{__enable_disable seccomp} \
143 %{__enable_disable selinux} \
144 --with-config-path=%{configpath} \
145 --with-init-script=sysvinit,systemd \
146 --with-runtime-path=/var/run \
153 rm -rf $RPM_BUILD_ROOT
154 install -d $RPM_BUILD_ROOT{%{configpath},%{configpath}snap,/var/{cache,log}/lxc}
156 SYSTEMD_UNIT_DIR=%{systemdunitdir} \
157 pcdatadir=%{_pkgconfigdir} \
158 DESTDIR=$RPM_BUILD_ROOT
160 %{__make} -C doc install \
161 DESTDIR=$RPM_BUILD_ROOT
163 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
165 # apparmor profiles are not packaged, remove to avoid packagers confusion
166 %{__rm} -r $RPM_BUILD_ROOT/etc/apparmor.d
168 # yum plugin, no idea where to package this
169 %{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/lxc-patch.py
172 %py3_comp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
173 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
176 %{__sed} -i -e '1s,#!/usr/bin/env lua,#!/usr/bin/lua51,' $RPM_BUILD_ROOT%{_bindir}/lxc-top
180 rm -rf $RPM_BUILD_ROOT
182 %post -p /sbin/ldconfig
183 %postun -p /sbin/ldconfig
186 %defattr(644,root,root,755)
187 %doc AUTHORS CONTRIBUTING MAINTAINERS README doc/FAQ.txt doc/examples/*.conf
188 %attr(755,root,root) %{_bindir}/lxc-attach
189 %attr(755,root,root) %{_bindir}/lxc-autostart
190 %attr(755,root,root) %{_bindir}/lxc-cgroup
191 %attr(755,root,root) %{_bindir}/lxc-checkconfig
192 %attr(755,root,root) %{_bindir}/lxc-clone
193 %attr(755,root,root) %{_bindir}/lxc-config
194 %attr(755,root,root) %{_bindir}/lxc-console
195 %attr(755,root,root) %{_bindir}/lxc-create
196 %attr(755,root,root) %{_bindir}/lxc-destroy
197 %attr(755,root,root) %{_bindir}/lxc-execute
198 %attr(755,root,root) %{_bindir}/lxc-freeze
199 %attr(755,root,root) %{_bindir}/lxc-info
200 %attr(755,root,root) %{_bindir}/lxc-monitor
201 %attr(755,root,root) %{_bindir}/lxc-snapshot
202 %attr(755,root,root) %{_bindir}/lxc-start
203 %attr(755,root,root) %{_bindir}/lxc-stop
204 %attr(755,root,root) %{_bindir}/lxc-unfreeze
205 %attr(755,root,root) %{_bindir}/lxc-unshare
206 %attr(755,root,root) %{_bindir}/lxc-usernsexec
207 %attr(755,root,root) %{_bindir}/lxc-wait
208 %attr(755,root,root) %{_sbindir}/init.lxc
209 %attr(755,root,root) %{_libdir}/liblxc.so.*.*.*
210 %attr(755,root,root) %ghost %{_libdir}/liblxc.so.1
211 %attr(754,root,root) /etc/rc.d/init.d/lxc
212 %{systemdunitdir}/lxc.service
213 %dir %{_libdir}/%{name}
214 %dir %{_libdir}/%{name}/rootfs
215 %{_libdir}/%{name}/rootfs/README
216 %attr(755,root,root) %{_libdir}/%{name}/lxc-devsetup
217 %attr(755,root,root) %{_libdir}/%{name}/lxc-monitord
218 %attr(755,root,root) %{_libdir}/%{name}/lxc-user-nic
219 %attr(755,root,root) %{_libdir}/%{name}/lxc-autostart-helper
220 %dir %{_sysconfdir}/lxc
221 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lxc/default.conf
222 %dir %{_datadir}/%{name}
223 %{_datadir}/%{name}/lxc.functions
224 %dir %{_datadir}/%{name}/config
225 %{_datadir}/%{name}/config/centos.*.conf
226 %{_datadir}/%{name}/config/common.seccomp
227 %{_datadir}/%{name}/config/debian.*.conf
228 %{_datadir}/%{name}/config/fedora.*.conf
229 %{_datadir}/%{name}/config/gentoo.*.conf
230 %{_datadir}/%{name}/config/oracle.*.conf
231 %{_datadir}/%{name}/config/plamo.*.conf
232 %{_datadir}/%{name}/config/ubuntu-cloud.*.conf
233 %{_datadir}/%{name}/config/ubuntu.*.conf
234 %dir %{_datadir}/%{name}/hooks
235 %dir %{_datadir}/%{name}/templates
236 %attr(755,root,root) %{_datadir}/%{name}/hooks/clonehostname
237 %attr(755,root,root) %{_datadir}/%{name}/hooks/mount*
238 %attr(755,root,root) %{_datadir}/%{name}/hooks/squid-deb-proxy-client
239 %attr(755,root,root) %{_datadir}/%{name}/hooks/ubuntu-cloud-prep
240 %attr(755,root,root) %{_datadir}/%{name}/templates/lxc-*
241 %{_mandir}/man1/lxc-attach.1*
242 %{_mandir}/man1/lxc-autostart.1*
243 %{_mandir}/man1/lxc-cgroup.1*
244 %{_mandir}/man1/lxc-checkconfig.1*
245 %{_mandir}/man1/lxc-clone.1*
246 %{_mandir}/man1/lxc-config.1*
247 %{_mandir}/man1/lxc-console.1*
248 %{_mandir}/man1/lxc-create.1*
249 %{_mandir}/man1/lxc-destroy.1*
250 %{_mandir}/man1/lxc-execute.1*
251 %{_mandir}/man1/lxc-freeze.1*
252 %{_mandir}/man1/lxc-info.1*
253 %{_mandir}/man1/lxc-monitor.1*
254 %{_mandir}/man1/lxc-snapshot.1*
255 %{_mandir}/man1/lxc-start.1*
256 %{_mandir}/man1/lxc-stop.1*
257 %{_mandir}/man1/lxc-unfreeze.1*
258 %{_mandir}/man1/lxc-unshare.1*
259 %{_mandir}/man1/lxc-user-nic.1*
260 %{_mandir}/man1/lxc-usernsexec.1*
261 %{_mandir}/man1/lxc-wait.1*
262 %{_mandir}/man5/lxc-usernet.5*
263 %{_mandir}/man5/lxc.conf.5*
264 %{_mandir}/man5/lxc.container.conf.5*
265 %{_mandir}/man5/lxc.system.conf.5*
266 %{_mandir}/man7/lxc.7*
267 %lang(ja) %{_mandir}/ja/man1/lxc*.1*
268 %lang(ja) %{_mandir}/ja/man5/lxc-usernet.5*
269 %lang(ja) %{_mandir}/ja/man5/lxc.conf.5*
270 %lang(ja) %{_mandir}/ja/man5/lxc.container.conf.5*
271 %lang(ja) %{_mandir}/ja/man5/lxc.system.conf.5*
272 %lang(ja) %{_mandir}/ja/man7/lxc.7*
273 %exclude %{_mandir}/ja/man1/lxc-device.1*
274 %exclude %{_mandir}/ja/man1/lxc-ls.1*
275 %exclude %{_mandir}/ja/man1/lxc-start-ephemeral.1*
276 %exclude %{_mandir}/ja/man1/lxc-top.1*
279 %if %{without python}
281 %attr(755,root,root) %{_bindir}/lxc-ls
282 %{_mandir}/man1/lxc-ls.1*
286 %dir %{configpath}snap
287 %dir %attr(750,root,root) /var/log/lxc
288 %dir %attr(750,root,root) /var/cache/lxc
291 %defattr(644,root,root,755)
292 %attr(755,root,root) %{_libdir}/liblxc.so
294 %{_pkgconfigdir}/lxc.pc
298 %defattr(644,root,root,755)
299 %attr(755,root,root) %{_bindir}/lxc-top
300 %dir %{_libdir}/lua/lxc
301 %attr(755,root,root) %{_libdir}/lua/lxc/core.so
302 %{_datadir}/lua/lxc.lua
303 %{_mandir}/man1/lxc-top.1*
304 %lang(ja) %{_mandir}/ja/man1/lxc-top.1*
308 %files -n python3-lxc
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_bindir}/lxc-device
311 %attr(755,root,root) %{_bindir}/lxc-ls
312 %attr(755,root,root) %{_bindir}/lxc-start-ephemeral
314 %attr(755,root,root) %{py3_sitedir}/_lxc.cpython-*.so
315 %{py3_sitedir}/_lxc-0.1-py*.egg-info
316 %{_mandir}/man1/lxc-device.1*
317 %{_mandir}/man1/lxc-ls.1*
318 %{_mandir}/man1/lxc-start-ephemeral.1*
319 %lang(ja) %{_mandir}/ja/man1/lxc-device.1*
320 %lang(ja) %{_mandir}/ja/man1/lxc-ls.1*
321 %lang(ja) %{_mandir}/ja/man1/lxc-start-ephemeral.1*
324 %files -n bash-completion-%{name}
325 %defattr(644,root,root,755)
326 /etc/bash_completion.d/lxc