crun/crun.spec
Dirk Mueller 2ea33b537f Accepting request 1093131 from home:fcrozat:branches:Virtualization:containers
- Update to 1.8.5:
  * scheduler: use definition from the OCI configuration file
    instead of the custom label that is now dropped and not
    supported anymore.
  * cgroup: fix creating cgroup under "domain threaded".
  * cgroup, systemd: set the memory limit on the system scope.
  * restore tty settings from the correct file descriptor.  It was
    previously restoring the settings from the wrong file
    descriptor causing the tty settings  to be changed on the
    calling terminal.
  * criu: check if the criu_join_ns_add function exists.
    Fix a segfault with new versions of CRIU.
  * linux: do not precreate devs with euid > 0.  Fix creating
    devices when running the OCI runtime as non root user.
  * linux: improve PID detection on systems that lack pidfd.
    While there is still a window of time that the PID could be
    recycled, now it is now reduced to a minimum.
  * criu: fix memory leak.
  * logging: improve error message when dlopen fails.
- Changes from 1.8.4:
  * drop custom annotation to set the time namespace and use
    the OCI specs instead.
  * cgroup: workaround cpu quota/period issue with v1.  Sometimes
    setting CPU quota period fails when a new period is lower,
    and a parent cgroup has CPU quota limit set.
  * cgroup: fix set quota to -1 on cgroup v1.
  * criu: drop loading unused functions.

OBS-URL: https://build.opensuse.org/request/show/1093131
OBS-URL: https://build.opensuse.org/package/show/Virtualization:containers/crun?expand=0&rev=25
2023-06-15 05:59:15 +00:00

92 lines
2.5 KiB
RPMSpec

#
# spec file for package crun
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: crun
Version: 1.8.5
Release: 0
Summary: OCI runtime written in C
License: GPL-2.0-or-later
URL: https://github.com/containers/crun
Source0: https://github.com/containers/crun/releases/download/%{version}/%{name}-%{version}.tar.xz
Source1: https://github.com/containers/crun/releases/download/%{version}/%{name}-%{version}.tar.xz.asc
Source2: crun.keyring
# We always run autogen.sh
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc
BuildRequires: gettext
BuildRequires: glibc-devel-static
BuildRequires: go-md2man
BuildRequires: libcap-devel
BuildRequires: libprotobuf-c-devel
BuildRequires: libseccomp-devel
BuildRequires: libtool
BuildRequires: libyajl-devel
BuildRequires: make
BuildRequires: python3
BuildRequires: python3-libmount
BuildRequires: systemd-devel
%ifnarch %{ix86}
BuildRequires: criu-devel >= 3.15
%endif
%ifarch x86_64 aarch64
BuildRequires: libkrun-devel
Requires: libkrun1
%endif
%description
crun is a runtime for running OCI containers. It is built with libkrun support
%prep
%autosetup -p1
%build
%ifarch x86_64 aarch64
export LIBKRUN="--with-libkrun"
%endif
./autogen.sh
%configure --disable-silent-rules $LIBKRUN CFLAGS='-I %{_includedir}/libseccomp'
%make_build
# TODO:
# - it would be nice to enable the test-suite, but seems to behave (and fail!)
# differently when run inside of an OBS worker, with respect to when it's
# run manually on the host... Need to investigate more.
#%check
#make test-suite.log
%install
%make_install
rm -rf %{buildroot}/%{_libdir}/lib*
%ifarch x86_64 aarch64
# allow easy krun usage with podman
ln -s %{_bindir}/crun %{buildroot}%{_bindir}/krun
%endif
%files
%license COPYING
%doc README.md
%doc SECURITY.md
%{_bindir}/%{name}
%ifarch x86_64 aarch64
%{_bindir}/krun
%endif
%{_mandir}/man1/*
%changelog