diff --git a/.gitignore b/.gitignore index 440b591..b58e0bb 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/rpm-ostree-2022.2.tar.xz +SOURCES/rpm-ostree-2022.12.tar.xz diff --git a/.rpm-ostree.metadata b/.rpm-ostree.metadata index e683e54..d335b6e 100644 --- a/.rpm-ostree.metadata +++ b/.rpm-ostree.metadata @@ -1 +1 @@ -1bcee7eba384617fb49922310275f708a97a2fcf SOURCES/rpm-ostree-2022.2.tar.xz +3055cc0108e21979809cc2026e35493c57dfbec2 SOURCES/rpm-ostree-2022.12.tar.xz diff --git a/SPECS/rpm-ostree.spec b/SPECS/rpm-ostree.spec index 9f6b429..07f7c2b 100644 --- a/SPECS/rpm-ostree.spec +++ b/SPECS/rpm-ostree.spec @@ -3,7 +3,7 @@ Summary: Hybrid image/package system Name: rpm-ostree -Version: 2022.2 +Version: 2022.12 Release: 2%{?dist} License: LGPLv2+ URL: https://github.com/coreos/rpm-ostree @@ -24,6 +24,15 @@ BuildRequires: rust # 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 +%bcond_with rhsm +%endif # RHEL (8,9) doesn't ship zchunk today. Keep this in sync # with libdnf: https://gitlab.com/redhat/centos-stream/rpms/libdnf/-/blob/762f631e36d1e42c63a794882269d26c156b68c1/libdnf.spec#L45 @@ -33,10 +42,6 @@ BuildRequires: rust %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 # We always run autogen.sh @@ -51,7 +56,7 @@ BuildRequires: /usr/bin/g-ir-scanner BuildRequires: pkgconfig(ostree-1) >= 2021.5 BuildRequires: pkgconfig(polkit-gobject-1) BuildRequires: pkgconfig(json-glib-1.0) -BuildRequires: pkgconfig(rpm) >= 4.16.0 +BuildRequires: pkgconfig(rpm) >= 4.14.0 BuildRequires: pkgconfig(libarchive) BuildRequires: pkgconfig(libsystemd) BuildRequires: libcap-devel @@ -72,33 +77,59 @@ BuildRequires: pkgconfig(check) # but duplicating to be clear) BuildRequires: pkgconfig(libsolv) -# We need g++ for libdnf -BuildRequires: gcc-c++ +# These are build deps which aren't strictly required in Koji/Brew builds, but +# are required for git builds. Since they're few and tiny, we just add it here +# to keep it part of `dnf builddep`. +BuildRequires: jq +######################################################################### +# libdnf build deps # +# # +# Copy/pasted from libdnf/libdnf.spec. Removed the irrelevant bits like # +# valgrind, rhsm, swig, python, and sanitizer stuff. # +######################################################################### -# 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 -BuildRequires: swig >= %{swig_version} -BuildRequires: pkgconfig(modulemd-2.0) >= %{libmodulemd_version} -BuildRequires: pkgconfig(librepo) >= %{librepo_version} + +%global libsolv_version 0.7.21 +%global libmodulemd_version 2.13.0 +%global librepo_version 1.13.1 + +BuildRequires: cmake +BuildRequires: gcc +BuildRequires: gcc-c++ BuildRequires: libsolv-devel >= %{libsolv_version} -BuildRequires: pkgconfig(json-c) -BuildRequires: pkgconfig(cppunit) -BuildRequires: pkgconfig(sqlite3) -BuildRequires: pkgconfig(smartcols) +BuildRequires: pkgconfig(librepo) >= %{librepo_version} +BuildRequires: pkgconfig(check) +BuildRequires: pkgconfig(gio-unix-2.0) >= 2.46.0 +BuildRequires: pkgconfig(gtk-doc) +BuildRequires: rpm-devel >= 4.15.0 %if %{with zchunk} BuildRequires: pkgconfig(zck) >= 0.9.11 %endif +BuildRequires: pkgconfig(sqlite3) +BuildRequires: pkgconfig(json-c) +BuildRequires: pkgconfig(cppunit) +BuildRequires: pkgconfig(modulemd-2.0) >= %{libmodulemd_version} +BuildRequires: pkgconfig(smartcols) +BuildRequires: gettext 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} +######################################################################### +# end of libdnf build deps # +######################################################################### + # For now...see https://github.com/projectatomic/rpm-ostree/pull/637 # and https://github.com/fedora-infra/fedmsg-atomic-composer/pull/17 # etc. We'll drop this dependency at some point in the future when @@ -107,6 +138,10 @@ Requires: ostree Requires: bubblewrap Requires: fuse +# For container functionality +# https://github.com/coreos/rpm-ostree/issues/3286 +Recommends: skopeo + Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description @@ -132,10 +167,8 @@ The %{name}-devel package includes the header files for %{name}-libs. %prep %autosetup -Sgit -n %{name}-%{version} -# We hit "LLVM ERROR: out of memory" with LTO on 32 bit -# https://bugzilla.redhat.com/show_bug.cgi?id=1974927 %if 0%{?__isa_bits} == 32 -sed -ie 's,^lto = true,# disabled: lto = true,' Cargo.toml +sed -ie 's,^lto = true,lto = false,' Cargo.toml %endif %build @@ -146,7 +179,8 @@ env NOCONFIGURE=1 ./autogen.sh %if 0%{?build_rustflags:1} export RUSTFLAGS="%{build_rustflags}" %endif -%configure --disable-silent-rules --enable-gtk-doc %{?sqlite_rpmdb_default} %{?with_sanitizers:--enable-sanitizers} +%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 @@ -188,8 +222,9 @@ $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}/dbus-1/system-services/*' \ '%{_datadir}/bash-completion/completions/*' $PYTHON autofiles.py > files.lib \ @@ -210,8 +245,26 @@ $PYTHON autofiles.py > files.devel \ %files libs -f files.lib %files devel -f files.devel - %changelog +* Tue Jul 19 2022 Colin Walters - 2022.12-2 +- https://github.com/coreos/rpm-ostree/releases/tag/v2022.12 + +* Mon Jul 11 2022 Colin Walters - 2022.11-2 +- https://github.com/coreos/rpm-ostree/releases/tag/v2022.11 + Resolves: rhbz#2105405 + +* Thu Jun 09 2022 Jonathan Lebon - 2022.8-3 +- Backport https://github.com/coreos/rpm-ostree/pull/3721 + Resolves: rhbz#2094085 + +* Thu Apr 21 2022 Colin Walters - 2022.8-2 +- https://github.com/coreos/rpm-ostree/releases/tag/v2022.8 + Resolves: rhbz#2077062 + Resolves: rhbz#2023325 + +* Mon Apr 11 2022 Colin Walters - 2022.7-2 +- https://github.com/coreos/rpm-ostree/releases/tag/v2022.7 + * Mon Feb 07 2022 Colin Walters - 2022.2-2 - Rebase to 2022.2