%global summary A set of libraries and tools for managing boot loader entries %global sphinx_docs 1 Name: boom-boot Version: 1.6.0 Release: 2.20240423183507129341.pr26.3.g664e80e%{?dist} Summary: %{summary} License: GPL-2.0-only URL: https://github.com/snapshotmanager/boom Source0: boom-1.6.0.tar.gz BuildArch: noarch BuildRequires: make BuildRequires: python3-setuptools BuildRequires: python3-devel %if 0%{?sphinx_docs} BuildRequires: python3-dbus BuildRequires: python3-sphinx %endif BuildRequires: make BuildRequires: systemd-rpm-macros Requires: python3-boom = %{version}-%{release} Requires: %{name}-conf = %{version}-%{release} Obsoletes: boom-boot-grub2 <= 1.3 # boom-grub2 was not an official name of subpackage in fedora, but was used upstream: Obsoletes: boom-grub2 <= 1.3 %package -n python3-boom Summary: %{summary} %{?python_provide:%python_provide python3-boom} Requires: %{__python3} Recommends: (lvm2 or brtfs-progs) Recommends: %{name}-conf = %{version}-%{release} # There used to be a boom package in fedora, and there is boom packaged in # copr. How to tell which one is installed? We need python3-boom and no boom # only. Conflicts: boom %package conf Summary: %{summary} %description Boom is a boot manager for Linux systems using boot loaders that support the BootLoader Specification for boot entry configuration. Boom requires a BLS compatible boot loader to function: either the systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds include this support in both Red Hat Enterprise Linux 7 and Fedora). %description -n python3-boom Boom is a boot manager for Linux systems using boot loaders that support the BootLoader Specification for boot entry configuration. Boom requires a BLS compatible boot loader to function: either the systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds include this support in both Red Hat Enterprise Linux 7 and Fedora). This package provides python3 boom module. %description conf Boom is a boot manager for Linux systems using boot loaders that support the BootLoader Specification for boot entry configuration. Boom requires a BLS compatible boot loader to function: either the systemd-boot project, or Grub2 with the BLS patch (Red Hat Grub2 builds include this support in both Red Hat Enterprise Linux 7 and Fedora). This package provides configuration files for boom. %prep %autosetup -p1 -n boom-1.6.0 %build %if 0%{?sphinx_docs} make -C doc html rm doc/_build/html/.buildinfo mv doc/_build/html doc/html rm -r doc/_build %endif %py3_build %install %py3_install # Make configuration directories # mode 0700 - in line with /boot/grub2 directory: install -d -m 700 ${RPM_BUILD_ROOT}/boot/boom/profiles install -d -m 700 ${RPM_BUILD_ROOT}/boot/boom/hosts install -d -m 700 ${RPM_BUILD_ROOT}/boot/loader/entries install -d -m 700 ${RPM_BUILD_ROOT}/boot/boom/cache install -m 644 examples/boom.conf ${RPM_BUILD_ROOT}/boot/boom mkdir -p ${RPM_BUILD_ROOT}/%{_mandir}/man8 mkdir -p ${RPM_BUILD_ROOT}/%{_mandir}/man5 install -m 644 man/man8/boom.8 ${RPM_BUILD_ROOT}/%{_mandir}/man8 install -m 644 man/man5/boom.5 ${RPM_BUILD_ROOT}/%{_mandir}/man5 mkdir -p ${RPM_BUILD_ROOT}/%{_systemdgeneratordir} install -m 755 systemd/snapshot-remount-fs ${RPM_BUILD_ROOT}/%{_systemdgeneratordir} rm doc/Makefile rm doc/conf.py # Test suite currently does not operate in rpmbuild environment #%%check #%%{__python3} setup.py test %files %license COPYING %doc README.md %{_bindir}/boom %{_systemdgeneratordir}/snapshot-remount-fs %doc %{_mandir}/man*/boom.* %files -n python3-boom %license COPYING %doc README.md %{python3_sitelib}/* %doc doc %doc examples %doc tests %files conf %license COPYING %doc README.md %dir /boot/boom %config(noreplace) /boot/boom/boom.conf %dir /boot/boom/profiles %dir /boot/boom/hosts %dir /boot/boom/cache %dir /boot/loader/entries %changelog * Tue Apr 23 2024 Packit - 1.6.0-2.20240423183507129341.pr26.3.g664e80e - snapshot-remount-fs: use correct systemd unit path (Bryn M. Reeves) - snapshot-remount-fs: limit maxsplit when splitting kernel arguments (Bryn M. Reeves) - dist: update spec file (Bryn M. Reeves) * Thu Nov 23 2023 Bryn M. Reeves - 1.6.0-2 - Update spec file * Mon Nov 20 2023 Bryn M. Reeves - 1.6.0 - Bump release * Fri Nov 17 2023 Bryn M. Reeves - 1.5.1-4.20231117175234813485.bmr.add.snapshot.remount.fs.29.ga48ccf9 - dist: add build notifications to .packit.yaml (Bryn M. Reeves) - dist: make packit copr_build job run on pull_request (Bryn M. Reeves) - dist: add jobs to .packit.yaml (Bryn M. Reeves) - dist: add .packit.yaml (Bryn M. Reeves) - dist: update spec file for packit builds (Bryn M. Reeves) - tests: fix filenames in unit test comments (Bryn M. Reeves) - tests: add missing test_mounts.py to git (Bryn M. Reeves) - dist: update boom-boot.spec from Fedora dist-git spec file (Bryn M. Reeves) - dist: rename boom.spec -> boom-boot.spec to match Fedora packaging (Bryn M. Reeves) - doc: Add readthedocs configuration file (Bryn M. Reeves) - boom: concatenate strings in argument definitions (Bryn M. Reeves) - tests: skip test__get_machine_id (Bryn M. Reeves) - boom: use correct machine_id path in error string (Bryn M. Reeves) - docs: document --no-fstab, --mount, and --swap in boom.8 (Bryn M. Reeves) - boom: support command line swap unit syntax (Bryn M. Reeves) - boom: add missing param docstring to clone_entry() (Bryn M. Reeves) - boom: support command line mount unit syntax (Bryn M. Reeves) - Add --no-fstab command line argument (Bryn M. Reeves) - Ignore pycodestyle E501,E203,W503 (Bryn M. Reeves) - Convert GitHub workflow to "pip install" (Bryn M. Reeves) - Use black for formatting (Bryn M. Reeves) - boom: fix unclosed file warning for /proc/cmdline (Bryn M. Reeves) - tests: add coverage to CI test runs (Bryn M. Reeves) - Update CI environment to Fedora 38 (Bryn M. Reeves) - tests: switch from nose to pytest (Bryn M. Reeves) - Rename tests to comply with unittest expectations (Bryn M. Reeves) - Fix system vs. project import ordering (Bryn M. Reeves) - Fix typos across tree (Bryn M. Reeves) - Switch setuptools config to setup.cfg (Bryn M. Reeves) * Thu Nov 16 2023 Bryn M. Reeves - 1.5.1-4.20231116180940293550.main.24.g1b2fd45 - Update spec file for packit builds - tests: fix filenames in unit test comments (Bryn M. Reeves) - tests: add missing test_mounts.py to git (Bryn M. Reeves) - dist: update boom-boot.spec from Fedora dist-git spec file (Bryn M. Reeves) - dist: rename boom.spec -> boom-boot.spec to match Fedora packaging (Bryn M. Reeves) - doc: Add readthedocs configuration file (Bryn M. Reeves) - boom: concatenate strings in argument definitions (Bryn M. Reeves) - tests: skip test__get_machine_id (Bryn M. Reeves) - boom: use correct machine_id path in error string (Bryn M. Reeves) - docs: document --no-fstab, --mount, and --swap in boom.8 (Bryn M. Reeves) - boom: support command line swap unit syntax (Bryn M. Reeves) - boom: add missing param docstring to clone_entry() (Bryn M. Reeves) - boom: support command line mount unit syntax (Bryn M. Reeves) - Add --no-fstab command line argument (Bryn M. Reeves) - Ignore pycodestyle E501,E203,W503 (Bryn M. Reeves) - Convert GitHub workflow to "pip install" (Bryn M. Reeves) - Use black for formatting (Bryn M. Reeves) - boom: fix unclosed file warning for /proc/cmdline (Bryn M. Reeves) - tests: add coverage to CI test runs (Bryn M. Reeves) - Update CI environment to Fedora 38 (Bryn M. Reeves) - tests: switch from nose to pytest (Bryn M. Reeves) - Rename tests to comply with unittest expectations (Bryn M. Reeves) - Fix system vs. project import ordering (Bryn M. Reeves) - Fix typos across tree (Bryn M. Reeves) - Switch setuptools config to setup.cfg (Bryn M. Reeves) * Thu Nov 16 2023 Bryn M. Reeves - 1.5.1-4.20231116180027713828.main.20.gad7e78a - Update spec file for packit builds - doc: Add readthedocs configuration file (Bryn M. Reeves) - boom: concatenate strings in argument definitions (Bryn M. Reeves) - tests: skip test__get_machine_id (Bryn M. Reeves) - boom: use correct machine_id path in error string (Bryn M. Reeves) - docs: document --no-fstab, --mount, and --swap in boom.8 (Bryn M. Reeves) - boom: support command line swap unit syntax (Bryn M. Reeves) - boom: add missing param docstring to clone_entry() (Bryn M. Reeves) - boom: support command line mount unit syntax (Bryn M. Reeves) - Add --no-fstab command line argument (Bryn M. Reeves) - Ignore pycodestyle E501,E203,W503 (Bryn M. Reeves) - Convert GitHub workflow to "pip install" (Bryn M. Reeves) - Use black for formatting (Bryn M. Reeves) - boom: fix unclosed file warning for /proc/cmdline (Bryn M. Reeves) - tests: add coverage to CI test runs (Bryn M. Reeves) - Update CI environment to Fedora 38 (Bryn M. Reeves) - tests: switch from nose to pytest (Bryn M. Reeves) - Rename tests to comply with unittest expectations (Bryn M. Reeves) - Fix system vs. project import ordering (Bryn M. Reeves) - Fix typos across tree (Bryn M. Reeves) - Switch setuptools config to setup.cfg (Bryn M. Reeves) * Thu May 4 2023 Bryn M. Reeves = 1.5.1 - Bump release * Thu May 19 2022 Bryn M. Reeves = 1.4 - Fix boom.spec ChangeLog date - Drop Grub2 integration scripts and defaults file - Simplify bootloader integration checks - Add stratis_tests.py - Fix workflow name in CI status badge URL - Update build status badge in README.md - Ensure have_lvm() returns False if lvs does not exist - Rewrite .travis.yml CI checks as GHA - Fix parsing of btrfs subvolumes - Fix uname heuristic for Fedora >=35 - Generate Stratis syntax in BootEntry.root_opts() - Add Stratis format keys to make_format_regexes() - Add FMT_STRATIS_POOL_UUID to BootEntry string formatting table - Add ROOT_OPTS_STRATIS template - Add stratis_pool_uuid property to BootParams - Add BootParams.has_stratis() - Add is_stratis_device_path() - Update travis configuration for DBus - Add stratis sub-module - Add debug mask for boom.stratis - Add FMT_STRATIS_ROOT_OPTS - Add FMT_STRATIS_POOL_UUID format specifier - Add constants for btrfs path and ID volume syntax - Add constants for btrfs path and ID volume syntax - Fix missing line break in HostProfile.__str__() - Fix test_match_host_profile boot_id - Remove BOOM_ENTRY_OPTIONS hack from BootEntry.__from_data() - Sort legacy boot entries by (version, title) - Fix typo when initialising BootEntry with explicit BootParams - Change references to "master" locations to "main" locations - Rename toctree document to "main_doc" - Remove references to 'master' branch from README.md - Fix optional BLS key to command line argument decoding - Fix invalid date string in boom.spec - Fix docstring typo ('or``OsError``') - Add new submodules to README.md - Fix docstring typo ('objecct') * Thu Jan 28 2021 Bryn M. Reeves = 1.3 - Check for duplicates consistently in the clone and edit commands - Apply correct command line precedence to --add-opts and --del-opts - Correctly merge multiple --add/del-opts when editing or cloning - Correctly propagate --add/del-opts in boom edit commands - Enhanced logging of --add/del-opts merge logic - The default Python interpreter is now /usr/bin/python - Fixed re-ordering of options modifications when read from disk - Do not set BootParams attributes for anonymous option words - Make lvm_root_lv validation checks more strict - Improve BootParams.from_entry() parameter recovery debug logging - Include sample OsProfile for Fedora 32 - Re-set sandbox state in test suite to ensure run-to-run consistency - Improve compatibility with Red Hat BLS implementation - Allow non-boom managed entries to be listed and displayed - Handle quirks in Red Hat's use of the BLS machine_id key - Allow grub2 bootloader variables to be expanded when cloning entries - Simplify clone_entry logic and make consistent with edit_entry - Ensure stable ordering of legacy boot entry configuration * Wed May 13 2020 Bryn M. Reeves = 1.1 - Bump release * Tue May 12 2020 Bryn M. Reeves = 1.1-0.1.beta - Bump release * Mon May 11 2020 Bryn M. Reeves - 1.0-2 - Include boom/cache directory in package * Wed Nov 27 2019 Bryn M. Reeves - 1.0-1 - Bump release for boom-1.0 * Thu Oct 03 2019 Miro Hrončok - 1.0-0.5.20190329git6ff3e08 - Rebuilt for Python 3.8.0rc1 (#1748018) * Mon Aug 19 2019 Miro Hrončok - 1.0-0.4.20190329git6ff3e08 - Rebuilt for Python 3.8 * Wed Jul 24 2019 Fedora Release Engineering - 1.0-0.3.20190329git6ff3e08 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Thu May 09 2019 Marian Csontos 1.0-0.2.20190329git6ff3e08 - Fix packaging issues. * Thu May 09 2019 Marian Csontos 1.0-0.1.20190329git6ff3e08 - Pre-release of new version. * Thu Jan 31 2019 Fedora Release Engineering - 0.9-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Tue Jul 17 2018 Marian Csontos 0.9-4 - Change dependencies. * Mon Jul 16 2018 Marian Csontos 0.9-3 - Split executable, python module and configuration. * Wed Jun 27 2018 Marian Csontos 0.9-2 - Spin off grub2 into subpackage * Wed Jun 27 2018 Marian Csontos 0.9-1 - Update to new upstream 0.9. - Fix boot_id caching. * Fri Jun 08 2018 Marian Csontos 0.8.5-6.2 - Remove example files from /boot/boom/profiles. * Fri May 11 2018 Marian Csontos 0.8.5-6.1 - Files in /boot are treated as configuration files. * Thu Apr 26 2018 Marian Csontos 0.8.5-6 - Package upstream version 0.8-5.6