|
|
|
@ -1,87 +1,124 @@
|
|
|
|
|
# The canonical copy of this spec file is upstream at:
|
|
|
|
|
# https://github.com/projectatomic/rpm-ostree/blob/master/packaging/rpm-ostree.spec.in
|
|
|
|
|
# https://github.com/coreos/rpm-ostree/blob/main/packaging/rpm-ostree.spec.in
|
|
|
|
|
|
|
|
|
|
Summary: Hybrid image/package system
|
|
|
|
|
Name: rpm-ostree
|
|
|
|
|
Version: 2020.7
|
|
|
|
|
Release: 1%{?dist}
|
|
|
|
|
#VCS: https://github.com/cgwalters/rpm-ostree
|
|
|
|
|
# This tarball is generated via "cd packaging && make -f Makefile.dist-packaging dist-snapshot"
|
|
|
|
|
# in the upstream git. If rust is enabled, it contains vendored sources.
|
|
|
|
|
Source0: rpm-ostree-%{version}.tar.xz
|
|
|
|
|
Version: 2022.10.117.g52714b51
|
|
|
|
|
Release: 3%{?dist}
|
|
|
|
|
License: LGPLv2+
|
|
|
|
|
URL: https://github.com/projectatomic/rpm-ostree
|
|
|
|
|
URL: https://github.com/coreos/rpm-ostree
|
|
|
|
|
# This tarball is generated via "cd packaging && make -f Makefile.dist-packaging dist-snapshot"
|
|
|
|
|
# in the upstream git. It also contains vendored Rust sources. This is generated from the "rhel8" branch.
|
|
|
|
|
Source0: https://github.com/coreos/rpm-ostree/releases/download/v%{version}/rpm-ostree-%{version}.tar.xz
|
|
|
|
|
|
|
|
|
|
%if !%{defined rust_arches}
|
|
|
|
|
# It's not defined yet in the base CentOS7 root
|
|
|
|
|
%define rust_arches x86_64 i686 armv7hl aarch64 ppc64 ppc64le s390x
|
|
|
|
|
%endif # defined rust_arches
|
|
|
|
|
Patch0: 0001-override-Honor-install-in-container-case-too.patch
|
|
|
|
|
Patch1: 0002-scripts-also-ignore-kernel-debug-modules.posttrans.patch
|
|
|
|
|
|
|
|
|
|
ExclusiveArch: %{rust_arches}
|
|
|
|
|
|
|
|
|
|
%if 0%{?fedora}
|
|
|
|
|
BuildRequires: make
|
|
|
|
|
%if 0%{?rhel} && !0%{?eln}
|
|
|
|
|
BuildRequires: rust-toolset
|
|
|
|
|
%else
|
|
|
|
|
BuildRequires: rust-packaging
|
|
|
|
|
BuildRequires: cargo
|
|
|
|
|
BuildRequires: rust
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Enable ASAN + UBSAN
|
|
|
|
|
%bcond_with sanitizers
|
|
|
|
|
# Embedded unit tests
|
|
|
|
|
%bcond_with bin_unit_tests
|
|
|
|
|
|
|
|
|
|
# This is copied from the libdnf spec
|
|
|
|
|
%if 0%{?rhel} && ! 0%{?centos}
|
|
|
|
|
%bcond_without rhsm
|
|
|
|
|
%else
|
|
|
|
|
# assume el8
|
|
|
|
|
BuildRequires: rust-toolset
|
|
|
|
|
%bcond_with rhsm
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# RHEL8 doesn't ship zchunk today. See also the comments
|
|
|
|
|
# in configure.ac around this as libdnf/librepo need to be in
|
|
|
|
|
# sync, and today we bundle libdnf but not librepo.
|
|
|
|
|
%if 0%{?rhel} && 0%{?rhel} <= 8
|
|
|
|
|
%bcond_with zchunk
|
|
|
|
|
%else
|
|
|
|
|
%bcond_without zchunk
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if 0%{?fedora} >= 34
|
|
|
|
|
%define sqlite_rpmdb_default "--enable-sqlite-rpmdb-default"
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# For the autofiles bits below
|
|
|
|
|
BuildRequires: /usr/bin/python3
|
|
|
|
|
BuildRequires: python3-devel
|
|
|
|
|
# We always run autogen.sh
|
|
|
|
|
BuildRequires: autoconf automake libtool git
|
|
|
|
|
# For docs
|
|
|
|
|
BuildRequires: chrpath
|
|
|
|
|
BuildRequires: gtk-doc
|
|
|
|
|
BuildRequires: gperf
|
|
|
|
|
BuildRequires: gnome-common
|
|
|
|
|
BuildRequires: /usr/bin/g-ir-scanner
|
|
|
|
|
# Core requirements
|
|
|
|
|
# One way to check this: `objdump -p /path/to/rpm-ostree | grep LIBOSTREE` and pick the highest (though that might miss e.g. new struct members)
|
|
|
|
|
BuildRequires: pkgconfig(ostree-1) >= 2019.2
|
|
|
|
|
BuildRequires: pkgconfig(ostree-1) >= 2020.7
|
|
|
|
|
BuildRequires: pkgconfig(polkit-gobject-1)
|
|
|
|
|
BuildRequires: pkgconfig(json-glib-1.0)
|
|
|
|
|
BuildRequires: pkgconfig(rpm)
|
|
|
|
|
BuildRequires: pkgconfig(rpm) >= 4.14.0
|
|
|
|
|
BuildRequires: pkgconfig(libarchive)
|
|
|
|
|
BuildRequires: pkgconfig(libsystemd)
|
|
|
|
|
BuildRequires: libcap-devel
|
|
|
|
|
BuildRequires: libattr-devel
|
|
|
|
|
|
|
|
|
|
# We currently interact directly with librepo
|
|
|
|
|
# We currently interact directly with librepo (libdnf below also pulls it in,
|
|
|
|
|
# but duplicating to be clear)
|
|
|
|
|
BuildRequires: pkgconfig(librepo)
|
|
|
|
|
|
|
|
|
|
# Needed by curl-rust
|
|
|
|
|
BuildRequires: pkgconfig(libcurl)
|
|
|
|
|
|
|
|
|
|
# libdnf bundling
|
|
|
|
|
# We're using RPATH to pick up our bundled version
|
|
|
|
|
%global __requires_exclude ^libdnf[.]so[.].*$
|
|
|
|
|
|
|
|
|
|
# Our bundled libdnf.so.2 is for us only
|
|
|
|
|
%global __provides_exclude_from ^%{_libdir}/%{name}/.*$
|
|
|
|
|
|
|
|
|
|
BuildRequires: cmake
|
|
|
|
|
BuildRequires: pkgconfig(expat)
|
|
|
|
|
BuildRequires: pkgconfig(check)
|
|
|
|
|
|
|
|
|
|
# We use some libsolv types directly too (libdnf below also pulls it in,
|
|
|
|
|
# but duplicating to be clear)
|
|
|
|
|
BuildRequires: pkgconfig(libsolv)
|
|
|
|
|
|
|
|
|
|
# We need g++ for libdnf
|
|
|
|
|
BuildRequires: gcc-c++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# more libdnf build deps (see libdnf's spec for versions)
|
|
|
|
|
# more libdnf build deps (see libdnf's spec for versions; maintain ordering)
|
|
|
|
|
%global libsolv_version 0.7.17
|
|
|
|
|
%global libmodulemd_version 2.11.2-2
|
|
|
|
|
%global librepo_version 1.13.0
|
|
|
|
|
%global swig_version 3.0.12
|
|
|
|
|
%global libmodulemd_version 2.5.0
|
|
|
|
|
BuildRequires: swig >= %{swig_version}
|
|
|
|
|
BuildRequires: pkgconfig(modulemd-2.0) >= %{libmodulemd_version}
|
|
|
|
|
BuildRequires: pkgconfig(librepo) >= %{librepo_version}
|
|
|
|
|
BuildRequires: libsolv-devel >= %{libsolv_version}
|
|
|
|
|
BuildRequires: pkgconfig(json-c)
|
|
|
|
|
BuildRequires: pkgconfig(cppunit)
|
|
|
|
|
BuildRequires: pkgconfig(sqlite3)
|
|
|
|
|
BuildRequires: pkgconfig(smartcols)
|
|
|
|
|
%if %{with zchunk}
|
|
|
|
|
BuildRequires: pkgconfig(zck) >= 0.9.11
|
|
|
|
|
%endif
|
|
|
|
|
BuildRequires: gpgme-devel
|
|
|
|
|
%if 0%{?rhel} <= 8
|
|
|
|
|
# In current Fedora, this is a dependency of gpgme-devel, but
|
|
|
|
|
# not in RHEL8. Missing this package breaks -znow.
|
|
|
|
|
BuildRequires: libassuan-devel
|
|
|
|
|
%endif
|
|
|
|
|
%if %{with rhsm}
|
|
|
|
|
BuildRequires: pkgconfig(librhsm) >= 0.0.3
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# Runtime libdnf deps
|
|
|
|
|
Requires: libmodulemd%{?_isa} >= %{libmodulemd_version}
|
|
|
|
|
Requires: libsolv%{?_isa} >= %{libsolv_version}
|
|
|
|
|
Requires: librepo%{?_isa} >= %{librepo_version}
|
|
|
|
|
|
|
|
|
|
# For now...see https://github.com/projectatomic/rpm-ostree/pull/637
|
|
|
|
|
# and https://github.com/fedora-infra/fedmsg-atomic-composer/pull/17
|
|
|
|
@ -119,11 +156,19 @@ The %{name}-devel package includes the header files for %{name}-libs.
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
env NOCONFIGURE=1 ./autogen.sh
|
|
|
|
|
%configure --disable-silent-rules --enable-gtk-doc
|
|
|
|
|
make %{?_smp_mflags}
|
|
|
|
|
# Since we're hybrid C++/Rust we need to propagate this manually;
|
|
|
|
|
# the %%configure macro today assumes (reasonably) that one is building
|
|
|
|
|
# C/C++ and sets C{,XX}FLAGS
|
|
|
|
|
%if 0%{?build_rustflags:1}
|
|
|
|
|
export RUSTFLAGS="%{build_rustflags}"
|
|
|
|
|
%endif
|
|
|
|
|
%configure --disable-silent-rules --enable-gtk-doc %{?rpmdb_default} %{?with_sanitizers:--enable-sanitizers} %{?with_bin_unit_tests:--enable-bin-unit-tests} \
|
|
|
|
|
%{?with_rhsm:--enable-featuresrs=rhsm}
|
|
|
|
|
|
|
|
|
|
%make_build
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p -c"
|
|
|
|
|
%make_install INSTALL="install -p -c"
|
|
|
|
|
find $RPM_BUILD_ROOT -name '*.la' -delete
|
|
|
|
|
|
|
|
|
|
# I try to do continuous delivery via rpmdistro-gitoverlay while
|
|
|
|
@ -148,8 +193,8 @@ for line in sys.argv[1:]:
|
|
|
|
|
else:
|
|
|
|
|
sys.stderr.write('{0} did not match any files\n'.format(line))
|
|
|
|
|
EOF
|
|
|
|
|
PYTHON=python3
|
|
|
|
|
if ! test -x /usr/bin/python3; then
|
|
|
|
|
PYTHON='%{python3}'
|
|
|
|
|
if ! test -x '%{python3}'; then
|
|
|
|
|
PYTHON=python2
|
|
|
|
|
fi
|
|
|
|
|
$PYTHON autofiles.py > files \
|
|
|
|
@ -160,6 +205,7 @@ $PYTHON autofiles.py > files \
|
|
|
|
|
'%{_sysconfdir}/rpm-ostreed.conf' \
|
|
|
|
|
'%{_prefix}/lib/systemd/system/*' \
|
|
|
|
|
'%{_libexecdir}/rpm-ostree*' \
|
|
|
|
|
'%{_libexecdir}/libostree/ext/*' \
|
|
|
|
|
'%{_datadir}/polkit-1/actions/*.policy' \
|
|
|
|
|
'%{_datadir}/dbus-1/system-services' \
|
|
|
|
|
'%{_datadir}/bash-completion/completions/*'
|
|
|
|
@ -184,7 +230,85 @@ $PYTHON autofiles.py > files.devel \
|
|
|
|
|
%files devel -f files.devel
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|
* Thu Nov 5 22:45:00 UTC 2020 Colin Walters <walters@verbum.org> - 2020.7-2
|
|
|
|
|
* Thu Oct 05 2023 Joseph Marrero <jmarrero@fedoraproject.org> - 2022.10.117.g52714b51-3
|
|
|
|
|
- Use python macros and devel package
|
|
|
|
|
Resolves: #RHEL-2243
|
|
|
|
|
|
|
|
|
|
* Mon Aug 07 2023 Joseph Marrero <jmarrero@fedoraproject.org> - 2022.10.117.g52714b51-2
|
|
|
|
|
- Backport fb97c48f3 & eae7e1d8
|
|
|
|
|
https://github.com/coreos/rpm-ostree/commit/fb97c48f3cd070c1ad559f3f43f86ad6548f6b02
|
|
|
|
|
https://github.com/coreos/rpm-ostree/commit/eae7e1d8d692b5ce6d3d6eef29abbd7512ae4682
|
|
|
|
|
Resolves: rhbz#2229804
|
|
|
|
|
|
|
|
|
|
* Sun Apr 30 2023 Joseph Marrero <jmarrero@fedoraproject.org> - 2022.10.117.g52714b51-1
|
|
|
|
|
- Sync to latest rhel8 branch
|
|
|
|
|
Resolves: rhbz#2192235
|
|
|
|
|
|
|
|
|
|
* Thu Feb 16 2023 Colin Walters <walters@verbum.org> - 2022.10.112.g3d0ac35b-3
|
|
|
|
|
- Cherry pick
|
|
|
|
|
https://github.com/coreos/rpm-ostree/pull/4311/commits/a0f1275dfbd835b704355d095e610ac1f1254f25
|
|
|
|
|
Resolves: rhbz#2170579
|
|
|
|
|
|
|
|
|
|
* Tue Feb 14 2023 Colin Walters <walters@verbum.org> - 2022.10.112.g3d0ac35b-2
|
|
|
|
|
- Sync to latest rhel8 branch
|
|
|
|
|
Resolves: rhbz#2169429
|
|
|
|
|
|
|
|
|
|
* Fri Oct 14 2022 Colin Walters <walters@verbum.org> - 2022.10.99.g0049dbdd-3
|
|
|
|
|
- Resolves: rhbz#2134630
|
|
|
|
|
|
|
|
|
|
* Wed Sep 28 2022 Colin Walters <walters@verbum.org> - 2022.10.97.gade6df33-2
|
|
|
|
|
- Update to latest https://github.com/coreos/rpm-ostree/tree/rhel8 at commit
|
|
|
|
|
https://github.com/coreos/rpm-ostree/commit/ac182cb920f84946bb155e9cf061db7f5f26e917
|
|
|
|
|
- Resolves: rhbz#2122289
|
|
|
|
|
|
|
|
|
|
* Wed Aug 31 2022 Colin Walters <walters@verbum.org> - 2022.10.94.g89f58028-2
|
|
|
|
|
- Update to latest https://github.com/coreos/rpm-ostree/tree/rhel8 at commit
|
|
|
|
|
https://github.com/coreos/rpm-ostree/commit/89f58028f0bea5b6fa59bdb3506078e09957ec00
|
|
|
|
|
- Resolves: rhbz#2122289
|
|
|
|
|
- Resolves: rhbz#2122299
|
|
|
|
|
|
|
|
|
|
* Tue Aug 16 2022 Colin Walters <walters@verbum.org> - 2022.10.90.g4abaf4b4-4
|
|
|
|
|
- Update to latest https://github.com/coreos/rpm-ostree/tree/rhel8 at commit
|
|
|
|
|
https://github.com/coreos/rpm-ostree/commit/4abaf4b4
|
|
|
|
|
Resolves: rhbz#2118774
|
|
|
|
|
|
|
|
|
|
* Tue Jul 19 2022 Colin Walters <walters@verbum.org> - 2022.10.86.gd8f0c67a-3
|
|
|
|
|
- Update to latest https://github.com/coreos/rpm-ostree/tree/rhel8 at commit
|
|
|
|
|
https://github.com/coreos/rpm-ostree/commit/d8f0c67a0eba32281c9f2782a286e06486a4b909
|
|
|
|
|
Resolves: rhbz#2105414
|
|
|
|
|
|
|
|
|
|
* Wed Jun 15 2022 Colin Walters <walters@verbum.org> - 2022.2.8.gd50a74bd-2
|
|
|
|
|
- Update to latest rhel8 branch
|
|
|
|
|
https://github.com/coreos/rpm-ostree/pull/3749
|
|
|
|
|
https://github.com/coreos/rpm-ostree/pull/3751
|
|
|
|
|
Resolves: rhbz#2095528
|
|
|
|
|
|
|
|
|
|
* Mon Feb 07 2022 Colin Walters <walters@verbum.org> - 2022.2-2
|
|
|
|
|
- Rebase to 2022.1
|
|
|
|
|
|
|
|
|
|
* Tue Jan 11 2022 Colin Walters <walters@verbum.org> - 2022.1-2
|
|
|
|
|
- Rebase to 2022.1
|
|
|
|
|
Resolves: rhbz#2032594
|
|
|
|
|
|
|
|
|
|
* Wed Dec 15 2021 Colin Walters <walters@verbum.org> - 2021.14-3
|
|
|
|
|
- Rebase to 2021.14
|
|
|
|
|
Resolves: rhbz#2032594
|
|
|
|
|
|
|
|
|
|
* Fri Jun 18 2021 Luca BRUNO <lucab@redhat.com> - 2021.5-2
|
|
|
|
|
- Backport _dbpath fixes, see
|
|
|
|
|
https://github.com/coreos/rpm-ostree/issues/2904
|
|
|
|
|
Resolves: rhbz#1973579
|
|
|
|
|
|
|
|
|
|
* Wed May 12 2021 Luca BRUNO <lucab@lucabruno.net> - 2021.5-1
|
|
|
|
|
- New upstream version
|
|
|
|
|
https://github.com/coreos/rpm-ostree/releases/tag/v2021.5
|
|
|
|
|
Resolves: rhbz#1959874
|
|
|
|
|
|
|
|
|
|
* Tue Mar 30 2021 Colin Walters <walters@verbum.org> - 2020.7-4
|
|
|
|
|
- Backport https://github.com/coreos/rpm-ostree/pull/2386/commits/aa8e49aaeddfc5d38651fa08f46e059655818fd1
|
|
|
|
|
Resolves: #1944760
|
|
|
|
|
|
|
|
|
|
* Thu Nov 05 2020 Colin Walters <walters@verbum.org> - 2020.7-2
|
|
|
|
|
- Update to 2020.7
|
|
|
|
|
Resolves: #1894061
|
|
|
|
|
|
|
|
|
|