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: http://linuxcontainers.org/downloads/%{name}-%{version}.tar.gz
20 # Source0-md5: 87a9d168a6e55326303cce3b2cb7f82e
21 Source1: %{name}-pld.in.sh
22 Patch1: %{name}-pld.patch
23 URL: http://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
42 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 %define configpath /var/lib/lxc
47 Tools to create and manage containers. It contains a full featured
48 container with the isolation / virtualization of the pids, the ipc,
49 the utsname, the mount points, /proc, /sys, the network and it takes
50 into account the control groups. It is very light, flexible, and
51 provides a set of tools around the container like the monitoring with
52 asynchronous events notification, or the freeze of the container. This
53 package is useful to create Virtual Private Server, or to run isolated
54 applications like bash or sshd.
56 %description -l pl.UTF-8
57 Narzędzia do tworzenia i zarządzania kontenerami. System ten obejmuje
58 w pełni funkcjonalne kontenery z ilozacją/wirtualizacją pidów, ipc,
59 utsname, punktów montowania, /proc, /sys, sieci oraz uwzględniające
60 grupy kontrolne. Jest bardzo lekki, elastyczny i udostępnia narzędzia
61 do czynności związanych z kontenerami, takich jak monitorowanie z
62 asynchronicznym powiadamianiem o zdarzeniach czy zamrażanie. Ten
63 pakiet jest przydatny do tworzenia wirtualnych serwerów prywatnych
64 oraz uruchamiania izolowanych aplikacji, takich jak bash czy sshd.
67 Summary: Header files for lxc library
68 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki lxc
69 Group: Development/Libraries
70 Requires: %{name} = %{version}-%{release}
73 Header files for lxc library.
75 %description devel -l pl.UTF-8
76 Pliki nagłówkowe biblioteki lxc.
79 Summary: Lua binding for LXC
80 Summary(pl.UTF-8): Wiązanie Lua do LXC
82 Requires: %{name} = %{version}-%{release}
83 Requires: lua51-libs >= 5.1
85 %description -n lua-lxc
88 %description -n lua-lxc -l pl.UTF-8
91 %package -n python3-lxc
92 Summary: Python (3.x) binding for LXC
93 Summary(pl.UTF-8): Wiązanie Pythona (3.x) do LXC
95 Requires: %{name} = %{version}-%{release}
96 Requires: python3-libs >= 3.2
97 Requires: python3-modules
99 %description -n python3-lxc
100 Python (3.x) binding for LXC.
102 %description -n python3-lxc -l pl.UTF-8
103 Wiązanie Pythona (3.x) do LXC.
105 %package -n bash-completion-%{name}
106 Summary: bash-completion for LXC
107 Summary(pl.UTF-8): bashowe uzupełnianie nazw dla LXC
108 Group: Applications/Shells
110 Requires: bash-completion
112 %description -n bash-completion-%{name}
113 bash-completion for LXC.
115 %description -n bash-completion-%{name} -l pl.UTF-8
116 bashowe uzupełnianie nazw dla LXC.
122 cp -p %{SOURCE1} templates/lxc-pld.in
125 %{__aclocal} -I config
130 db2xman=docbook2X2man \
135 %{__enable_disable apparmor} \
136 %{__enable_disable lua} %{?with_lua:--with-lua-pc=lua51} \
137 %{__enable_disable python} \
138 %{__enable_disable seccomp} \
139 %{__enable_disable selinux} \
140 --with-config-path=%{configpath} \
141 --with-init-script=sysvinit,systemd \
142 --with-runtime-path=/var/run \
149 rm -rf $RPM_BUILD_ROOT
150 install -d $RPM_BUILD_ROOT{%{configpath},/var/{cache,log}/lxc}
152 SYSTEMD_UNIT_DIR=%{systemdunitdir} \
153 pcdatadir=%{_pkgconfigdir} \
154 DESTDIR=$RPM_BUILD_ROOT
156 %{__make} -C doc install \
157 DESTDIR=$RPM_BUILD_ROOT
159 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
162 %py3_comp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
163 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
166 %{__sed} -i -e '1s,#!/usr/bin/env lua,#!/usr/bin/lua51,' $RPM_BUILD_ROOT%{_bindir}/lxc-top
170 rm -rf $RPM_BUILD_ROOT
172 %post -p /sbin/ldconfig
173 %postun -p /sbin/ldconfig
176 %defattr(644,root,root,755)
177 %doc AUTHORS CONTRIBUTING MAINTAINERS README TODO doc/FAQ.txt doc/examples/*.conf
178 %attr(755,root,root) %{_bindir}/lxc-attach
179 %attr(755,root,root) %{_bindir}/lxc-autostart
180 %attr(755,root,root) %{_bindir}/lxc-cgroup
181 %attr(755,root,root) %{_bindir}/lxc-checkconfig
182 %attr(755,root,root) %{_bindir}/lxc-clone
183 %attr(755,root,root) %{_bindir}/lxc-config
184 %attr(755,root,root) %{_bindir}/lxc-console
185 %attr(755,root,root) %{_bindir}/lxc-create
186 %attr(755,root,root) %{_bindir}/lxc-destroy
187 %attr(755,root,root) %{_bindir}/lxc-execute
188 %attr(755,root,root) %{_bindir}/lxc-freeze
189 %attr(755,root,root) %{_bindir}/lxc-info
190 %attr(755,root,root) %{_bindir}/lxc-monitor
191 %attr(755,root,root) %{_bindir}/lxc-snapshot
192 %attr(755,root,root) %{_bindir}/lxc-start
193 %attr(755,root,root) %{_bindir}/lxc-stop
194 %attr(755,root,root) %{_bindir}/lxc-unfreeze
195 %attr(755,root,root) %{_bindir}/lxc-unshare
196 %attr(755,root,root) %{_bindir}/lxc-usernsexec
197 %attr(755,root,root) %{_bindir}/lxc-wait
198 %attr(755,root,root) %{_libdir}/liblxc.so.*.*.*
199 %attr(755,root,root) %ghost %{_libdir}/liblxc.so.1
200 %attr(754,root,root) /etc/rc.d/init.d/lxc
201 %{systemdunitdir}/lxc.service
202 %dir %{_libdir}/%{name}
203 %dir %{_libdir}/%{name}/rootfs
204 %{_libdir}/%{name}/rootfs/README
205 %attr(755,root,root) %{_libdir}/%{name}/lxc-devsetup
206 %attr(755,root,root) %{_libdir}/%{name}/lxc-init
207 %attr(755,root,root) %{_libdir}/%{name}/lxc-monitord
208 %attr(755,root,root) %{_libdir}/%{name}/lxc-user-nic
209 %dir %{_sysconfdir}/lxc
210 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lxc/default.conf
211 %dir %{_datadir}/%{name}
212 %{_datadir}/%{name}/lxc.functions
213 %dir %{_datadir}/%{name}/config
214 %{_datadir}/%{name}/config/centos.*.conf
215 %{_datadir}/%{name}/config/debian.*.conf
216 %{_datadir}/%{name}/config/fedora.*.conf
217 %{_datadir}/%{name}/config/gentoo.*.conf
218 %{_datadir}/%{name}/config/oracle.*.conf
219 %{_datadir}/%{name}/config/plamo.*.conf
220 %{_datadir}/%{name}/config/ubuntu-cloud.*.conf
221 %{_datadir}/%{name}/config/ubuntu.*.conf
222 %dir %{_datadir}/%{name}/hooks
223 %dir %{_datadir}/%{name}/templates
224 %attr(755,root,root) %{_datadir}/%{name}/hooks/clonehostname
225 %attr(755,root,root) %{_datadir}/%{name}/hooks/mount*
226 %attr(755,root,root) %{_datadir}/%{name}/hooks/squid-deb-proxy-client
227 %attr(755,root,root) %{_datadir}/%{name}/hooks/ubuntu-cloud-prep
228 %attr(755,root,root) %{_datadir}/%{name}/templates/lxc-*
229 %{_mandir}/man1/lxc-attach.1*
230 %{_mandir}/man1/lxc-autostart.1*
231 %{_mandir}/man1/lxc-cgroup.1*
232 %{_mandir}/man1/lxc-checkconfig.1*
233 %{_mandir}/man1/lxc-clone.1*
234 %{_mandir}/man1/lxc-config.1*
235 %{_mandir}/man1/lxc-console.1*
236 %{_mandir}/man1/lxc-create.1*
237 %{_mandir}/man1/lxc-destroy.1*
238 %{_mandir}/man1/lxc-execute.1*
239 %{_mandir}/man1/lxc-freeze.1*
240 %{_mandir}/man1/lxc-info.1*
241 %{_mandir}/man1/lxc-monitor.1*
242 %{_mandir}/man1/lxc-snapshot.1*
243 %{_mandir}/man1/lxc-start.1*
244 %{_mandir}/man1/lxc-stop.1*
245 %{_mandir}/man1/lxc-unfreeze.1*
246 %{_mandir}/man1/lxc-unshare.1*
247 %{_mandir}/man1/lxc-user-nic.1*
248 %{_mandir}/man1/lxc-usernsexec.1*
249 %{_mandir}/man1/lxc-wait.1*
250 %{_mandir}/man5/lxc-usernet.5*
251 %{_mandir}/man5/lxc.conf.5*
252 %{_mandir}/man5/lxc.container.conf.5*
253 %{_mandir}/man5/lxc.system.conf.5*
254 %{_mandir}/man7/lxc.7*
255 %lang(ja) %{_mandir}/ja/man1/lxc*.1*
256 %lang(ja) %{_mandir}/ja/man5/lxc-usernet.5*
257 %lang(ja) %{_mandir}/ja/man5/lxc.conf.5*
258 %lang(ja) %{_mandir}/ja/man5/lxc.container.conf.5*
259 %lang(ja) %{_mandir}/ja/man5/lxc.system.conf.5*
260 %lang(ja) %{_mandir}/ja/man7/lxc.7*
261 %exclude %{_mandir}/ja/man1/lxc-device.1*
262 %exclude %{_mandir}/ja/man1/lxc-ls.1*
263 %exclude %{_mandir}/ja/man1/lxc-start-ephemeral.1*
264 %exclude %{_mandir}/ja/man1/lxc-top.1*
266 %if %{without python}
268 %attr(755,root,root) %{_bindir}/lxc-ls
269 %{_mandir}/man1/lxc-ls.1*
273 %dir %attr(750,root,root) /var/log/lxc
274 %dir %attr(750,root,root) /var/cache/lxc
277 %defattr(644,root,root,755)
278 %attr(755,root,root) %{_libdir}/liblxc.so
280 %{_pkgconfigdir}/lxc.pc
284 %defattr(644,root,root,755)
285 %attr(755,root,root) %{_bindir}/lxc-top
286 %dir %{_libdir}/lua/lxc
287 %attr(755,root,root) %{_libdir}/lua/lxc/core.so
288 %{_datadir}/lua/lxc.lua
289 %{_mandir}/man1/lxc-top.1*
290 %lang(ja) %{_mandir}/ja/man1/lxc-top.1*
294 %files -n python3-lxc
295 %defattr(644,root,root,755)
296 %attr(755,root,root) %{_bindir}/lxc-device
297 %attr(755,root,root) %{_bindir}/lxc-ls
298 %attr(755,root,root) %{_bindir}/lxc-start-ephemeral
300 %attr(755,root,root) %{py3_sitedir}/_lxc.cpython-*.so
301 %{py3_sitedir}/_lxc-0.1-py*.egg-info
302 %{_mandir}/man1/lxc-device.1*
303 %{_mandir}/man1/lxc-ls.1*
304 %{_mandir}/man1/lxc-start-ephemeral.1*
305 %lang(ja) %{_mandir}/ja/man1/lxc-device.1*
306 %lang(ja) %{_mandir}/ja/man1/lxc-ls.1*
307 %lang(ja) %{_mandir}/ja/man1/lxc-start-ephemeral.1*
310 %files -n bash-completion-%{name}
311 %defattr(644,root,root,755)
312 /etc/bash_completion.d/lxc