From 86b472f9434379db7efd209573b5e263ad69b9fa Mon Sep 17 00:00:00 2001 From: eabdullin Date: Tue, 30 Apr 2024 15:19:32 +0000 Subject: [PATCH 1/3] import UBI osbuild-110-1.el9 --- .gitignore | 2 +- .osbuild.metadata | 2 +- ...ld.keymap-create-xorg.conf.d-if-it-d.patch | 35 ------- SPECS/osbuild.spec | 95 +++++++++++++++++-- 4 files changed, 89 insertions(+), 45 deletions(-) delete mode 100644 SOURCES/stages-org.osbuild.keymap-create-xorg.conf.d-if-it-d.patch diff --git a/.gitignore b/.gitignore index 6f35051..802a12f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/osbuild-93.tar.gz +SOURCES/osbuild-110.tar.gz diff --git a/.osbuild.metadata b/.osbuild.metadata index f391c26..b59a0aa 100644 --- a/.osbuild.metadata +++ b/.osbuild.metadata @@ -1 +1 @@ -4ef37f2c681bcf4f4ae6099726b1617fe1db471e SOURCES/osbuild-93.tar.gz +a34b43322aef7a58ce2d4faa97029aed690d1de0 SOURCES/osbuild-110.tar.gz diff --git a/SOURCES/stages-org.osbuild.keymap-create-xorg.conf.d-if-it-d.patch b/SOURCES/stages-org.osbuild.keymap-create-xorg.conf.d-if-it-d.patch deleted file mode 100644 index 81593c7..0000000 --- a/SOURCES/stages-org.osbuild.keymap-create-xorg.conf.d-if-it-d.patch +++ /dev/null @@ -1,35 +0,0 @@ -From dcb0850a2edccd1067385c4a50dd2aab62778009 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Ond=C5=99ej=20Budai?= -Date: Fri, 1 Sep 2023 14:40:06 +0200 -Subject: [PATCH] stages/org.osbuild.keymap: create xorg.conf.d if it doesn't - exist - -Newer versions of Fedora don't create this directory by default. This -commit modifies the stage so it creates it if it doesn't exist. ---- - stages/org.osbuild.keymap | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/stages/org.osbuild.keymap b/stages/org.osbuild.keymap -index 7878fa08..c3a292f5 100755 ---- a/stages/org.osbuild.keymap -+++ b/stages/org.osbuild.keymap -@@ -18,7 +18,6 @@ be configured for the X11 keyboard. - Valid keymaps are generally found in /lib/kbd/keymaps. - """ - -- - import os - import subprocess - import sys -@@ -74,6 +73,7 @@ Section "InputClass" - EndSection - """ - -+ os.makedirs(f"{tree}/etc/X11/xorg.conf.d", mode=0o755, exist_ok=True) - with open(f"{tree}/etc/X11/xorg.conf.d/00-keyboard.conf", "w", encoding="utf8") as f: - f.write(file_content) - --- -2.43.0 - diff --git a/SPECS/osbuild.spec b/SPECS/osbuild.spec index c5e3868..9952d50 100644 --- a/SPECS/osbuild.spec +++ b/SPECS/osbuild.spec @@ -1,7 +1,7 @@ %global forgeurl https://github.com/osbuild/osbuild %global selinuxtype targeted -Version: 93 +Version: 110 %forgemeta @@ -9,7 +9,7 @@ Version: 93 %global pkgdir %{_prefix}/lib/%{pypi_name} Name: %{pypi_name} -Release: 1%{?dist}.1 +Release: 1%{?dist} License: Apache-2.0 URL: %{forgeurl} @@ -18,9 +18,6 @@ Source0: %{forgesource} BuildArch: noarch Summary: A build system for OS images -# https://github.com/osbuild/osbuild/commit/dcb0850a2edccd1067385c4a50dd2aab62778009 -Patch0: stages-org.osbuild.keymap-create-xorg.conf.d-if-it-d.patch - BuildRequires: make BuildRequires: python3-devel BuildRequires: python3-docutils @@ -42,6 +39,12 @@ Requires: util-linux Requires: python3-%{pypi_name} = %{version}-%{release} Requires: (%{name}-selinux if selinux-policy-%{selinuxtype}) +# This is required for `osbuild`, for RHEL-10 and above +# the stdlib toml package can be used instead +%if 0%{?rhel} < 10 +Requires: python3-tomli +%endif + # Turn off dependency generators for runners. The reason is that runners are # tailored to the platform, e.g. on RHEL they are using platform-python. We # don't want to pick up those dependencies on other platform. @@ -130,6 +133,20 @@ Requires: python3-typer Contains additional tools and utilities for development of manifests and osbuild. +%package depsolve-dnf +Summary: Dependency solving support for DNF +Requires: %{name} = %{version}-%{release} + +# Fedora 40 and later use libdnf5, RHEL and Fedora < 40 use libdnf +%if 0%{?fedora} >= 40 +Requires: python3-libdnf5 >= 5.1.1 +%else +Requires: python3-libdnf +%endif + +%description depsolve-dnf +Contains depsolving capabilities for package managers. + %prep %forgeautosetup -p1 @@ -148,7 +165,7 @@ bzip2 -9 osbuild.pp %py3_install mkdir -p %{buildroot}%{pkgdir}/stages -install -p -m 0755 $(find stages -type f) %{buildroot}%{pkgdir}/stages/ +install -p -m 0755 $(find stages -type f -not -name "test_*.py") %{buildroot}%{pkgdir}/stages/ mkdir -p %{buildroot}%{pkgdir}/assemblers install -p -m 0755 $(find assemblers -type f) %{buildroot}%{pkgdir}/assemblers/ @@ -194,6 +211,15 @@ install -p -m 0755 data/10-osbuild-inhibitor.rules %{buildroot}%{_udevrulesdir} # Remove `osbuild-dev` on non-fedora systems %{!?fedora:rm %{buildroot}%{_bindir}/osbuild-dev} +# Install `osbuild-depsolve-dnf` into libexec +mkdir -p %{buildroot}%{_libexecdir} +# Fedora 40 and later use dnf5-json, RHEL and Fedora < 40 use dnf-json +%if 0%{?fedora} >= 40 +install -p -m 0755 tools/osbuild-depsolve-dnf5 %{buildroot}%{_libexecdir}/osbuild-depsolve-dnf +%else +install -p -m 0755 tools/osbuild-depsolve-dnf %{buildroot}%{_libexecdir}/osbuild-depsolve-dnf +%endif + %check exit 0 # We have some integration tests, but those require running a VM, so that would @@ -219,6 +245,7 @@ exit 0 %exclude %{pkgdir}/inputs/org.osbuild.ostree* %exclude %{pkgdir}/sources/org.osbuild.ostree* %exclude %{pkgdir}/stages/org.osbuild.ostree* +%exclude %{pkgdir}/stages/org.osbuild.experimental.ostree* %exclude %{pkgdir}/stages/org.osbuild.rpm-ostree %files -n python3-%{pypi_name} @@ -241,6 +268,7 @@ exit 0 %{pkgdir}/inputs/org.osbuild.ostree* %{pkgdir}/sources/org.osbuild.ostree* %{pkgdir}/stages/org.osbuild.ostree* +%{pkgdir}/stages/org.osbuild.experimental.ostree* %{pkgdir}/stages/org.osbuild.rpm-ostree %files selinux @@ -264,10 +292,61 @@ fi %{_bindir}/osbuild-mpp %{?fedora:%{_bindir}/osbuild-dev} +%files depsolve-dnf +%{_libexecdir}/osbuild-depsolve-dnf %changelog -* Fri Jan 26 2024 Tomáš Hozza - 93-1.1 -- stages/org.osbuild.keymap: create xorg.conf.d if it doesn't exist (RHEL-22837) +* Mon Feb 26 2024 imagebuilder-bot - 110-1 +- New upstream release + +* Thu Feb 22 2024 imagebuilder-bot - 109-1 +- New upstream release + +* Thu Feb 01 2024 imagebuilder-bot - 106-1 +- New upstream release + +* Wed Jan 31 2024 imagebuilder-bot - 105-1 +- New upstream release + +* Wed Jan 17 2024 Paweł Poławski - 104-2 +- Fix unit tests in RHEL CI by backporting upstream fixes + +* Tue Jan 16 2024 imagebuilder-bot - 104-1 +- New upstream release + +* Wed Jan 03 2024 imagebuilder-bot - 103-1 +- New upstream release + +* Wed Dec 20 2023 imagebuilder-bot - 102-1 +- New upstream release + +* Mon Dec 11 2023 Paweł Poławski - 101-2 +- Change unit-test timeout from 3h to 4h +- Rebuild after failed gating + +* Wed Dec 06 2023 imagebuilder-bot - 101-1 +- New upstream release + +* Fri Nov 24 2023 imagebuilder-bot - 100-1 +- New upstream release + +* Wed Nov 08 2023 imagebuilder-bot - 99-1 +- New upstream release + +* Wed Oct 25 2023 imagebuilder-bot - 98-1 +- New upstream release + +* Wed Oct 11 2023 imagebuilder-bot - 97-1 +- New upstream release + +* Wed Sep 27 2023 imagebuilder-bot - 96-1 +- New upstream release + +* Wed Sep 13 2023 imagebuilder-bot - 95-1 +- New upstream release + +* Wed Aug 30 2023 imagebuilder-bot - 94-1 +- New upstream release * Wed Aug 23 2023 imagebuilder-bot - 93-1 - New upstream release From e5110cc79f9b8df722abb3a61e27304711734725 Mon Sep 17 00:00:00 2001 From: eabdullin Date: Tue, 12 Nov 2024 10:21:17 +0000 Subject: [PATCH 2/3] import UBI osbuild-126-1.el9 --- .gitignore | 2 +- .osbuild.metadata | 2 +- SPECS/osbuild.spec | 57 +++++++++++++++++++++++++++++++++++++++------- 3 files changed, 51 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 802a12f..a7d169d 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/osbuild-110.tar.gz +SOURCES/osbuild-126.tar.gz diff --git a/.osbuild.metadata b/.osbuild.metadata index b59a0aa..61b0a60 100644 --- a/.osbuild.metadata +++ b/.osbuild.metadata @@ -1 +1 @@ -a34b43322aef7a58ce2d4faa97029aed690d1de0 SOURCES/osbuild-110.tar.gz +5bd0c9d3d7e5ad4afdc1b018320f47f0350cc90b SOURCES/osbuild-126.tar.gz diff --git a/SPECS/osbuild.spec b/SPECS/osbuild.spec index 9952d50..c4c9e16 100644 --- a/SPECS/osbuild.spec +++ b/SPECS/osbuild.spec @@ -1,7 +1,7 @@ %global forgeurl https://github.com/osbuild/osbuild %global selinuxtype targeted -Version: 110 +Version: 126 %forgemeta @@ -137,13 +137,22 @@ manifests and osbuild. Summary: Dependency solving support for DNF Requires: %{name} = %{version}-%{release} -# Fedora 40 and later use libdnf5, RHEL and Fedora < 40 use libdnf -%if 0%{?fedora} >= 40 -Requires: python3-libdnf5 >= 5.1.1 +# Fedora 41 and later use libdnf5, RHEL and Fedora < 41 use libdnf +%if 0%{?fedora} >= 41 +Requires: python3-libdnf5 >= 5.2.1 %else Requires: python3-libdnf %endif +# osbuild 125 added a new "solver" field and osbuild-composer only +# supports this since 116 +Conflicts: osbuild-composer <= 115 + +# This version needs to get bumped every time the osbuild-dnf-json +# version changes in an incompatible way. Packages like osbuild-composer +# can depend on the exact API version this way +Provides: osbuild-dnf-json-api = 7 + %description depsolve-dnf Contains depsolving capabilities for package managers. @@ -213,11 +222,15 @@ install -p -m 0755 data/10-osbuild-inhibitor.rules %{buildroot}%{_udevrulesdir} # Install `osbuild-depsolve-dnf` into libexec mkdir -p %{buildroot}%{_libexecdir} -# Fedora 40 and later use dnf5-json, RHEL and Fedora < 40 use dnf-json -%if 0%{?fedora} >= 40 -install -p -m 0755 tools/osbuild-depsolve-dnf5 %{buildroot}%{_libexecdir}/osbuild-depsolve-dnf -%else install -p -m 0755 tools/osbuild-depsolve-dnf %{buildroot}%{_libexecdir}/osbuild-depsolve-dnf + +# Configure the solver for dnf +mkdir -p %{buildroot}%{_datadir}/osbuild +# Fedora 41 and later use dnf5, RHEL and Fedora < 41 use dnf +%if 0%{?fedora} >= 41 +install -p -m 0644 tools/solver-dnf5.json %{buildroot}%{pkgdir}/solver.json +%else +install -p -m 0644 tools/solver-dnf.json %{buildroot}%{pkgdir}/solver.json %endif %check @@ -294,8 +307,36 @@ fi %files depsolve-dnf %{_libexecdir}/osbuild-depsolve-dnf +%{pkgdir}/solver.json %changelog +* Wed Aug 21 2024 imagebuilder-bot - 126-1 +- New upstream release + +* Wed Aug 14 2024 imagebuilder-bot - 125-1 +- New upstream release + +* Thu Aug 01 2024 imagebuilder-bot - 124-1 +- New upstream release + +* Thu Jul 25 2024 imagebuilder-bot - 123-1 +- New upstream release + +* Tue Jul 23 2024 Tomáš Hozza - 122-2 +- Run tests only on x86_64 + +* Thu Jul 04 2024 imagebuilder-bot - 122-1 +- New upstream release + +* Thu May 23 2024 imagebuilder-bot - 119-1 +- New upstream release + +* Fri May 10 2024 imagebuilder-bot - 118-1 +- New upstream release + +* Wed Feb 28 2024 imagebuilder-bot - 111-1 +- New upstream release + * Mon Feb 26 2024 imagebuilder-bot - 110-1 - New upstream release From 9bc5444a89407324f31f04236393daa71a993cdf Mon Sep 17 00:00:00 2001 From: eabdullin Date: Tue, 13 May 2025 15:08:05 +0000 Subject: [PATCH 3/3] import UBI osbuild-141.2-1.el9_6 --- .gitignore | 2 +- .osbuild.metadata | 2 +- SPECS/osbuild.spec | 57 +++++++++++++++++++++++++++++++++++++++------- 3 files changed, 51 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index a7d169d..a03669c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/osbuild-126.tar.gz +SOURCES/osbuild-141.2.tar.gz diff --git a/.osbuild.metadata b/.osbuild.metadata index 61b0a60..f437706 100644 --- a/.osbuild.metadata +++ b/.osbuild.metadata @@ -1 +1 @@ -5bd0c9d3d7e5ad4afdc1b018320f47f0350cc90b SOURCES/osbuild-126.tar.gz +632a961b280fcdc983fd9f8012e751311c1dcbca SOURCES/osbuild-141.2.tar.gz diff --git a/SPECS/osbuild.spec b/SPECS/osbuild.spec index c4c9e16..e73f5fb 100644 --- a/SPECS/osbuild.spec +++ b/SPECS/osbuild.spec @@ -1,7 +1,7 @@ %global forgeurl https://github.com/osbuild/osbuild %global selinuxtype targeted -Version: 126 +Version: 141.2 %forgemeta @@ -27,7 +27,6 @@ Requires: bash Requires: bubblewrap Requires: coreutils Requires: curl -Requires: dnf Requires: e2fsprogs Requires: glibc Requires: policycoreutils @@ -38,6 +37,7 @@ Requires: tar Requires: util-linux Requires: python3-%{pypi_name} = %{version}-%{release} Requires: (%{name}-selinux if selinux-policy-%{selinuxtype}) +Requires: python3-librepo # This is required for `osbuild`, for RHEL-10 and above # the stdlib toml package can be used instead @@ -121,6 +121,7 @@ containers it uses to build OS artifacts. Summary: Extra tools and utilities Requires: %{name} = %{version}-%{release} Requires: python3-pyyaml +Requires: python3-dnf # These are required for `osbuild-dev`, only packaged for Fedora %if 0%{?fedora} @@ -137,11 +138,14 @@ manifests and osbuild. Summary: Dependency solving support for DNF Requires: %{name} = %{version}-%{release} -# Fedora 41 and later use libdnf5, RHEL and Fedora < 41 use libdnf -%if 0%{?fedora} >= 41 +# RHEL 11 and Fedora 41 and later use libdnf5, RHEL < 11 and Fedora < 41 use dnf +# On Fedora 41 however, we force dnf4 (and depend on python3-dnf) until dnf5 issues are resolved. +# See https://github.com/rpm-software-management/dnf5/issues/1748 +# and https://issues.redhat.com/browse/COMPOSER-2361 +%if 0%{?rhel} >= 11 Requires: python3-libdnf5 >= 5.2.1 %else -Requires: python3-libdnf +Requires: python3-dnf %endif # osbuild 125 added a new "solver" field and osbuild-composer only @@ -151,7 +155,7 @@ Conflicts: osbuild-composer <= 115 # This version needs to get bumped every time the osbuild-dnf-json # version changes in an incompatible way. Packages like osbuild-composer # can depend on the exact API version this way -Provides: osbuild-dnf-json-api = 7 +Provides: osbuild-dnf-json-api = 8 %description depsolve-dnf Contains depsolving capabilities for package managers. @@ -226,8 +230,11 @@ install -p -m 0755 tools/osbuild-depsolve-dnf %{buildroot}%{_libexecdir}/osbuild # Configure the solver for dnf mkdir -p %{buildroot}%{_datadir}/osbuild -# Fedora 41 and later use dnf5, RHEL and Fedora < 41 use dnf -%if 0%{?fedora} >= 41 +# RHEL 11 and Fedora 41 and later use dnf5, RHEL < 11 and Fedora < 41 use dnf +# On Fedora 41 however, we force dnf4 (and depend on python3-dnf) until dnf5 issues are resolved. +# See https://github.com/rpm-software-management/dnf5/issues/1748 +# and https://issues.redhat.com/browse/COMPOSER-2361 +%if 0%{?rhel} >= 11 install -p -m 0644 tools/solver-dnf5.json %{buildroot}%{pkgdir}/solver.json %else install -p -m 0644 tools/solver-dnf.json %{buildroot}%{pkgdir}/solver.json @@ -302,6 +309,7 @@ fi %selinux_relabel_post -s %{selinuxtype} %files tools +%{_bindir}/osbuild-image-info %{_bindir}/osbuild-mpp %{?fedora:%{_bindir}/osbuild-dev} @@ -310,6 +318,39 @@ fi %{pkgdir}/solver.json %changelog +* Wed Apr 02 2025 Tomáš Hozza - 141.2-1 +- Resolve RHEL-85560 + +* Wed Feb 12 2025 imagebuilder-bot - 141-1 +- New upstream release + +* Wed Feb 05 2025 imagebuilder-bot - 140-1 +- New upstream release + +* Thu Jan 30 2025 imagebuilder-bot - 139-1 +- New upstream release + +* Thu Jan 16 2025 imagebuilder-bot - 138-1 +- New upstream release + +* Thu Dec 19 2024 imagebuilder-bot - 137-1 +- New upstream release + +* Wed Dec 04 2024 imagebuilder-bot - 136-1 +- New upstream release + +* Sat Nov 23 2024 imagebuilder-bot - 135-1 +- New upstream release + +* Wed Oct 23 2024 imagebuilder-bot - 132-1 +- New upstream release + +* Wed Oct 09 2024 imagebuilder-bot - 131-1 +- New upstream release + +* Thu Sep 26 2024 Tomáš Hozza - 130-1 +- New upstream release + * Wed Aug 21 2024 imagebuilder-bot - 126-1 - New upstream release