Blame SPECS/boom-boot.spec

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