sdbootutil/sdbootutil.spec
Ludwig Nussel be4d322edf Accepting request 1112549 from devel:microos:systemd-boot
- Update to version 1+git20230817.2a3cd34:
  * Ignore errors from efibootmgr
  * Update spec file
  * Add marker to flag installation using sdbootutil
  * Refactor and fix boot entry installation
  * Don't exit in warn()
  * feat: use arg_esp_path directly
  * fix: get esp_device from bootctl
  * fix: only install shim for secure boot
  * feat: create only non-existing entries & pass correct ESP partition
  * fix: make efibootmgr silent
  * feat: create boot menu entries when installed

OBS-URL: https://build.opensuse.org/request/show/1112549
OBS-URL: https://build.opensuse.org/package/show/devel:microos/sdbootutil?expand=0&rev=13
2023-09-20 12:19:16 +00:00

110 lines
3.4 KiB
RPMSpec

#
# spec file for package sdbootutil
#
# 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/
#
%define nvr %{name}-%{version}-%{release}
%if 0%{?_build_in_place}
%define git_version %(git log '-n1' '--date=format:%Y%m%d' '--no-show-signature' "--pretty=format:+git%cd.%h")
BuildRequires: git-core
%else
# this is required for obs' source validator. It's
# 20-files-present-and-referenced ignores all conditionals. So the
# definition of git_version actually happens always.
%define git_version %{nil}
%endif
Name: sdbootutil
Version: 1+git20230817.2a3cd34%{git_version}
Release: 0
Summary: script to install shim with sd-boot
License: MIT
URL: https://en.opensuse.org/openSUSE:Usr_merge
Source: %{name}-%{version}.tar
Requires: jq
Requires: sed
Requires: systemd-boot
Supplements: (systemd-boot and shim)
%description
Hook scripts to install shim along with systemd-boot
%package snapper
Summary: plugin script for snapper
Requires: %{name} = %{version}
Requires: btrfsprogs
Requires: sdbootutil >= %{version}-%{release}
Requires: snapper
Supplements: (snapper and btrfsprogs and sdbootutil)
%description snapper
Plugin scripts for snapper to handle BLS config files
%package rpm-scriptlets
Summary: Scripts to create boot entries on kernel updates
Requires: sdbootutil >= %{version}-%{release}
# make sure to not replace scriptlets with nops on systems that
# use grub2
Conflicts: grub2
Conflicts: suse-kernel-rpm-scriptlets
Provides: suse-kernel-rpm-scriptlets
Obsoletes: %{name}-filetriggers < %{version}
%description rpm-scriptlets
Scriptlets that call sdbootutil to create boot entries when
kernels are installed or removed
%prep
%setup -q
%build
%install
install -D -m 755 sdbootutil %{buildroot}%{_bindir}/sdbootutil
mkdir -p %{buildroot}%{_prefix}/lib/module-init-tools/kernel-scriptlets
for a in rpm; do
install -m 755 "$a-script" %{buildroot}%{_prefix}/lib/module-init-tools/kernel-scriptlets
for b in post posttrans postun pre preun; do
ln -s "$a-script" %{buildroot}%{_prefix}/lib/module-init-tools/kernel-scriptlets/$a-$b
done
done
for a in cert inkmp kmp; do
for b in post posttrans postun pre preun; do
ln -s /bin/true %{buildroot}%{_prefix}/lib/module-init-tools/kernel-scriptlets/$a-$b
done
done
# snapper
install -d -m755 %{buildroot}%{_prefix}/lib/snapper/plugins
for i in 10-sdbootutil.snapper; do
install -m 755 $i %{buildroot}%{_prefix}/lib/snapper/plugins/$i
done
%files
%license LICENSE
%{_bindir}/sdbootutil
%files rpm-scriptlets
%dir %{_prefix}/lib/module-init-tools
%{_prefix}/lib/module-init-tools/*
%files snapper
%dir %{_prefix}/lib/snapper
%dir %{_prefix}/lib/snapper/plugins
%{_prefix}/lib/snapper/plugins/*
%changelog