diff --git a/.bootc.metadata b/.bootc.metadata index adf3dc6..88b54ca 100644 --- a/.bootc.metadata +++ b/.bootc.metadata @@ -1,2 +1,2 @@ -51015bf77039c9278cac519134be460a72d77fed SOURCES/bootc-0.1.15-vendor.tar.zstd -e6e0035a688690965ce53ef511057b55e7d2d2ac SOURCES/bootc-0.1.15.tar.zstd +f845ad2a14b147102fd407cff8c75f46f18485e6 SOURCES/bootc-1.1.5-vendor.tar.zstd +77fd4b2f65b52577b0f8a3c6679b04ce5eff47ac SOURCES/bootc-1.1.5.tar.zstd diff --git a/.gitignore b/.gitignore index 871f831..b24879c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/bootc-0.1.15-vendor.tar.zstd -SOURCES/bootc-0.1.15.tar.zstd +SOURCES/bootc-1.1.5-vendor.tar.zstd +SOURCES/bootc-1.1.5.tar.zstd diff --git a/SPECS/bootc.spec b/SPECS/bootc.spec index 1dfa4b5..ca20d1b 100644 --- a/SPECS/bootc.spec +++ b/SPECS/bootc.spec @@ -1,7 +1,18 @@ %bcond_without check +%if 0%{?rhel} >= 10 || 0%{?fedora} > 41 + %bcond_without ostree_ext +%else + %bcond_with ostree_ext +%endif + +%if 0%{?rhel} + %bcond_without rhsm +%else + %bcond_with rhsm +%endif Name: bootc -Version: 0.1.15 +Version: 1.1.5 Release: 1%{?dist} Summary: Bootable container system @@ -25,42 +36,72 @@ BuildRequires: libzstd-devel BuildRequires: make BuildRequires: ostree-devel BuildRequires: openssl-devel -BuildRequires: libzstd-devel %if 0%{?rhel} BuildRequires: rust-toolset %else BuildRequires: cargo-rpm-macros >= 25 %endif BuildRequires: systemd +# For tests +BuildRequires: skopeo ostree # Backing storage tooling https://github.com/containers/composefs/issues/125 -Recommends: composefs +Requires: composefs # For OS updates +Requires: ostree Requires: skopeo +Requires: podman # For bootloader updates Recommends: bootupd +# A made up provides so that rpm-ostree can depend on it +%if %{with ostree_ext} +Provides: ostree-cli(ostree-container) +%endif + %description %{summary} +# (-n because we don't want the subpackage name to start with bootc-) +%package -n system-reinstall-bootc +Summary: Utility to reinstall the current system using bootc +Requires: podman +# The reinstall subpackage intentionally does not require bootc, as it pulls in many unnecessary dependencies + +%description -n system-reinstall-bootc +This package provides a utility to simplify reinstalling the current system to a given bootc image. + %prep %autosetup -p1 -a1 -%if 0%{?rhel} -%cargo_prep -V 1 -%else -%cargo_prep -v vendor -%endif +# Default -v vendor config doesn't support non-crates.io deps (i.e. git) +cp .cargo/vendor-config.toml . +%cargo_prep -N +cat vendor-config.toml >> .cargo/config.toml +rm vendor-config.toml %build +# Build the main bootc binary +%if 0%{?fedora} || 0%{?rhel} >= 10 + %cargo_build %{?with_rhsm:-f rhsm} +%else + %cargo_build %{?with_rhsm:--features rhsm} +%endif + +# Build the system reinstallation CLI binary +%global cargo_args -p system-reinstall-bootc %cargo_build -%if !0%{?rhel} + %cargo_vendor_manifest +# https://pagure.io/fedora-rust/rust-packaging/issue/33 +sed -i -e '/https:\/\//d' cargo-vendor.txt %cargo_license_summary %{cargo_license} > LICENSE.dependencies -%endif %install %make_install INSTALL="install -p -c" +%if %{with ostree_ext} +make install-ostree-hooks DESTDIR=%{?buildroot} +%endif %if %{with check} %check @@ -70,19 +111,43 @@ Recommends: bootupd %files %license LICENSE-MIT %license LICENSE-APACHE -%if !0%{?rhel} %license LICENSE.dependencies %license cargo-vendor.txt -%endif %doc README.md %{_bindir}/bootc %{_prefix}/lib/bootc/ %{_prefix}/lib/systemd/system-generators/* +%if %{with ostree_ext} +%{_prefix}/libexec/libostree/ext/* +%endif %{_unitdir}/* +%{_docdir}/bootc/* %{_mandir}/man*/bootc* +%files -n system-reinstall-bootc +%{_bindir}/system-reinstall-bootc %changelog +* Mon Feb 10 2025 Joseph Marrero - 1.1.5-1 +- Update to 1.1.5 +- Resolves: #RHEL-77733 + +* Thu Jan 23 2025 John Eckersberg - 1.1.4-2 +- Cherry pick patches for bootc-status-updated +- Resolves: #RHEL-72862 + +* Tue Jan 14 2025 Joseph Marrero - 1.1.4-1 +- Update to 1.1.4 + Resolves: #RHEL-72862 + +* Thu Nov 07 2024 Joseph Marrero - 1.1.2-1 +- Update to 1.1.2 + Resolves: #RHEL-66258 + +* Thu Oct 17 2024 Joseph Marrero - 1.1.0-1 +- Update to 1.1.0 + Resolves: #RHEL-63018 + * Fri Aug 16 2024 Colin Walters - 0.1.15-1 - Update to 0.1.15 Resolves: #RHEL-50625