Blame SPECS/boom-boot.spec

ee88d8
%global summary A set of libraries and tools for managing boot loader entries
ee88d8
%global sphinx_docs 1
ee88d8
ee88d8
Name:		boom-boot
ee88d8
Version:	0.9
ee88d8
Release:	7%{?dist}
ee88d8
Summary:	%{summary}
ee88d8
ee88d8
License:	GPLv2
ee88d8
URL:		https://github.com/bmr-cymru/boom
ee88d8
Source0:	https://github.com/bmr-cymru/boom/archive/%{version}/boom-%{version}.tar.gz
ee88d8
Patch0:         Disable-GRUB2-plugin-on-RHEL-8.patch
ee88d8
Patch1:		Reduce-log-level-of-Could-not-load-BootEntry.patch
ee88d8
Patch2:		bootloader-raise-LookupError-on-unknown-BLS-keys.patch
ee88d8
ee88d8
BuildArch:	noarch
ee88d8
ee88d8
BuildRequires:	python3-setuptools
ee88d8
BuildRequires:	python3-devel
ee88d8
%if 0%{?sphinx_docs}
ee88d8
BuildRequires:	python3-sphinx
ee88d8
%endif
ee88d8
ee88d8
Requires: python3-boom
ee88d8
Requires: %{name}-conf
ee88d8
ee88d8
%package -n python3-boom
ee88d8
Summary: %{summary}
ee88d8
%{?python_provide:%python_provide python3-boom}
ee88d8
Requires: %{__python3}
ee88d8
Recommends: (lvm2 or brtfs-progs)
ee88d8
Recommends: %{name}-conf
ee88d8
ee88d8
# There used to be a boom package in fedora, and there is boom packaged in
ee88d8
# copr. How to tell which one is installed? We need python3-boom and no boom
ee88d8
# only.
ee88d8
Conflicts: boom
ee88d8
ee88d8
%package conf
ee88d8
Summary: %{summary}
ee88d8
ee88d8
%package grub2
ee88d8
Summary: %{summary}
ee88d8
Supplements: (grub2 and boom-boot)
ee88d8
ee88d8
%description
ee88d8
Boom is a boot manager for Linux systems using boot loaders that support
ee88d8
the BootLoader Specification for boot entry configuration.
ee88d8
ee88d8
Boom requires a BLS compatible boot loader to function: either the
ee88d8
systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds
ee88d8
include this support in both Red Hat Enterprise Linux 7 and Fedora).
ee88d8
ee88d8
%description -n python3-boom
ee88d8
Boom is a boot manager for Linux systems using boot loaders that support
ee88d8
the BootLoader Specification for boot entry configuration.
ee88d8
ee88d8
Boom requires a BLS compatible boot loader to function: either the
ee88d8
systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds
ee88d8
include this support in both Red Hat Enterprise Linux 7 and Fedora).
ee88d8
ee88d8
This package provides python3 boom module.
ee88d8
ee88d8
%description conf
ee88d8
Boom is a boot manager for Linux systems using boot loaders that support
ee88d8
the BootLoader Specification for boot entry configuration.
ee88d8
ee88d8
Boom requires a BLS compatible boot loader to function: either the
ee88d8
systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds
ee88d8
include this support in both Red Hat Enterprise Linux 7 and Fedora).
ee88d8
ee88d8
This package provides configuration files for boom.
ee88d8
ee88d8
%description grub2
ee88d8
Boom is a boot manager for Linux systems using boot loaders that support
ee88d8
the BootLoader Specification for boot entry configuration.
ee88d8
ee88d8
Boom requires a BLS compatible boot loader to function: either the
ee88d8
systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds
ee88d8
include this support in both Red Hat Enterprise Linux 7 and Fedora).
ee88d8
ee88d8
This package provides integration scripts for grub2 bootloader.
ee88d8
ee88d8
%prep
ee88d8
%setup -q -n boom-%{version}
ee88d8
# NOTE: Do not use backup extension - MANIFEST.in is picking them
ee88d8
%patch0 -p1
ee88d8
%patch1 -p1
ee88d8
%patch2 -p1
ee88d8
ee88d8
%build
ee88d8
%if 0%{?sphinx_docs}
ee88d8
make -C doc html
ee88d8
rm doc/_build/html/.buildinfo
ee88d8
mv doc/_build/html doc/html
ee88d8
rm -r doc/_build
ee88d8
%endif
ee88d8
ee88d8
%py3_build
ee88d8
ee88d8
%install
ee88d8
%py3_install
ee88d8
ee88d8
# Install Grub2 integration scripts
ee88d8
mkdir -p ${RPM_BUILD_ROOT}/etc/grub.d
ee88d8
mkdir -p ${RPM_BUILD_ROOT}/etc/default
ee88d8
install -m 755 etc/grub.d/42_boom ${RPM_BUILD_ROOT}/etc/grub.d
ee88d8
install -m 644 etc/default/boom ${RPM_BUILD_ROOT}/etc/default
ee88d8
ee88d8
# Make configuration directories
ee88d8
# mode 0700 - in line with /boot/grub2 directory:
ee88d8
install -d -m 700 ${RPM_BUILD_ROOT}/boot/boom/profiles
ee88d8
install -d -m 700 ${RPM_BUILD_ROOT}/boot/loader/entries
ee88d8
install -m 644 examples/boom.conf ${RPM_BUILD_ROOT}/boot/boom
ee88d8
ee88d8
mkdir -p ${RPM_BUILD_ROOT}/%{_mandir}/man8
ee88d8
mkdir -p ${RPM_BUILD_ROOT}/%{_mandir}/man5
ee88d8
install -m 644 man/man8/boom.8 ${RPM_BUILD_ROOT}/%{_mandir}/man8
ee88d8
install -m 644 man/man5/boom.5 ${RPM_BUILD_ROOT}/%{_mandir}/man5
ee88d8
ee88d8
rm doc/Makefile
ee88d8
rm doc/conf.py
ee88d8
ee88d8
# Test suite currently does not operate in rpmbuild environment
ee88d8
#%%check
ee88d8
#%%{__python3} setup.py test
ee88d8
ee88d8
%files
ee88d8
%license COPYING
ee88d8
%doc README.md
ee88d8
%{_bindir}/boom
ee88d8
%doc %{_mandir}/man*/boom.*
ee88d8
ee88d8
%files -n python3-boom
ee88d8
%license COPYING
ee88d8
%doc README.md
ee88d8
%{python3_sitelib}/*
ee88d8
%doc doc
ee88d8
%doc examples
ee88d8
%doc tests
ee88d8
ee88d8
%files conf
ee88d8
%license COPYING
ee88d8
%doc README.md
ee88d8
%dir /boot/boom
ee88d8
%config(noreplace) /boot/boom/boom.conf
ee88d8
%dir /boot/boom/profiles
ee88d8
%dir /boot/loader/entries
ee88d8
ee88d8
%files grub2
ee88d8
%license COPYING
ee88d8
%doc README.md
ee88d8
%{_sysconfdir}/grub.d/42_boom
ee88d8
%config(noreplace) %{_sysconfdir}/default/boom
ee88d8
ee88d8
ee88d8
%changelog
ee88d8
* Mon Jan 14 2019 Marian Csontos <mcsontos@redhat.com> 0.9-7
ee88d8
- Reduce log level of "Could not load BootEntry" messages.
ee88d8
- Raise more appropriate LookupError on unknown BLS keys.
ee88d8
ee88d8
* Tue Dec 18 2018 Marian Csontos <mcsontos@redhat.com> 0.9-6
ee88d8
- Disable GRUB2 plugin on RHEL-8.
ee88d8
ee88d8
* Mon Sep 17 2018 Tomas Orsava <torsava@redhat.com> - 0.9-5
ee88d8
- Require the Python interpreter directly instead of using the package name
ee88d8
- Related: rhbz#1619153
ee88d8
ee88d8
* Tue Jul 17 2018 Marian Csontos <mcsontos@redhat.com> 0.9-4
ee88d8
- Change dependencies.
ee88d8
ee88d8
* Mon Jul 16 2018 Marian Csontos <mcsontos@redhat.com> 0.9-3
ee88d8
- Split executable, python module and configuration.
ee88d8
ee88d8
* Wed Jun 27 2018 Marian Csontos <mcsontos@redhat.com> 0.9-2
ee88d8
- Spin off grub2 into subpackage
ee88d8
ee88d8
* Wed Jun 27 2018 Marian Csontos <mcsontos@redhat.com> 0.9-1
ee88d8
- Update to new upstream 0.9.
ee88d8
- Fix boot_id caching.
ee88d8
ee88d8
* Fri Jun 08 2018 Marian Csontos <mcsontos@redhat.com> 0.8.5-6.2
ee88d8
- Remove example files from /boot/boom/profiles.
ee88d8
ee88d8
* Fri May 11 2018 Marian Csontos <mcsontos@redhat.com> 0.8.5-6.1
ee88d8
- Files in /boot are treated as configuration files.
ee88d8
ee88d8
* Thu Apr 26 2018 Marian Csontos <mcsontos@redhat.com> 0.8.5-6
ee88d8
- Package upstream version 0.8-5.6
ee88d8