-
Notifications
You must be signed in to change notification settings - Fork 92
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
contrib/packaging/bootc.spec: sync with current Fedora rawhide
Signed-off-by: Joseph Marrero Corchado <[email protected]>
- Loading branch information
Showing
1 changed file
with
80 additions
and
34 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,57 +1,103 @@ | ||
%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 | ||
Release: 1%{?dist} | ||
Summary: Boot containers | ||
Version: 1.1.4 | ||
Release: %{autorelease} | ||
Summary: Bootable container system | ||
|
||
License: ASL 2.0 | ||
# Apache-2.0 | ||
# Apache-2.0 OR BSL-1.0 | ||
# Apache-2.0 OR MIT | ||
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT | ||
# BSD-3-Clause | ||
# MIT | ||
# MIT OR Apache-2.0 | ||
# Unlicense OR MIT | ||
License: Apache-2.0 AND BSD-3-Clause AND MIT AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Unlicense OR MIT) | ||
URL: https://github.com/containers/bootc | ||
Source0: https://github.com/containers/bootc/releases/download/v%{version}/bootc-%{version}.tar.zstd | ||
Source1: https://github.com/containers/bootc/releases/download/v%{version}/bootc-%{version}-vendor.tar.zstd | ||
Source0: %{url}/releases/download/v%{version}/bootc-%{version}.tar.zstd | ||
Source1: %{url}/releases/download/v%{version}/bootc-%{version}-vendor.tar.zstd | ||
|
||
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval | ||
ExcludeArch: %{ix86} | ||
|
||
BuildRequires: libzstd-devel | ||
BuildRequires: make | ||
BuildRequires: openssl-devel | ||
BuildRequires: cargo | ||
BuildRequires: systemd | ||
# For autosetup -Sgit | ||
BuildRequires: git | ||
BuildRequires: zlib-devel | ||
BuildRequires: ostree-devel | ||
BuildRequires: openssl-devel | ||
BuildRequires: systemd-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 | ||
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} | ||
|
||
%prep | ||
%autosetup -p1 -a1 | ||
%cargo_prep -v vendor | ||
|
||
%build | ||
%cargo_build %{?with_rhsm:-f rhsm} | ||
%cargo_vendor_manifest | ||
%cargo_license_summary | ||
%{cargo_license} > LICENSE.dependencies | ||
|
||
%install | ||
%make_install INSTALL="install -p -c" | ||
%if %{with ostree_ext} | ||
make install-ostree-hooks DESTDIR=%{?buildroot} | ||
%endif | ||
|
||
%if %{with check} | ||
%check | ||
%cargo_test | ||
%endif | ||
|
||
%files | ||
%license LICENSE-APACHE LICENSE-MIT | ||
%license LICENSE-MIT | ||
%license LICENSE-APACHE | ||
%license LICENSE.dependencies | ||
%license cargo-vendor.txt | ||
%doc README.md | ||
%{_bindir}/bootc | ||
%{_prefix}/lib/bootc/ | ||
%{_prefix}/lib/systemd/system-generators/* | ||
%{_prefix}/lib/bootc | ||
%if %{with ostree_ext} | ||
%{_prefix}/libexec/libostree/ext/* | ||
%endif | ||
%{_unitdir}/* | ||
%{_docdir}/bootc/* | ||
%{_mandir}/man*/bootc* | ||
|
||
%prep | ||
%autosetup -p1 -Sgit | ||
tar -xv -f %{SOURCE1} | ||
mkdir -p .cargo | ||
cat >>.cargo/config.toml << EOF | ||
[source.crates-io] | ||
replace-with = "vendored-sources" | ||
[source.vendored-sources] | ||
directory = "vendor" | ||
EOF | ||
|
||
%build | ||
make | ||
|
||
%install | ||
%make_install INSTALL="install -p -c" | ||
|
||
%changelog | ||
%autochangelog |