]> git.pld-linux.org Git - packages/lxc.git/blob - lxc.spec
Merge branch 'dev-1.0.0'
[packages/lxc.git] / lxc.spec
1 # TODO
2 # - bash-completion: /etc/bash_completion.d/lxc
3 # - package apparmor stuff
4
5 # Conditional build:
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)
12
13 Summary:        Linux Containers userspace tools
14 Summary(pl.UTF-8):      Narzędzia do kontenerów linuksowych (LXC)
15 Name:           lxc
16 Version:        1.0.0
17 Release:        0.2
18 License:        LGPL v2.1+
19 Group:          Applications/System
20 Source0:        http://linuxcontainers.org/downloads/%{name}-%{version}.tar.gz
21 # Source0-md5:  87a9d168a6e55326303cce3b2cb7f82e
22 Source1:        %{name}-pld.in.sh
23 Patch1:         %{name}-pld.patch
24 URL:            http://linuxcontainers.org/
25 BuildRequires:  autoconf >= 2.50
26 BuildRequires:  automake
27 BuildRequires:  docbook-dtd30-sgml
28 BuildRequires:  docbook-utils
29 BuildRequires:  docbook2X
30 BuildRequires:  gnutls-devel
31 %{?with_apparmor:BuildRequires: libapparmor-devel}
32 BuildRequires:  libcap-devel
33 %{?with_seccomp:BuildRequires:  libseccomp-devel}
34 %{?with_lua:BuildRequires:      lua51-devel >= 5.1}
35 BuildRequires:  pkgconfig
36 %{?with_python:BuildRequires:   python3-devel >= 3.2}
37 BuildRequires:  rpmbuild(macros) >= 1.612
38 BuildRequires:  sed >= 4.0
39 Requires:       rc-scripts >= 0.4.6
40 Requires:       which
41 Suggests:       net-tools
42 Suggests:       rsync
43 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44
45 %define         configpath      /var/lib/lxc
46
47 %description
48 Tools to create and manage containers. It contains a full featured
49 container with the isolation / virtualization of the pids, the ipc,
50 the utsname, the mount points, /proc, /sys, the network and it takes
51 into account the control groups. It is very light, flexible, and
52 provides a set of tools around the container like the monitoring with
53 asynchronous events notification, or the freeze of the container. This
54 package is useful to create Virtual Private Server, or to run isolated
55 applications like bash or sshd.
56
57 %description -l pl.UTF-8
58 Narzędzia do tworzenia i zarządzania kontenerami. System ten obejmuje
59 w pełni funkcjonalne kontenery z ilozacją/wirtualizacją pidów, ipc,
60 utsname, punktów montowania, /proc, /sys, sieci oraz uwzględniające
61 grupy kontrolne. Jest bardzo lekki, elastyczny i udostępnia narzędzia
62 do czynności związanych z kontenerami, takich jak monitorowanie z
63 asynchronicznym powiadamianiem o zdarzeniach czy zamrażanie. Ten
64 pakiet jest przydatny do tworzenia wirtualnych serwerów prywatnych
65 oraz uruchamiania izolowanych aplikacji, takich jak bash czy sshd.
66
67 %package devel
68 Summary:        Header files for lxc library
69 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki lxc
70 Group:          Development/Libraries
71 Requires:       %{name} = %{version}-%{release}
72
73 %description devel
74 Header files for lxc library.
75
76 %description devel -l pl.UTF-8
77 Pliki nagłówkowe biblioteki lxc.
78
79 %package -n lua-lxc
80 Summary:        Lua binding for LXC
81 Summary(pl.UTF-8):      Wiązanie Lua do LXC
82 Group:          Libraries
83 Requires:       %{name} = %{version}-%{release}
84 Requires:       lua51-libs >= 5.1
85
86 %description -n lua-lxc
87 Lua binding for LXC.
88
89 %description -n lua-lxc -l pl.UTF-8
90 Wiązanie Lua do LXC.
91
92 %package -n python3-lxc
93 Summary:        Python (3.x) binding for LXC
94 Summary(pl.UTF-8):      Wiązanie Pythona (3.x) do LXC
95 Group:          Libraries
96 Requires:       %{name} = %{version}-%{release}
97 Requires:       python3-libs >= 3.2
98 Requires:       python3-modules
99
100 %description -n python3-lxc
101 Python (3.x) binding for LXC.
102
103 %description -n python3-lxc -l pl.UTF-8
104 Wiązanie Pythona (3.x) do LXC.
105
106 %prep
107 %setup -q
108 %patch1 -p1
109
110 cp -p %{SOURCE1} templates/lxc-pld.in
111
112 %build
113 %{__aclocal} -I config
114 %{__autoconf}
115 %{__autoheader}
116 %{__automake}
117 %configure \
118         db2xman=docbook2X2man \
119         --disable-rpath \
120         --enable-bash \
121         --enable-doc \
122         --enable-examples \
123         %{__enable_disable apparmor} \
124         %{__enable_disable lua} %{?with_lua:--with-lua-pc=lua51} \
125         %{__enable_disable python} \
126         %{__enable_disable seccomp} \
127         %{__enable_disable selinux} \
128         --with-config-path=%{configpath} \
129         --with-init-script=sysvinit,systemd \
130         --with-runtime-path=/var/run \
131         --with-distro=pld
132
133 %{__make}
134 %{__make} -C doc
135
136 %install
137 rm -rf $RPM_BUILD_ROOT
138 install -d $RPM_BUILD_ROOT{%{configpath},/var/{cache,log}/lxc}
139 %{__make} install \
140         SYSTEMD_UNIT_DIR=%{systemdunitdir} \
141         pcdatadir=%{_pkgconfigdir} \
142         DESTDIR=$RPM_BUILD_ROOT
143
144 %{__make} -C doc install \
145         DESTDIR=$RPM_BUILD_ROOT
146
147 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}
148
149 %if %{with python}
150 %py3_comp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
151 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitedir}/lxc
152 %endif
153 %if %{with lua}
154 %{__sed} -i -e '1s,#!/usr/bin/env lua,#!/usr/bin/lua51,' $RPM_BUILD_ROOT%{_bindir}/lxc-top
155 %endif
156
157 %clean
158 rm -rf $RPM_BUILD_ROOT
159
160 %post   -p /sbin/ldconfig
161 %postun -p /sbin/ldconfig
162
163 %files
164 %defattr(644,root,root,755)
165 %doc AUTHORS CONTRIBUTING MAINTAINERS README TODO doc/FAQ.txt doc/examples/*.conf
166 %attr(755,root,root) %{_bindir}/lxc-attach
167 %attr(755,root,root) %{_bindir}/lxc-autostart
168 %attr(755,root,root) %{_bindir}/lxc-cgroup
169 %attr(755,root,root) %{_bindir}/lxc-checkconfig
170 %attr(755,root,root) %{_bindir}/lxc-clone
171 %attr(755,root,root) %{_bindir}/lxc-config
172 %attr(755,root,root) %{_bindir}/lxc-console
173 %attr(755,root,root) %{_bindir}/lxc-create
174 %attr(755,root,root) %{_bindir}/lxc-destroy
175 %attr(755,root,root) %{_bindir}/lxc-execute
176 %attr(755,root,root) %{_bindir}/lxc-freeze
177 %attr(755,root,root) %{_bindir}/lxc-info
178 %attr(755,root,root) %{_bindir}/lxc-monitor
179 %attr(755,root,root) %{_bindir}/lxc-snapshot
180 %attr(755,root,root) %{_bindir}/lxc-start
181 %attr(755,root,root) %{_bindir}/lxc-stop
182 %attr(755,root,root) %{_bindir}/lxc-unfreeze
183 %attr(755,root,root) %{_bindir}/lxc-unshare
184 %attr(755,root,root) %{_bindir}/lxc-usernsexec
185 %attr(755,root,root) %{_bindir}/lxc-wait
186 %attr(755,root,root) %{_libdir}/liblxc.so.*.*.*
187 %attr(755,root,root) %ghost %{_libdir}/liblxc.so.1
188 %attr(754,root,root) /etc/rc.d/init.d/lxc
189 %{systemdunitdir}/lxc.service
190 %dir %{_libdir}/%{name}
191 %dir %{_libdir}/%{name}/rootfs
192 %{_libdir}/%{name}/rootfs/README
193 %attr(755,root,root) %{_libdir}/%{name}/lxc-devsetup
194 %attr(755,root,root) %{_libdir}/%{name}/lxc-init
195 %attr(755,root,root) %{_libdir}/%{name}/lxc-monitord
196 %attr(755,root,root) %{_libdir}/%{name}/lxc-user-nic
197 %dir %{_sysconfdir}/lxc
198 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lxc/default.conf
199 %dir %{_datadir}/%{name}
200 %{_datadir}/%{name}/lxc.functions
201 %dir %{_datadir}/%{name}/config
202 %{_datadir}/%{name}/config/centos.*.conf
203 %{_datadir}/%{name}/config/debian.*.conf
204 %{_datadir}/%{name}/config/fedora.*.conf
205 %{_datadir}/%{name}/config/gentoo.*.conf
206 %{_datadir}/%{name}/config/oracle.*.conf
207 %{_datadir}/%{name}/config/plamo.*.conf
208 %{_datadir}/%{name}/config/ubuntu-cloud.*.conf
209 %{_datadir}/%{name}/config/ubuntu.*.conf
210 %dir %{_datadir}/%{name}/hooks
211 %dir %{_datadir}/%{name}/templates
212 %attr(755,root,root) %{_datadir}/%{name}/hooks/clonehostname
213 %attr(755,root,root) %{_datadir}/%{name}/hooks/mount*
214 %attr(755,root,root) %{_datadir}/%{name}/hooks/squid-deb-proxy-client
215 %attr(755,root,root) %{_datadir}/%{name}/hooks/ubuntu-cloud-prep
216 %attr(755,root,root) %{_datadir}/%{name}/templates/lxc-*
217 %{_mandir}/man1/lxc-attach.1*
218 %{_mandir}/man1/lxc-autostart.1*
219 %{_mandir}/man1/lxc-cgroup.1*
220 %{_mandir}/man1/lxc-checkconfig.1*
221 %{_mandir}/man1/lxc-clone.1*
222 %{_mandir}/man1/lxc-config.1*
223 %{_mandir}/man1/lxc-console.1*
224 %{_mandir}/man1/lxc-create.1*
225 %{_mandir}/man1/lxc-destroy.1*
226 %{_mandir}/man1/lxc-execute.1*
227 %{_mandir}/man1/lxc-freeze.1*
228 %{_mandir}/man1/lxc-info.1*
229 %{_mandir}/man1/lxc-monitor.1*
230 %{_mandir}/man1/lxc-snapshot.1*
231 %{_mandir}/man1/lxc-start.1*
232 %{_mandir}/man1/lxc-stop.1*
233 %{_mandir}/man1/lxc-unfreeze.1*
234 %{_mandir}/man1/lxc-unshare.1*
235 %{_mandir}/man1/lxc-user-nic.1*
236 %{_mandir}/man1/lxc-usernsexec.1*
237 %{_mandir}/man1/lxc-wait.1*
238 %{_mandir}/man5/lxc-usernet.5*
239 %{_mandir}/man5/lxc.conf.5*
240 %{_mandir}/man5/lxc.container.conf.5*
241 %{_mandir}/man5/lxc.system.conf.5*
242 %{_mandir}/man7/lxc.7*
243 %lang(ja) %{_mandir}/ja/man1/lxc*.1*
244 %lang(ja) %{_mandir}/ja/man5/lxc-usernet.5*
245 %lang(ja) %{_mandir}/ja/man5/lxc.conf.5*
246 %lang(ja) %{_mandir}/ja/man5/lxc.container.conf.5*
247 %lang(ja) %{_mandir}/ja/man5/lxc.system.conf.5*
248 %lang(ja) %{_mandir}/ja/man7/lxc.7*
249 %exclude %{_mandir}/ja/man1/lxc-device.1*
250 %exclude %{_mandir}/ja/man1/lxc-ls.1*
251 %exclude %{_mandir}/ja/man1/lxc-start-ephemeral.1*
252 %exclude %{_mandir}/ja/man1/lxc-top.1*
253
254 %if %{without python}
255 # legacy version
256 %attr(755,root,root) %{_bindir}/lxc-ls
257 %{_mandir}/man1/lxc-ls.1*
258 %endif
259
260 %dir %{configpath}
261 %dir %attr(750,root,root) /var/log/lxc
262 %dir %attr(750,root,root) /var/cache/lxc
263
264 %files devel
265 %defattr(644,root,root,755)
266 %attr(755,root,root) %{_libdir}/liblxc.so
267 %{_includedir}/lxc
268 %{_pkgconfigdir}/lxc.pc
269
270 %if %{with lua}
271 %files -n lua-lxc
272 %defattr(644,root,root,755)
273 %attr(755,root,root) %{_bindir}/lxc-top
274 %dir %{_libdir}/lua/lxc
275 %attr(755,root,root) %{_libdir}/lua/lxc/core.so
276 %{_datadir}/lua/lxc.lua
277 %{_mandir}/man1/lxc-top.1*
278 %lang(ja) %{_mandir}/ja/man1/lxc-top.1*
279 %endif
280
281 %if %{with python}
282 %files -n python3-lxc
283 %defattr(644,root,root,755)
284 %attr(755,root,root) %{_bindir}/lxc-device
285 %attr(755,root,root) %{_bindir}/lxc-ls
286 %attr(755,root,root) %{_bindir}/lxc-start-ephemeral
287 %{py3_sitedir}/lxc
288 %attr(755,root,root) %{py3_sitedir}/_lxc.cpython-*.so
289 %{py3_sitedir}/_lxc-0.1-py*.egg-info
290 %{_mandir}/man1/lxc-device.1*
291 %{_mandir}/man1/lxc-ls.1*
292 %{_mandir}/man1/lxc-start-ephemeral.1*
293 %lang(ja) %{_mandir}/ja/man1/lxc-device.1*
294 %lang(ja) %{_mandir}/ja/man1/lxc-ls.1*
295 %lang(ja) %{_mandir}/ja/man1/lxc-start-ephemeral.1*
296 %endif
This page took 0.060436 seconds and 4 git commands to generate.