## START: Set by rpmautospec ## (rpmautospec version 0.7.3) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec Name: mkosi Version: 24.3 Release: %autorelease Summary: Create bespoke OS images License: LGPL-2.1-or-later URL: https://github.com/systemd/mkosi Source: https://github.com/systemd/mkosi/archive/v%{version}/%{name}-%{version}.tar.gz BuildArch: noarch BuildRequires: python3-devel BuildRequires: pyproject-rpm-macros BuildRequires: python3-pytest BuildRequires: pandoc %bcond tests 1 # mkosi wants the uncompressed man page to show via 'mkosi documentation' %global __brp_compress true Requires: python3 Requires: bubblewrap Requires: coreutils # for various image building tools (systemd-hwdb, systemd-sysusers, ...) Recommends: systemd # for systemd-nspawn Recommends: systemd-container >= 254 # for bootable images (systemd-udev ships bootctl) Recommends: systemd-udev >= 254 Recommends: systemd-ukify >= 254 # for disk images Recommends: systemd-repart >= 254 # for the --acl option to allow removing directories generated by mkosi Recommends: acl # for when kernels are installed and we need to run depmod Recommends: kmod # for signing Recommends: openssl Recommends: sbsigntools Recommends: gnupg # for building specific distributions Recommends: (dnf5 or dnf) Recommends: apt Recommends: debian-keyring Recommends: pacman Recommends: archlinux-keyring Recommends: zypper # for various filesystems Recommends: btrfs-progs Recommends: e2fsprogs Recommends: dosfstools Recommends: mtools Recommends: erofs-utils Recommends: xfsprogs Recommends: squashfs-tools # for various output formats Recommends: cpio Recommends: tar # for mkosi qemu Recommends: qemu-kvm-core Recommends: edk2-ovmf Recommends: swtpm # for mkosi ssh Recommends: openssh-clients Recommends: socat # for output compression Recommends: zstd Recommends: xz %description A fancy wrapper around "dnf --installroot", "apt", "pacman", and "zypper" that generates disk images with a number of bells and whistles. Generated images are tailored to the purpose: GPT partitions, systemd-boot or grub2, images for containers, VMs, initrd, and extensions. Mkosi can boot an image via QEMU or systemd-nspawn, or simply start a shell in chroot, burn the image to a device, connect to a running VM via ssh, extract logs and coredumps, and also serve an image over HTTP. See https://mkosi.systemd.io/ for documentation. %package initrd Summary: Build initrds locally using mkosi Requires: %{name} = %{version}-%{release} Requires: (dnf5 or dnf) %description initrd This package provides the plugin for kernel-install to build initrds with mkosi locally. After the package is installed, the plugin can be enabled by writing 'initrd_generator=mkosi-initrd' to '/etc/kernel/install.conf'. %prep %autosetup -p1 %generate_buildrequires %pyproject_buildrequires %build tools/make-man-page.sh %pyproject_wheel bin/mkosi completion bash >mkosi.bash bin/mkosi completion fish >mkosi.fish bin/mkosi completion zsh >mkosi.zsh %install %pyproject_install %pyproject_save_files mkosi mkdir -p %{buildroot}%{_mandir}/man1 ln -s -t %{buildroot}%{_mandir}/man1/ \ ../../../..%{python3_sitelib}/mkosi/resources/mkosi.1 ln -s -t %{buildroot}%{_mandir}/man1/ \ ../../../..%{python3_sitelib}/mkosi/resources/mkosi-initrd.1 # Install the kernel-install plugin install -Dt %{buildroot}%{_prefix}/lib/kernel/install.d/ \ kernel-install/50-mkosi.install mkdir -p %{buildroot}%{_prefix}/lib/mkosi-initrd mkdir -p %{buildroot}%{_sysconfdir}/mkosi-initrd # Install man pages install -m0644 -D mkosi.bash %{buildroot}%{bash_completions_dir}/mkosi install -m0644 -D mkosi.fish %{buildroot}%{fish_completions_dir}/mkosi.fish install -m0644 -D mkosi.zsh %{buildroot}%{zsh_completions_dir}/_mkosi %files -f %pyproject_files %license LICENSE %doc README.md %_bindir/mkosi %_mandir/man1/mkosi.1* %{bash_completions_dir}/mkosi %{fish_completions_dir}/mkosi.fish %{zsh_completions_dir}/_mkosi %files initrd %_bindir/mkosi-initrd %_mandir/man1/mkosi-initrd.1* %_prefix/lib/kernel/install.d/50-mkosi.install %ghost %dir %{_prefix}/lib/mkosi-initrd %ghost %dir %{_sysconfdir}/mkosi-initrd %check %if %{with tests} %pytest tests/ -v # just a smoke test for syntax or import errors %py3_test_envvars %{buildroot}%{_bindir}/mkosi --help >/dev/null %endif %changelog ## START: Generated by rpmautospec * Tue Jul 30 2024 Zbigniew Jędrzejewski-Szmek - 24.3-1 - Version 24.3 * Tue Jul 30 2024 Zbigniew Jędrzejewski-Szmek - 24.2-1 - Update to 24.2 upstream release - Resolves: rhbz#2300574 - Install completion scripts * Fri Jul 26 2024 Packit - 24-1 - Update to 24 upstream release - Resolves: rhbz#2292334 * Fri Jul 26 2024 Daan De Meyer - 23.1-1 - Update to 23.1 upstream release - Resolves: rhbz#2292334 * Fri Jul 26 2024 Daan De Meyer - 22-5 - packit: Set create_sync_note to false * Thu Jul 18 2024 Fedora Release Engineering - 22-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Wed Jun 12 2024 Daan De Meyer - 22-3 - Add basic packit config * Fri Jun 07 2024 Python Maint - 22-2 - Rebuilt for Python 3.13 * Thu Mar 14 2024 Daan De Meyer - 22-1 - Version 22 * Thu Mar 07 2024 Daan De Meyer - 21-1 - Version 21 * Thu Mar 07 2024 Daan De Meyer - 20.1-8 - Remove kernel-install plugin from mkosi package * Tue Feb 20 2024 Zbigniew Jędrzejewski-Szmek - 20.1-7 - Link to the new website * Mon Feb 19 2024 Zbigniew Jędrzejewski-Szmek - 20.1-6 - Move the kernel-install plugin to a separate mkosi-initrd subpackage - This effectively replaces the standalone mkosi-initrd package. * Wed Jan 31 2024 Daan De Meyer - 20.1-4 - Install kernel-install plugin * Thu Jan 25 2024 Fedora Release Engineering - 20.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Fedora Release Engineering - 20.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sat Jan 13 2024 Zbigniew Jędrzejewski-Szmek - 20.1-1 - Version 20.1 (rhbz#2258224) * Tue Jan 09 2024 Zbigniew Jędrzejewski-Szmek - 20-1 - Version 20 * Wed Nov 15 2023 Zbigniew Jędrzejewski-Szmek - 19-1 - Version 19 * Thu Oct 05 2023 Zbigniew Jędrzejewski-Szmek - 18-1 - Version 18 - We check if ukify is available early (rhbz#2240598) * Tue Sep 19 2023 Zbigniew Jędrzejewski-Szmek - 17.1-1 - Version 17.1 * Thu Sep 07 2023 Daan De Meyer - 16-2 - Update dependencies * Thu Sep 07 2023 Zbigniew Jędrzejewski-Szmek - 16-1 - Version 16 * Wed Aug 23 2023 Zbigniew Jędrzejewski-Szmek - 15.1-5 - Update the list of Requirements and Recommends * Sun Aug 13 2023 Leif Liddy - 15.1-2 - Require systemd version 254, recommend systemd-nspawn (rhbz#2232233) * Thu Aug 10 2023 Zbigniew Jędrzejewski-Szmek - 15.1-1 - Version 15.1 - dnf5 is recommended over dnf, because it is faster. * Thu Jul 20 2023 Fedora Release Engineering - 14-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Wed Jun 14 2023 Python Maint - 14-5 - Rebuilt for Python 3.12 * Thu Jan 19 2023 Fedora Release Engineering - 14-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Thu Oct 27 2022 Zbigniew Jędrzejewski-Szmek - 14-3 - Skip test file that fails in koji * Thu Oct 27 2022 Zbigniew Jędrzejewski-Szmek - 14-2 - Skip test that fails in koji * Thu Oct 27 2022 Zbigniew Jędrzejewski-Szmek - 14-1 - Version 14 * Thu Jul 21 2022 Fedora Release Engineering - 13-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Tue Jun 21 2022 Zbigniew Jędrzejewski-Szmek - 13-2 - Skip test that fails in koji * Tue Jun 21 2022 Zbigniew Jędrzejewski-Szmek - 13-1 - Version 13 * Mon Jun 13 2022 Python Maint - 12-4 - Rebuilt for Python 3.11 * Sun Apr 24 2022 Zbigniew Jędrzejewski-Szmek - 12-3 - Add patch to fix compatibility with python3.11-a7 (rhbz#2057363) * Thu Jan 20 2022 Fedora Release Engineering - 12-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Tue Nov 30 2021 Zbigniew Jędrzejewski-Szmek - 12-1 - Version 12 * Wed Nov 24 2021 Zbigniew Jędrzejewski-Szmek - 11-1 - Version 11 * Thu Oct 21 2021 Zbigniew Jędrzejewski-Szmek - 10-2 - Add Recommends for tools to build initrds * Fri Jul 30 2021 Zbigniew Jędrzejewski-Szmek - 10-1 - Version 10 * Thu Jul 22 2021 Fedora Release Engineering - 9-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 11 2021 Davide Cavalca - 9-4 - Only gate out Recommends on el7 * Fri Jun 04 2021 Python Maint - 9-3 - Rebuilt for Python 3.10 * Tue Jan 26 2021 Fedora Release Engineering - 9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Sat Jan 2 2021 Zbigniew Jędrzejewski-Szmek - 9-1 - Update to latest version (#1903407) * Thu Dec 3 2020 Zbigniew Jędrzejewski-Szmek - 8-1 - Update to latest version (#1903407) * Sat Oct 3 2020 Zbigniew Jędrzejewski-Szmek - 6-1 - Update to latest version (#1884879) * Tue Jul 28 2020 Fedora Release Engineering - 5-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Wed Jan 29 2020 Fedora Release Engineering - 5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Jul 25 2019 Fedora Release Engineering - 5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Tue Apr 30 2019 Zbigniew Jędrzejewski-Szmek - 5-1 - Update to latest version * Fri Feb 01 2019 Fedora Release Engineering - 4-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Fri Jul 13 2018 Fedora Release Engineering - 4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Sat Feb 10 2018 Zbigniew Jędrzejewski-Szmek - 4-2 - Update to latest version (#1544123) * Thu Feb 08 2018 Fedora Release Engineering - 2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Jun 23 2017 Zbigniew Jędrzejewski-Szmek - 2-1 - Update to latest version (#1464285) * Fri Feb 10 2017 Fedora Release Engineering - 1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Dec 19 2016 Miro Hrončok - 1-2 - Rebuild for Python 3.6 * Thu Nov 3 2016 Zbigniew Jędrzejewski-Szmek - 1-1 - Initial version ## END: Generated by rpmautospec