Blame mkosi.spec

Zbigniew Jędrzejewski-Szmek 4cdaf1
Name:           mkosi
Zbigniew Jędrzejewski-Szmek 47c1d4
Version:        15.1
Zbigniew Jędrzejewski-Szmek 7285cc
Release:        %autorelease
Zbigniew Jędrzejewski-Szmek e83052
Summary:        Create bespoke OS images
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 47c1d4
License:        LGPL-2.1-or-later
Zbigniew Jędrzejewski-Szmek 4cdaf1
URL:            https://github.com/systemd/mkosi
Zbigniew Jędrzejewski-Szmek 47c1d4
Source:         https://github.com/systemd/mkosi/archive/v%{version}/%{name}-%{version}.tar.gz
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 4cdaf1
BuildArch:      noarch
Zbigniew Jędrzejewski-Szmek 9faa87
BuildRequires:  python3-devel
Zbigniew Jędrzejewski-Szmek 47c1d4
BuildRequires:  pyproject-rpm-macros
Zbigniew Jędrzejewski-Szmek e83052
BuildRequires:  python3-pytest
Zbigniew Jędrzejewski-Szmek b4d914
BuildRequires:  binutils
Zbigniew Jędrzejewski-Szmek b4d914
BuildRequires:  python3dist(pexpect)
Zbigniew Jędrzejewski-Szmek 47c1d4
BuildRequires:  pandoc
Zbigniew Jędrzejewski-Szmek 47c1d4
# for tests
Zbigniew Jędrzejewski-Szmek 47c1d4
BuildRequires:  systemd
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 1285a6
%global recoreq %{?el7:Requires}%{!?el7:Recommends}
Zbigniew Jędrzejewski-Szmek 1285a6
Zbigniew Jędrzejewski-Szmek 47c1d4
%bcond tests 1
Zbigniew Jędrzejewski-Szmek 47c1d4
Zbigniew Jędrzejewski-Szmek 47c1d4
# mkosi wants the uncompressed man page to show via 'mkosi documentation'
Zbigniew Jędrzejewski-Szmek 47c1d4
%global __brp_compress true
Zbigniew Jędrzejewski-Szmek 47c1d4
Zbigniew Jędrzejewski-Szmek 47c1d4
Requires:       bubblewrap
Leif Liddy a98095
Requires:       systemd-repart >= 254
Zbigniew Jędrzejewski-Szmek 1bfb3b
%{recoreq}:     systemd-container >= 254
Zbigniew Jędrzejewski-Szmek 47c1d4
Leif Liddy a98095
%{recoreq}:     binutils
Zbigniew Jędrzejewski-Szmek 1285a6
%{recoreq}:     e2fsprogs
Leif Liddy a98095
%{recoreq}:     gnupg
Zbigniew Jędrzejewski-Szmek 1285a6
%{recoreq}:     squashfs-tools
Leif Liddy a98095
%{recoreq}:     tar
Zbigniew Jędrzejewski-Szmek 1285a6
%{recoreq}:     veritysetup
Leif Liddy a98095
%{recoreq}:     xz
Leif Liddy a98095
Zbigniew Jędrzejewski-Szmek 1285a6
%if 0%{?el7} == 0
Zbigniew Jędrzejewski-Szmek 4cdaf1
Recommends:     arch-install-scripts
Zbigniew Jędrzejewski-Szmek 4cdaf1
Recommends:     btrfs-progs
Zbigniew Jędrzejewski-Szmek 1ea278
Recommends:     cpio
Leif Liddy a98095
Recommends:     debootstrap
Leif Liddy a98095
Recommends:     (dnf5 or dnf)
Leif Liddy a98095
Recommends:     dosfstools
Leif Liddy a98095
Recommends:     edk2-ovmf
Zbigniew Jędrzejewski-Szmek 418e0f
Recommends:     python3dist(argcomplete)
Zbigniew Jędrzejewski-Szmek df3f68
Recommends:     python3dist(cryptography)
Leif Liddy a98095
Recommends:     zstd
Zbigniew Jędrzejewski-Szmek 47c1d4
%else
Zbigniew Jędrzejewski-Szmek 47c1d4
Recommends:     dnf
Zbigniew Jędrzejewski-Szmek d4d2bf
%endif
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 4cdaf1
%description
Zbigniew Jędrzejewski-Szmek d4feac
A fancy wrapper around "dnf --installroot", "debootstrap", "pacman", "zypper",
Zbigniew Jędrzejewski-Szmek d4feac
"emerge", and "swupd-extract" that may generate disk images with a number of
Zbigniew Jędrzejewski-Szmek d4feac
bells and whistles.
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 47c1d4
Generated images are tailored to the purpose. This means GPT disk labels are
Zbigniew Jędrzejewski-Szmek 47c1d4
used and only systemd-based images may be generated.
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 4cdaf1
%prep
Zbigniew Jędrzejewski-Szmek 10a7ce
%autosetup -p1
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 47c1d4
%generate_buildrequires
Zbigniew Jędrzejewski-Szmek 47c1d4
%pyproject_buildrequires
Zbigniew Jędrzejewski-Szmek 47c1d4
Zbigniew Jędrzejewski-Szmek 4cdaf1
%build
Zbigniew Jędrzejewski-Szmek 47c1d4
tools/make-man-page.sh
Zbigniew Jędrzejewski-Szmek 47c1d4
Zbigniew Jędrzejewski-Szmek 47c1d4
%pyproject_wheel
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 4cdaf1
%install
Zbigniew Jędrzejewski-Szmek 47c1d4
%pyproject_install
Zbigniew Jędrzejewski-Szmek 47c1d4
%pyproject_save_files mkosi
Zbigniew Jędrzejewski-Szmek 47c1d4
Zbigniew Jędrzejewski-Szmek 47c1d4
mkdir -p %{buildroot}%{_mandir}/man1
Zbigniew Jędrzejewski-Szmek 47c1d4
ln -s -t %{buildroot}%{_mandir}/man1/ \
Zbigniew Jędrzejewski-Szmek 47c1d4
         ../../../..%{python3_sitelib}/mkosi/resources/mkosi.1
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 47c1d4
%files -f %pyproject_files
Zbigniew Jędrzejewski-Szmek 4cdaf1
%license LICENSE
Zbigniew Jędrzejewski-Szmek 4cdaf1
%doc README.md
Zbigniew Jędrzejewski-Szmek 4cdaf1
%_bindir/mkosi
Zbigniew Jędrzejewski-Szmek 9faa87
%_mandir/man1/mkosi.1*
Zbigniew Jędrzejewski-Szmek 4cdaf1
Zbigniew Jędrzejewski-Szmek 6ded5c
%check
Zbigniew Jędrzejewski-Szmek 47c1d4
%if %{with tests}
Zbigniew Jędrzejewski-Szmek 47c1d4
%pytest tests/ -v
Zbigniew Jędrzejewski-Szmek e83052
Zbigniew Jędrzejewski-Szmek 6ded5c
# just a smoke test for syntax or import errors
Zbigniew Jędrzejewski-Szmek 47c1d4
%py3_test_envvars %{buildroot}%{_bindir}/mkosi --help >/dev/null
Zbigniew Jędrzejewski-Szmek 47c1d4
%endif
Zbigniew Jędrzejewski-Szmek 6ded5c
Zbigniew Jędrzejewski-Szmek 4cdaf1
%changelog
Zbigniew Jędrzejewski-Szmek 7285cc
%autochangelog