Репозиторий Sisyphus
Последнее обновление: 17 марта 2019 | Пакетов: 17648 | Посещений: 13227453
en ru br
Репозитории ALT
5.1: 0.6.3-alt2

Группа :: Система/Настройка/Прочее
Пакет: lxc

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

# lxc: linux Container library
# (C) Copyright IBM Corp. 2007, 2008
# (C) ALT Linux Team 2009-2018
# Authors:
# Daniel Lezcano <dlezcano at fr.ibm.com>
# Denis Pynkin <dans at altlinux.org>
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# Lesser General Public License for more details.
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
# Spec file adapted for ALT Linux.

%def_with systemd
%define init_script systemd,sysvinit

Name: lxc
Version: 3.0.3
Release: alt2
Packager: Denis Pynkin <dans at altlinux.org>

URL: https://linuxcontainers.org/
Source: %name-%version.tar
Source1: lxc-net.sysconfig
Patch: %name-%version-%release.patch

Summary: %name : Linux Container
Group: System/Configuration/Other
License: LGPL
Requires: libcap gzip-utils
%ifarch x86_64 %arm
Requires: criu
Requires: iproute2 bridge-utils dnsmasq wget
BuildRequires: libcap-devel docbook-utils glibc-kernheaders
BuildRequires: docbook2X xsltproc
BuildRequires: rpm-macros-alternatives
BuildRequires: libnih-devel
BuildRequires: libdbus-devel
BuildRequires: libgnutls-devel
BuildRequires: libseccomp-devel
BuildRequires: libselinux-devel

# Needed to disable auto requirements from distro templates

%add_findreq_skiplist %_datadir/%name/*

# Do not need to check

%add_findreq_skiplist %_libexecdir/%name/lxc-apparmor-load
%add_findreq_skiplist %_libexecdir/%name/lxc-net

Requires: openssl rsync
BuildRequires: libcap libcap-devel docbook2X graphviz

%{?_with_systemd:BuildRequires: systemd-devel}

Containers are insulated areas inside a system, which have their own namespace
for filesystem, network, PID, IPC, CPU and memory allocation and which can be
created using the Control Group and Namespace features included in the Linux

This package provides the lxc-* tools, which can be used to start a single
daemon in a container, or to boot an entire "containerized" system, and to
manage and debug your containers.

%package sysvinit
Summary: %{name} init scripts for SysVinit
Group: System/Configuration/Other
Requires: %{name}
Requires: /sbin/chkconfig
BuildArch: noarch
%description sysvinit
The %{name}-sysvinit package contains init scripts for SysVinit
# Skip automatic dependency to optional lsb scripts
%add_findreq_skiplist %{_initdir}/*

%package libs
Summary: Shared library files for %{name}
Group: System/Configuration/Other
%description libs
The %{name}-libs package contains libraries for running %{name} applications.

%package devel
Summary: development library for %name
Group: Development/Other

%description devel
The %name-devel package contains header files and library needed for
development of the linux containers.

%set_pam_name pam_cgfs
%package -n %pam_name
Summary: %summary
Group: System/Base
BuildRequires(pre): libpam-devel

%description -n %pam_name
This package provides a Pluggable Authentication Module (PAM) to provide
logged-in users with a set of cgroups which they can administer.
This allows for instance unprivileged containers, and session
management using cgroup process tracking.

%patch -p1
%ifarch %e2k
# redefined typedef unsigned int __u32;
sed -i 's,-Werror,,' configure.ac

%configure -disable-rpath \
   --disable-cgmanager \
   --localstatedir=%_var \
   --with-config-path=%_var/lib/lxc \
   --with-distro=altlinux \
   --enable-capabilities \
   --enable-pam \
   --enable-seccomp \
   --enable-selinux \


mkdir -p %buildroot%_localstatedir/%name
mkdir -p %buildroot%_cachedir/%name
install -pm644 %SOURCE1 %buildroot/%_sysconfdir/sysconfig/lxc-net

%post sysvinit
if [ $1 -eq 1 ]; then
/sbin/chkconfig --add lxc
/sbin/chkconfig --add lxc-net

%preun sysvinit
if [ $1 -eq 0 ]; then
/sbin/chkconfig --del lxc
/sbin/chkconfig --del lxc-net

%config(noreplace) %{_sysconfdir}/lxc/*
%config(noreplace) %{_sysconfdir}/sysconfig/lxc*
%{_unitdir}/lxc at .service

%files sysvinit

%files libs
%attr(555,root,root) %{_libexecdir}/%{name}/lxc-containers
%attr(555,root,root) %{_libexecdir}/%{name}/lxc-net
%attr(4111,root,root) %{_libexecdir}/%{name}/lxc-user-nic

%files devel

%files -n %pam_name


Полный changelog можно просмотреть здесь

дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin