!16 Update to 42.1
From: @starlet-dx Reviewed-by: @t_feng Signed-off-by: @t_feng
This commit is contained in:
commit
4038dc12f6
@ -1,45 +0,0 @@
|
||||
diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala
|
||||
index ee8cf13..ede5e0e 100644
|
||||
--- a/src/vm-configurator.vala
|
||||
+++ b/src/vm-configurator.vala
|
||||
@@ -38,6 +38,13 @@ private class Boxes.VMConfigurator {
|
||||
private const string LIBOSINFO_XML = "<libosinfo>%s</libosinfo>";
|
||||
private const string LIBOSINFO_OS_ID_XML = "<os id=\"%s\"/>";
|
||||
|
||||
+ /* this var is used for passporting virt type information between function set_cpu_config and statement:
|
||||
+ "var virt_type = guest_kvm_enabled (best_caps) ? DomainVirtType.KVM : DomainVirtType.QEMU;"
|
||||
+ the concrete type of virt_type_p refers to /usr/share/vala/vapi/libvirt-gconfig-1.0.vapi:75: public GVirConfig.DomainVirtType get_virt_type ();
|
||||
+ the virt_type_p must be static then member function create_domain_config and set_cpu_config can access it.
|
||||
+ */
|
||||
+ private static GVirConfig.DomainVirtType virt_type_p = DomainVirtType.QEMU;
|
||||
+
|
||||
public static Domain create_domain_config (InstallerMedia install_media, string target_path, Capabilities caps, DomainCapabilities domain_caps)
|
||||
throws VMConfiguratorError {
|
||||
var domain = new Domain ();
|
||||
@@ -46,9 +53,13 @@ private class Boxes.VMConfigurator {
|
||||
|
||||
var best_caps = get_best_guest_caps (caps, install_media);
|
||||
domain.memory = install_media.resources.ram / KIBIBYTES;
|
||||
- set_cpu_config (domain, caps);
|
||||
+ //set_cpu_config (domain, caps); //move this statement before statement:"domain.set_virt_type (virt_type);"
|
||||
|
||||
var virt_type = guest_kvm_enabled (best_caps) ? DomainVirtType.KVM : DomainVirtType.QEMU;
|
||||
+ // passporting virt type information
|
||||
+ virt_type_p = virt_type;
|
||||
+ // new call position
|
||||
+ set_cpu_config (domain, caps);
|
||||
domain.set_virt_type (virt_type);
|
||||
|
||||
set_os_config (domain, install_media, best_caps, domain_caps);
|
||||
@@ -244,7 +255,10 @@ private class Boxes.VMConfigurator {
|
||||
domain.vcpu = topology.get_sockets () * topology.get_cores () * topology.get_threads ();
|
||||
|
||||
var cpu = new DomainCpu ();
|
||||
- cpu.set_mode (DomainCpuMode.HOST_PASSTHROUGH);
|
||||
+ if(virt_type_p == DomainVirtType.QEMU)
|
||||
+ cpu.set_mode (DomainCpuMode.HOST_MODEL);
|
||||
+ else /* if virt_type_p == DomainVirtType.KVM or other */
|
||||
+ cpu.set_mode (DomainCpuMode.HOST_PASSTHROUGH);
|
||||
cpu.set_topology (topology);
|
||||
|
||||
domain.set_cpu (cpu);
|
||||
@ -1,8 +1,8 @@
|
||||
diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala
|
||||
index ede5e0e..010faa0 100644
|
||||
index c75cd45..521ab0c 100644
|
||||
--- a/src/vm-configurator.vala
|
||||
+++ b/src/vm-configurator.vala
|
||||
@@ -443,11 +443,11 @@ private class Boxes.VMConfigurator {
|
||||
@@ -461,11 +461,11 @@ private static void set_os_config (Domain domain, InstallerMedia install_media,
|
||||
|
||||
private static void set_video_config (Domain domain, InstallerMedia install_media) {
|
||||
var video = new DomainVideo ();
|
||||
|
||||
@ -1,21 +1,22 @@
|
||||
diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala
|
||||
index 010faa0..66e435b 100644
|
||||
index 521ab0c..bef9f95 100644
|
||||
--- a/src/vm-configurator.vala
|
||||
+++ b/src/vm-configurator.vala
|
||||
@@ -114,7 +114,7 @@ private class Boxes.VMConfigurator {
|
||||
@@ -103,8 +103,10 @@ public static Domain create_domain_config (InstallerMedia install_media, string
|
||||
|
||||
add_usb_support (domain);
|
||||
#if !FLATPAK
|
||||
- add_smartcard_support (domain);
|
||||
+ //add_smartcard_support (domain);
|
||||
#endif
|
||||
add_usb_support (domain, install_media);
|
||||
|
||||
+/*
|
||||
if (!App.is_running_in_flatpak ())
|
||||
add_smartcard_support (domain);
|
||||
+*/
|
||||
|
||||
set_video_config (domain, install_media);
|
||||
@@ -651,14 +651,14 @@ private class Boxes.VMConfigurator {
|
||||
} catch (GLib.Error error) { assert_not_reached (); /* We are so screwed if this happens */ }
|
||||
set_sound_config (domain, install_media);
|
||||
@@ -670,12 +672,14 @@ else if (install_media is InstalledMedia)
|
||||
}
|
||||
}
|
||||
-
|
||||
|
||||
+/*
|
||||
public static void add_smartcard_support (Domain domain) {
|
||||
var smartcard = new DomainSmartcardPassthrough ();
|
||||
@ -23,8 +24,7 @@ index 010faa0..66e435b 100644
|
||||
smartcard.set_source (vmc);
|
||||
domain.add_device (smartcard);
|
||||
}
|
||||
-
|
||||
+*/
|
||||
public static void add_usb_support (Domain domain) {
|
||||
// 4 USB redirection channels
|
||||
for (int i = 0; i < 4; i++) {
|
||||
|
||||
public static void add_usb_support (Domain domain, InstallerMedia install_media) {
|
||||
|
||||
|
||||
@ -1,46 +1,33 @@
|
||||
diff --git a/src/libvirt-machine.vala b/src/libvirt-machine.vala
|
||||
index fad5114..77de4a2 100644
|
||||
index 054f722..fc90003 100644
|
||||
--- a/src/libvirt-machine.vala
|
||||
+++ b/src/libvirt-machine.vala
|
||||
@@ -60,9 +60,15 @@ private class Boxes.LibvirtMachine: Boxes.Machine {
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
#if HAS_SPICE
|
||||
GLib.List<GVirConfig.DomainDevice> devices = null;
|
||||
foreach (var device in domain_config.get_devices ()) {
|
||||
+/*
|
||||
if (device is GVirConfig.DomainGraphicsSpice) {
|
||||
- if (device is GVirConfig.DomainGraphicsSpice) {
|
||||
+ if (device is GVirConfig.DomainGraphicsVnc) {
|
||||
var graphics_device = VMConfigurator.create_graphics_device (_acceleration_3d);
|
||||
|
||||
+ devices.prepend (graphics_device);
|
||||
+*/
|
||||
+ if (device is GVirConfig.DomainGraphicsVnc) {
|
||||
+ var graphics_device = VMConfigurator.create_graphics_device (_acceleration_3d);
|
||||
+
|
||||
devices.prepend (graphics_device);
|
||||
} else if (device is GVirConfig.DomainVideo) {
|
||||
var video_device = device as GVirConfig.DomainVideo;
|
||||
diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala
|
||||
index 66e435b..695cb90 100644
|
||||
index bef9f95..26a7199 100644
|
||||
--- a/src/vm-configurator.vala
|
||||
+++ b/src/vm-configurator.vala
|
||||
@@ -699,6 +699,7 @@ private class Boxes.VMConfigurator {
|
||||
return iface;
|
||||
@@ -742,12 +742,9 @@ private static DomainChannel create_spice_agent_channel () {
|
||||
return channel;
|
||||
}
|
||||
|
||||
+/*
|
||||
public static DomainGraphicsSpice create_graphics_device (bool accel3d = false) {
|
||||
var graphics = new DomainGraphicsSpice ();
|
||||
graphics.set_autoport (false);
|
||||
@@ -707,6 +708,13 @@ private class Boxes.VMConfigurator {
|
||||
|
||||
return graphics;
|
||||
}
|
||||
+*/
|
||||
- public static DomainGraphicsSpice create_graphics_device (bool accel3d = false) {
|
||||
- var graphics = new DomainGraphicsSpice ();
|
||||
- graphics.set_autoport (false);
|
||||
- graphics.set_gl (accel3d);
|
||||
- graphics.set_image_compression (DomainGraphicsSpiceImageCompression.OFF);
|
||||
-
|
||||
+ public static DomainGraphicsVnc create_graphics_device (bool accel3d = false) {
|
||||
+ var graphics = new DomainGraphicsVnc ();
|
||||
+ graphics.set_autoport (true);
|
||||
+
|
||||
+ return graphics;
|
||||
+ }
|
||||
return graphics;
|
||||
}
|
||||
|
||||
public static DomainChannel create_webdav_channel () {
|
||||
var channel_webdav = new DomainChannel ();
|
||||
|
||||
@ -1,35 +1,35 @@
|
||||
diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala
|
||||
index 695cb90..b02beeb 100644
|
||||
index 26a7199..263f966 100644
|
||||
--- a/src/vm-configurator.vala
|
||||
+++ b/src/vm-configurator.vala
|
||||
@@ -104,8 +104,10 @@ private class Boxes.VMConfigurator {
|
||||
var channel = new DomainChannel ();
|
||||
channel.set_target_type (DomainChannelTargetType.VIRTIO);
|
||||
channel.set_target_name ("com.redhat.spice.0");
|
||||
+/*
|
||||
var vmc = new DomainChardevSourceSpiceVmc ();
|
||||
channel.set_source (vmc);
|
||||
+*/
|
||||
domain.add_device (channel);
|
||||
@@ -684,6 +684,7 @@ public static void add_smartcard_support (Domain domain) {
|
||||
public static void add_usb_support (Domain domain, InstallerMedia install_media) {
|
||||
|
||||
// Webdav channel. This is needed for the shared folder feature to work.
|
||||
@@ -661,6 +663,7 @@ private class Boxes.VMConfigurator {
|
||||
*/
|
||||
public static void add_usb_support (Domain domain) {
|
||||
// 4 USB redirection channels
|
||||
+/*
|
||||
for (int i = 0; i < 4; i++) {
|
||||
var usb_redir = new DomainRedirdev ();
|
||||
usb_redir.set_bus (DomainRedirdevBus.USB);
|
||||
@@ -668,6 +671,7 @@ private class Boxes.VMConfigurator {
|
||||
@@ -691,6 +692,7 @@ public static void add_usb_support (Domain domain, InstallerMedia install_media)
|
||||
usb_redir.set_source (vmc);
|
||||
domain.add_device (usb_redir);
|
||||
}
|
||||
+*/
|
||||
|
||||
// USB controllers
|
||||
var master_controller = create_usb_controller (DomainControllerUsbModel.ICH9_EHCI1);
|
||||
@@ -721,9 +725,11 @@ private class Boxes.VMConfigurator {
|
||||
var device = find_device_by_prop (install_media.supported_devices, DEVICE_PROP_NAME, "qemu-xhci");
|
||||
if (device != null) {
|
||||
@@ -736,8 +738,10 @@ private static DomainChannel create_spice_agent_channel () {
|
||||
var channel = new DomainChannel ();
|
||||
channel.set_target_type (DomainChannelTargetType.VIRTIO);
|
||||
channel.set_target_name (SPICE_AGENT_CHANNEL);
|
||||
+/*
|
||||
var vmc = new DomainChardevSourceSpiceVmc ();
|
||||
channel.set_source (vmc);
|
||||
+*/
|
||||
|
||||
return channel;
|
||||
}
|
||||
@@ -753,9 +757,11 @@ public static DomainChannel create_spice_webdav_channel () {
|
||||
channel_webdav.set_target_type (DomainChannelTargetType.VIRTIO);
|
||||
channel_webdav.set_target_name (WEBDAV_CHANNEL_URI);
|
||||
|
||||
|
||||
Binary file not shown.
BIN
gnome-boxes-42.1.tar.xz
Normal file
BIN
gnome-boxes-42.1.tar.xz
Normal file
Binary file not shown.
@ -1,15 +1,17 @@
|
||||
%global distributor_name openEuler
|
||||
%global distributor_version %{openEuler}
|
||||
%global url_ver %%(echo %{version}|cut -d. -f1,2)
|
||||
%global major_version %%(echo %%{tarball_version} | cut -d. -f1)
|
||||
|
||||
Name: gnome-boxes
|
||||
Version: 3.38.2
|
||||
Release: 4
|
||||
%global __provides_exclude_from ^%{_libdir}/gnome-boxes/
|
||||
%global __requires_exclude ^(%%(find %{buildroot}%{_libdir}/gnome-boxes/ -name '*.so' | xargs -n1 basename | sort -u | paste -s -d '|' -))
|
||||
|
||||
Name: gnome-boxes
|
||||
Version: 42.1
|
||||
Release: 1
|
||||
Summary: An application of the GNOME Desktop Environment
|
||||
License: LGPLv2+
|
||||
URL: https://wiki.gnome.org/Apps/Boxes
|
||||
Source0: http://download.gnome.org/sources/%{name}/%{url_ver}/%{name}-%{version}.tar.xz
|
||||
Patch0: 0001-make-gnome-boxes-correctly-select-virtualization-cpu-mode.patch
|
||||
Source0: https://download.gnome.org/sources/%{name}/%{major_version}/%{name}-%{version}.tar.xz
|
||||
Patch1: 0002-disable-domain-conf-video-model-qxl-because-qemu-not-open-this-support.patch
|
||||
Patch2: 0003-disable-domain-conf-smartcard-because-qemu-not-open-this-support-now.patch
|
||||
Patch3: 0004-disable-domain-conf-spice-graphics-because-qemu-not-open-this-support-now-and-add-vnc-instead.patch
|
||||
@ -24,6 +26,8 @@ BuildRequires: pkgconfig(libvirt-gconfig-1.0) pkgconfig(libxml-2.0) pkgconfig(g
|
||||
BuildRequires: pkgconfig(libosinfo-1.0) >= 1.4.0 pkgconfig(libsoup-2.4) >= 2.44 pkgconfig(vte-2.91)
|
||||
BuildRequires: pkgconfig(tracker-sparql-3.0) pkgconfig(webkit2gtk-4.0) spice-gtk3-vala libosinfo-vala
|
||||
BuildRequires: desktop-file-utils pkgconfig(libusb-1.0) pkgconfig(gtksourceview-4) spice-gtk spice-gtk-devel chrpath
|
||||
BuildRequires: pkgconfig(gvncpulse-1.0) pkgconfig(libhandy-1)
|
||||
|
||||
Requires: libvirt-daemon-kvm libvirt-daemon-config-network mtools genisoimage adwaita-icon-theme
|
||||
|
||||
%description
|
||||
@ -33,7 +37,7 @@ An application of the GNOME Desktop Environment,used to access remote or virtual
|
||||
%autosetup -n %{name}-%{version} -p1
|
||||
|
||||
%build
|
||||
%meson -D distributor_name=%{distributor_name} -D distributor_version=%{distributor_version} \
|
||||
%meson -D distributor_name=%{distributor_name} -D distributor_version=%{distributor_version}
|
||||
%meson_build
|
||||
|
||||
%install
|
||||
@ -44,6 +48,12 @@ chrpath -d %{buildroot}%{_bindir}/gnome-boxes
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/ld.so.conf.d
|
||||
echo "%{_libdir}/gnome-boxes" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
|
||||
|
||||
rm -rf %{buildroot}%{_includedir}/gnome-boxes/
|
||||
rm -rf %{buildroot}%{_libdir}/gnome-boxes/girepository-1.0/
|
||||
rm -rf %{buildroot}%{_libdir}/gnome-boxes/pkgconfig/
|
||||
rm -rf %{buildroot}%{_datadir}/gnome-boxes/gir-1.0/
|
||||
rm -rf %{buildroot}%{_datadir}/gnome-boxes/vapi/
|
||||
|
||||
%post
|
||||
/sbin/ldconfig
|
||||
|
||||
@ -54,10 +64,8 @@ echo "%{_libdir}/gnome-boxes" > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-
|
||||
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Boxes.desktop
|
||||
|
||||
%files -f %{name}.lang
|
||||
%exclude %{_includedir}/gnome-boxes/
|
||||
%exclude %{_libdir}/gnome-boxes/{girepository-1.0,pkgconfig}
|
||||
%exclude %{_datadir}/gnome-boxes/{gir-1.0,vapi}
|
||||
%doc AUTHORS README.md NEWS COPYING
|
||||
%license COPYING copyright
|
||||
%doc README.md NEWS
|
||||
%{_bindir}/gnome-boxes
|
||||
%{_libdir}/gnome-boxes
|
||||
%{_libexecdir}/gnome-boxes-search-provider
|
||||
@ -67,7 +75,7 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Boxes.deskt
|
||||
%dir %{_datadir}/gnome-shell
|
||||
%dir %{_datadir}/gnome-shell/search-providers
|
||||
%{_datadir}/gnome-shell/search-providers/org.gnome.Boxes.SearchProvider.ini
|
||||
%{_datadir}/icons/hicolor/scalable/apps/org.gnome.Boxes.svg
|
||||
%{_datadir}/icons/hicolor/*/apps/org.gnome.Boxes.svg
|
||||
%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Boxes-symbolic.svg
|
||||
%{_datadir}/dbus-1/services/org.gnome.Boxes.SearchProvider.service
|
||||
%{_datadir}/dbus-1/services/org.gnome.Boxes.service
|
||||
@ -75,6 +83,9 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Boxes.deskt
|
||||
%{_sysconfdir}/ld.so.conf.d/%{name}-%{_arch}.conf
|
||||
|
||||
%changelog
|
||||
* Mon Oct 31 2022 yaoxin <yaoxin30@h-partners.com> - 42.1-1
|
||||
- Update to 42.1
|
||||
|
||||
* Tue Mar 15 2022 weijin deng <weijin.deng@turbolinux.com.cn> - 3.38.2-4
|
||||
- Add four patches to make gome-boxes avoid setting qemu unsupported modules
|
||||
add vnc instead of spice
|
||||
|
||||
4
gnome-boxes.yaml
Normal file
4
gnome-boxes.yaml
Normal file
@ -0,0 +1,4 @@
|
||||
version_control: gitlab.gnome
|
||||
src_repo: gnome-boxes
|
||||
tag_prefix: ^
|
||||
separator: .
|
||||
Loading…
x
Reference in New Issue
Block a user