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