diff --git a/.gitignore b/.gitignore index a490e7c..6893444 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /virt-manager-*.tar.gz +/virt-manager-*.tar.xz diff --git a/0001-virtinst-cloudinit-include-empty-meta-data-file.patch b/0001-virtinst-cloudinit-include-empty-meta-data-file.patch new file mode 100644 index 0000000..4d8459a --- /dev/null +++ b/0001-virtinst-cloudinit-include-empty-meta-data-file.patch @@ -0,0 +1,32 @@ +From ea71cf9a8a4161ce6e19eacf5f0d86d40ab74f23 Mon Sep 17 00:00:00 2001 +Message-ID: +From: Pavel Hrdina +Date: Mon, 29 Sep 2025 16:14:35 +0200 +Subject: [PATCH] virtinst: cloudinit: include empty meta-data file + +Refactor creation of cloud-init config files introduced a bug where we +stopped including empty meta-data file. + +Introduced-by: 5b2d0997a1d2d213b17c227169da64e2fa7d09a6 +Fixes: https://github.com/virt-manager/virt-manager/issues/975 +Signed-off-by: Pavel Hrdina +--- + virtinst/install/cloudinit.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virtinst/install/cloudinit.py b/virtinst/install/cloudinit.py +index 3f565f399..b2378fbfa 100644 +--- a/virtinst/install/cloudinit.py ++++ b/virtinst/install/cloudinit.py +@@ -36,7 +36,7 @@ class _CloudInitConfig: + def _create_file(self): + content = self._content() + +- if not content: ++ if content is None: + return None + + fileobj = tempfile.NamedTemporaryFile( +-- +2.52.0 + diff --git a/sources b/sources index 941c044..e062edf 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (virt-manager-3.1.0.tar.gz) = 185e34d8ebb2f9755bf9732bdafdbe9d0924d8c3b69758947252cce5deeac2042f473ba63673eea2bf36beb1f216a856938650f86e2c86eb5618e8f8522df53d +SHA512 (virt-manager-5.1.0.tar.xz) = 6306500ae442a6ccb36d5f19bc26b0e32984ca145ee8d41a475e175ee4db6c0d253f0cf9d908c30e3269cf7aabdad4bbd30e84f3cd0477f233da1e43e0235e3c diff --git a/virt-manager.spec b/virt-manager.spec index 9f68993..fdef010 100644 --- a/virt-manager.spec +++ b/virt-manager.spec @@ -1,32 +1,33 @@ # -*- rpm-spec -*- -%global with_guestfs 0 -%global default_hvs "qemu,xen,lxc" +%global default_hvs "qemu,xen,lxc" +%global have_spice %{defined fedora} + # End local config Name: virt-manager -Version: 3.1.0 -Release: 1%{?dist} +Version: 5.1.0 +Release: 5%{?dist} %global verrel %{version}-%{release} Summary: Desktop tool for managing virtual machines via libvirt -License: GPLv2+ +License: GPL-2.0-or-later BuildArch: noarch URL: https://virt-manager.org/ -Source0: https://virt-manager.org/download/sources/%{name}/%{name}-%{version}.tar.gz +Source0: https://releases.pagure.org/%{name}/%{name}-%{version}.tar.xz +Patch1: 0001-virtinst-cloudinit-include-empty-meta-data-file.patch Requires: virt-manager-common = %{verrel} -Requires: python3-gobject -Requires: gtk3 +Requires: python3-gobject >= 3.31.3 +Requires: gtk3 >= 3.22.0 Requires: libvirt-glib >= 0.0.9 Requires: gtk-vnc2 +%if %{have_spice} Requires: spice-gtk3 - -# We can work with gtksourceview 3 or gtksourceview4, pick the latest one -Requires: gtksourceview4 +%endif # virt-manager is one of those apps that people will often install onto # a headless machine for use over SSH. This means the virt-manager dep @@ -34,7 +35,12 @@ Requires: gtksourceview4 # Unfortunately nothing in our chain has an explicit dep on some kind # of usable gsettings backend, so we explicitly depend on dconf so that # user settings actually persist across app runs. +# +# That said, we skip this dep for flatpak, where dconf isn't used in +# the runtime. gsettings defaults to ini file in that case +%if ! 0%{?flatpak} Requires: dconf +%endif # The vte291 package is actually the latest vte with API version 2.91, while # the vte3 package is effectively a compat package with API version 2.90. @@ -42,6 +48,10 @@ Requires: dconf # no ambiguity. Requires: vte291 +# We can use GtkTextView, gtksourceview 3 or gtksourceview4, recommend +# the latest one but don't make it a hard requirement +Recommends: gtksourceview4 + # Weak dependencies for the common virt-manager usecase Recommends: (libvirt-daemon-kvm or libvirt-daemon-qemu) Recommends: libvirt-daemon-config-network @@ -52,6 +62,7 @@ Suggests: python3-libguestfs BuildRequires: gettext BuildRequires: python3-devel BuildRequires: python3-docutils +BuildRequires: meson %description @@ -72,8 +83,8 @@ Requires: python3-requests Requires: libosinfo >= 0.2.10 # Required for gobject-introspection infrastructure Requires: python3-gobject-base -# Required for pulling files from iso media with isoinfo -Requires: genisoimage +# Required for pulling files from iso media +Requires: xorriso %description common Common files used by the different virt-manager interfaces, as well as @@ -98,44 +109,40 @@ machine). %prep -%setup -q +%autosetup -p1 %build -%if %{default_hvs} -%global _default_hvs --default-hvs %{default_hvs} +%if ! %{have_spice} +%global _default_graphics -Ddefault-graphics=vnc %endif -./setup.py configure \ - %{?_default_hvs} - +%meson \ + -Ddefault-hvs=%{default_hvs} \ + %{?_default_graphics} \ + -Dupdate-icon-cache=false \ + -Dcompile-schemas=false \ + -Dtests=disabled +%meson_build %install -./setup.py \ - --no-update-icon-cache --no-compile-schemas \ - install -O1 --root=%{buildroot} +%meson_install + %find_lang %{name} %if 0%{?py_byte_compile:1} # https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/#manual-bytecompilation -%py_byte_compile %{python3} %{buildroot}%{_datadir}/virt-manager/ +%py_byte_compile %{__python3} %{buildroot}%{_datadir}/virt-manager/ %endif -# Replace '#!/usr/bin/env python3' with '#!/usr/bin/python3' -# The format is ideal for upstream, but not a distro. See: -# https://fedoraproject.org/wiki/Features/SystemPythonExecutablesUseSystemPython -for f in $(find %{buildroot} -type f -executable -print); do - sed -i "1 s|^#!/usr/bin/env python3|#!%{__python3}|" $f || : -done %files -%doc README.md COPYING NEWS.md %{_bindir}/%{name} %{_mandir}/man1/%{name}.1* -%{_datadir}/%{name}/ui/*.ui +%{_datadir}/%{name}/ui %{_datadir}/%{name}/virtManager %{_datadir}/%{name}/icons @@ -147,8 +154,10 @@ done %files common -f %{name}.lang -%dir %{_datadir}/%{name} +%license COPYING +%doc README.md NEWS.md +%dir %{_datadir}/%{name} %{_datadir}/%{name}/virtinst @@ -167,6 +176,92 @@ done %changelog +* Fri Jul 17 2026 Fedora Release Engineering - 5.1.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild + +* Sat Jan 17 2026 Fedora Release Engineering - 5.1.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Wed Jan 07 2026 Pavel Hrdina - 5.1.0.3 +- Fix cloud init + +* Fri Sep 19 2025 Python Maint - 5.1.0-2 +- Rebuilt for Python 3.14.0rc3 bytecode + +* Tue Aug 26 2025 Pavel Hrdina - 5.1.0-1 +- Update to version 5.1.0 + +* Fri Aug 15 2025 Python Maint - 5.0.0-4 +- Rebuilt for Python 3.14.0rc2 bytecode + +* Fri Jul 25 2025 Fedora Release Engineering - 5.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Sun Jan 19 2025 Fedora Release Engineering - 5.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Mon Dec 02 2024 Pavel Hrdina - 5.0.0-1 +- Update to version 5.0.0 + +* Tue Sep 10 2024 Cole Robinson - 4.1.0-9 +- Add sev-snp changes for feature ConfidentialVirtHostAMDSEVSNP + +* Mon Aug 05 2024 Cole Robinson - 4.1.0-8 +- Fix flatpak build +- Add /usr/share/virt-manager/ui/ to rpm db (bz 2283244) + +* Sat Jul 20 2024 Fedora Release Engineering - 4.1.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Jun 26 2024 Daniel. P. Berrange - 4.1.0-6 +- Fix compat with latest python 3.13 (rhbz #2294201) + +* Sat Jan 27 2024 Fedora Release Engineering - 4.1.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Sep 29 2023 Sandro Bonazzola - 4.1.0-4 +- Drop spice-gtk3 on Fedora ELN as in CentOS Stream 9 +- Resolves: fedora#2237969 + +* Sat Jul 22 2023 Fedora Release Engineering - 4.1.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jan 21 2023 Fedora Release Engineering - 4.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Thu Aug 04 2022 Cole Robinson - 4.1.0-1 +- Update to version 4.1.0 + +* Wed Aug 3 2022 Daniel. P. Berrange - 4.0.0-3 +- Fix compat with setuptools >= 61 (rhbz#2113754) + +* Sat Jul 23 2022 Fedora Release Engineering - 4.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Wed Mar 02 2022 Cole Robinson - 4.0.0-1 +- Update to version 4.0.0 + +* Sun Feb 20 2022 Cole Robinson - 3.2.0-6 +- Update to latest git snapshot + +* Sat Jan 22 2022 Fedora Release Engineering - 3.2.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Fri Jul 23 2021 Fedora Release Engineering - 3.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Jan 27 2021 Fedora Release Engineering - 3.2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jan 11 2021 Cole Robinson - 3.2.0-2 +- Fix 'domain not found' race (bz #1901081) + +* Sat Nov 14 2020 Cole Robinson - 3.2.0-1 +- Update to version 3.2.0 +- Slim down filesystem device editor UI +- Fix TOCTTOU virt-install bugs (Martin Pitt) +- Several other bug fixes + * Wed Sep 30 2020 Cole Robinson - 3.1.0-1 - Update to version 3.1.0 @@ -1080,7 +1175,7 @@ done - Disable wizard sensitivity while creating VM * Thu Oct 19 2006 Daniel P. Berrange - 0.2.5-1.fc7 -- Switch to use python-virtinst instead of python-xeninst due to +- Switch to use python-virtinst instead of python-xeninst due to renaming of original package - Disable keyboard accelerators when grabbing mouse to avoid things like Ctrl-W closing the local window, instead of remote window bz 210364