2 # - bash-completion: /etc/bash_completion.d/lxc
3 # - package apparmor stuff
6 %bcond_without seccomp # SecComp syscall filter
7 %bcond_without apparmor # apparmor
8 %bcond_without lua # Lua binding
9 %bcond_without python # Python binding
10 %bcond_with selinux # SELinux
11 %bcond_with cgmanager # Enable cgmanager (BR: libcgmanager, libnih >= 1.0.2, libnih-dbus >= 1.0.0, dbus-1 >= 1.2.16)
15 Summary: Linux Containers userspace tools
16 Summary(pl.UTF-8): Narzędzia do kontenerów linuksowych (LXC)
19 Release: 0.%{subver}.%{rel}
21 Group: Applications/System
22 Source0: https://github.com/lxc/lxc/archive/%{name}-%{version}.%{subver}.tar.gz
23 # Source0-md5: 0758a140d451e41801588320b2192fcd
24 Source1: %{name}-pld.in.sh
25 Patch1: %{name}-pld.patch
26 Patch4: checkconfig-vserver-config.patch
27 URL: http://linuxcontainers.org/
28 BuildRequires: autoconf >= 2.50
29 BuildRequires: automake
30 BuildRequires: docbook-dtd30-sgml
31 BuildRequires: docbook-utils
32 BuildRequires: docbook2X
33 BuildRequires: gnutls-devel
34 %{?with_apparmor:BuildRequires: libapparmor-devel}
35 BuildRequires: libcap-devel
36 %{?with_seccomp:BuildRequires: libseccomp-devel}
37 %{?with_lua:BuildRequires: lua51-devel >= 5.1}
38 BuildRequires: pkgconfig
39 %{?with_python:BuildRequires: python3-devel >= 3.2}
40 BuildRequires: rpmbuild(macros) >= 1.612
41 BuildRequires: sed >= 4.0
42 Requires: rc-scripts >= 0.4.6
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.
110 %setup -q -n %{name}-%{name}-%{version}%{?subver:.%{subver}}
114 cp -p %{SOURCE1} templates/lxc-pld.in
117 %{__aclocal} -I config
122 db2xman=docbook2X2man \
127 %{__enable_disable apparmor} \
128 %{__enable_disable lua} %{?with_lua:--with-lua-pc=lua51} \
129 %{__enable_disable python} \
130 %{__enable_disable seccomp} \
131 %{__enable_disable selinux} \
132 --with-config-path=%{configpath} \
133 --with-init-script=sysvinit,systemd \
140 rm -rf $RPM_BUILD_ROOT
141 install -d $RPM_BUILD_ROOT{%{configpath},/var/{cache,log}/lxc}
143 SYSTEMD_UNIT_DIR=%{systemdunitdir} \
144 pcdatadir=%{_pkgconfigdir} \
145 DESTDIR=$RPM_BUILD_ROOT
147 %{__make} -C doc install \
148 DESTDIR=$RPM_BUILD_ROOT
150 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
153 %py3_comp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
154 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
157 %{__sed} -i -e '1s,#!/usr/bin/env lua,#!/usr/bin/lua51,' $RPM_BUILD_ROOT%{_bindir}/lxc-top
161 rm -rf $RPM_BUILD_ROOT
163 %post -p /sbin/ldconfig
164 %postun -p /sbin/ldconfig
167 %defattr(644,root,root,755)
168 %doc AUTHORS CONTRIBUTING MAINTAINERS README TODO doc/FAQ.txt doc/examples/*.conf
169 %attr(755,root,root) %{_bindir}/lxc-attach
170 %attr(755,root,root) %{_bindir}/lxc-autostart
171 %attr(755,root,root) %{_bindir}/lxc-cgroup
172 %attr(755,root,root) %{_bindir}/lxc-checkconfig
173 %attr(755,root,root) %{_bindir}/lxc-clone
174 %attr(755,root,root) %{_bindir}/lxc-config
175 %attr(755,root,root) %{_bindir}/lxc-console
176 %attr(755,root,root) %{_bindir}/lxc-create
177 %attr(755,root,root) %{_bindir}/lxc-destroy
178 %attr(755,root,root) %{_bindir}/lxc-execute
179 %attr(755,root,root) %{_bindir}/lxc-freeze
180 %attr(755,root,root) %{_bindir}/lxc-info
181 %attr(755,root,root) %{_bindir}/lxc-monitor
182 %attr(755,root,root) %{_bindir}/lxc-snapshot
183 %attr(755,root,root) %{_bindir}/lxc-start
184 %attr(755,root,root) %{_bindir}/lxc-stop
185 %attr(755,root,root) %{_bindir}/lxc-unfreeze
186 %attr(755,root,root) %{_bindir}/lxc-unshare
187 %attr(755,root,root) %{_bindir}/lxc-usernsexec
188 %attr(755,root,root) %{_bindir}/lxc-wait
189 %attr(755,root,root) %{_libdir}/liblxc.so.*.*.*
190 %attr(755,root,root) %ghost %{_libdir}/liblxc.so.1
191 %attr(754,root,root) /etc/rc.d/init.d/lxc
192 %{systemdunitdir}/lxc.service
193 %dir %{_libdir}/%{name}
194 %dir %{_libdir}/%{name}/rootfs
195 %{_libdir}/%{name}/rootfs/README
196 %attr(755,root,root) %{_libdir}/%{name}/lxc-devsetup
197 %attr(755,root,root) %{_libdir}/%{name}/lxc-init
198 %attr(755,root,root) %{_libdir}/%{name}/lxc-monitord
199 %attr(755,root,root) %{_libdir}/%{name}/lxc-user-nic
200 %dir %{_sysconfdir}/lxc
201 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lxc/default.conf
202 %dir %{_datadir}/%{name}
203 %{_datadir}/%{name}/lxc.functions
204 %dir %{_datadir}/%{name}/config
205 %{_datadir}/%{name}/config/centos.*.conf
206 %{_datadir}/%{name}/config/debian.*.conf
207 %{_datadir}/%{name}/config/fedora.*.conf
208 %{_datadir}/%{name}/config/gentoo.*.conf
209 %{_datadir}/%{name}/config/oracle.*.conf
210 %{_datadir}/%{name}/config/plamo.*.conf
211 %{_datadir}/%{name}/config/ubuntu-cloud.*.conf
212 %{_datadir}/%{name}/config/ubuntu.*.conf
213 %dir %{_datadir}/%{name}/hooks
214 %dir %{_datadir}/%{name}/templates
215 %attr(755,root,root) %{_datadir}/%{name}/hooks/clonehostname
216 %attr(755,root,root) %{_datadir}/%{name}/hooks/mount*
217 %attr(755,root,root) %{_datadir}/%{name}/hooks/squid-deb-proxy-client
218 %attr(755,root,root) %{_datadir}/%{name}/hooks/ubuntu-cloud-prep
219 %attr(755,root,root) %{_datadir}/%{name}/templates/lxc-*
220 %{_mandir}/man1/lxc-attach.1*
221 %{_mandir}/man1/lxc-autostart.1*
222 %{_mandir}/man1/lxc-cgroup.1*
223 %{_mandir}/man1/lxc-checkconfig.1*
224 %{_mandir}/man1/lxc-clone.1*
225 %{_mandir}/man1/lxc-config.1*
226 %{_mandir}/man1/lxc-console.1*
227 %{_mandir}/man1/lxc-create.1*
228 %{_mandir}/man1/lxc-destroy.1*
229 %{_mandir}/man1/lxc-execute.1*
230 %{_mandir}/man1/lxc-freeze.1*
231 %{_mandir}/man1/lxc-info.1*
232 %{_mandir}/man1/lxc-monitor.1*
233 %{_mandir}/man1/lxc-snapshot.1*
234 %{_mandir}/man1/lxc-start.1*
235 %{_mandir}/man1/lxc-stop.1*
236 %{_mandir}/man1/lxc-unfreeze.1*
237 %{_mandir}/man1/lxc-unshare.1*
238 %{_mandir}/man1/lxc-user-nic.1*
239 %{_mandir}/man1/lxc-usernsexec.1*
240 %{_mandir}/man1/lxc-wait.1*
241 %{_mandir}/man5/lxc-usernet.5*
242 %{_mandir}/man5/lxc.conf.5*
243 %{_mandir}/man5/lxc.container.conf.5*
244 %{_mandir}/man5/lxc.system.conf.5*
245 %{_mandir}/man7/lxc.7*
246 %lang(ja) %{_mandir}/ja/man1/lxc*.1*
247 %lang(ja) %{_mandir}/ja/man5/lxc-usernet.5*
248 %lang(ja) %{_mandir}/ja/man5/lxc.conf.5*
249 %lang(ja) %{_mandir}/ja/man5/lxc.container.conf.5*
250 %lang(ja) %{_mandir}/ja/man5/lxc.system.conf.5*
251 %lang(ja) %{_mandir}/ja/man7/lxc.7*
252 %exclude %{_mandir}/ja/man1/lxc-device.1*
253 %exclude %{_mandir}/ja/man1/lxc-ls.1*
254 %exclude %{_mandir}/ja/man1/lxc-start-ephemeral.1*
255 %exclude %{_mandir}/ja/man1/lxc-top.1*
257 %if %{without python}
259 %attr(755,root,root) %{_bindir}/lxc-ls
260 %{_mandir}/man1/lxc-ls.1*
264 %dir %attr(750,root,root) /var/log/lxc
265 %dir %attr(750,root,root) /var/cache/lxc
268 %defattr(644,root,root,755)
269 %attr(755,root,root) %{_libdir}/liblxc.so
271 %{_pkgconfigdir}/lxc.pc
275 %defattr(644,root,root,755)
276 %attr(755,root,root) %{_bindir}/lxc-top
277 %dir %{_libdir}/lua/lxc
278 %attr(755,root,root) %{_libdir}/lua/lxc/core.so
279 %{_datadir}/lua/lxc.lua
280 %{_mandir}/man1/lxc-top.1*
281 %lang(ja) %{_mandir}/ja/man1/lxc-top.1*
285 %files -n python3-lxc
286 %defattr(644,root,root,755)
287 %attr(755,root,root) %{_bindir}/lxc-device
288 %attr(755,root,root) %{_bindir}/lxc-ls
289 %attr(755,root,root) %{_bindir}/lxc-start-ephemeral
291 %attr(755,root,root) %{py3_sitedir}/_lxc.cpython-*.so
292 %{py3_sitedir}/_lxc-0.1-py*.egg-info
293 %{_mandir}/man1/lxc-device.1*
294 %{_mandir}/man1/lxc-ls.1*
295 %{_mandir}/man1/lxc-start-ephemeral.1*
296 %lang(ja) %{_mandir}/ja/man1/lxc-device.1*
297 %lang(ja) %{_mandir}/ja/man1/lxc-ls.1*
298 %lang(ja) %{_mandir}/ja/man1/lxc-start-ephemeral.1*