From 738c8ea9f474e039bd025efd1192c4898e243ba4 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Fri, 2 Aug 2019 11:48:37 -0400 Subject: [PATCH] import gnome-boxes-3.28.5-6.el8 --- .gitignore | 1 + .gnome-boxes.metadata | 1 + ...nome-boxes-hardcode-recommended-oses.patch | 332 +++++++++ ...-boxes-unbreak-the-icon-installation.patch | 56 ++ SOURCES/gnome-boxes-update-rhel-logo.patch | 63 ++ .../gnome-boxes-use-q35-machine-type.patch | 354 +++++++++ SPECS/gnome-boxes.spec | 696 ++++++++++++++++++ 7 files changed, 1503 insertions(+) create mode 100644 .gitignore create mode 100644 .gnome-boxes.metadata create mode 100644 SOURCES/gnome-boxes-hardcode-recommended-oses.patch create mode 100644 SOURCES/gnome-boxes-unbreak-the-icon-installation.patch create mode 100644 SOURCES/gnome-boxes-update-rhel-logo.patch create mode 100644 SOURCES/gnome-boxes-use-q35-machine-type.patch create mode 100644 SPECS/gnome-boxes.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d6c5596 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/gnome-boxes-3.28.5.tar.xz diff --git a/.gnome-boxes.metadata b/.gnome-boxes.metadata new file mode 100644 index 0000000..184b01a --- /dev/null +++ b/.gnome-boxes.metadata @@ -0,0 +1 @@ +5c29480ed1a8d75ce8fa34418ccbf7b745de793a SOURCES/gnome-boxes-3.28.5.tar.xz diff --git a/SOURCES/gnome-boxes-hardcode-recommended-oses.patch b/SOURCES/gnome-boxes-hardcode-recommended-oses.patch new file mode 100644 index 0000000..338a84b --- /dev/null +++ b/SOURCES/gnome-boxes-hardcode-recommended-oses.patch @@ -0,0 +1,332 @@ +From b874d9355644eb686a8af9df03884a0a19513059 Mon Sep 17 00:00:00 2001 +From: Felipe Borges +Date: Tue, 13 Nov 2018 14:26:12 +0100 +Subject: [PATCH] wizard-downloads: Load recommended downloads from an XML file + +This way downstreams (vendors, distros) could easily tweak the +list and offer the Osinfo downloads that they prefer, with the +sorting they want. + +Cherry-picked from eb3af034b5cda6ce1fa6812624b531ea53f90f72 +--- + data/gnome-boxes.gresource.xml | 1 + + data/recommended-downloads.xml | 18 +++++++ + data/ui/wizard-source.ui | 1 - + src/util-app.vala | 80 ++++++++++++++++++++++++++++ + src/wizard-downloads-page.vala | 95 ++++++++++++++++++++++++++++++++++ + src/wizard-source.vala | 33 ++++-------- + 6 files changed, 204 insertions(+), 24 deletions(-) + create mode 100644 data/recommended-downloads.xml + create mode 100644 src/wizard-downloads-page.vala + +diff --git a/data/gnome-boxes.gresource.xml b/data/gnome-boxes.gresource.xml +index 01c72d59..8a9b8b95 100644 +--- a/data/gnome-boxes.gresource.xml ++++ b/data/gnome-boxes.gresource.xml +@@ -3,6 +3,7 @@ + + gtk-style.css + ui/menus.ui ++ recommended-downloads.xml + icons/boxes-arrow.svg + icons/boxes-create.png + icons/empty-boxes.png +diff --git a/data/recommended-downloads.xml b/data/recommended-downloads.xml +new file mode 100644 +index 00000000..b389e945 +--- /dev/null ++++ b/data/recommended-downloads.xml +@@ -0,0 +1,18 @@ ++ ++ ++ ++ http://redhat.com/rhel/7.6 ++ http://fedoraproject.org/fedora/29 ++ http://fedoraproject.org/silverblue/29 ++ http://ubuntu.com/ubuntu/18.10 ++ http://opensuse.org/opensuse/15.0 ++ http://debian.org/debian/9 ++ +diff --git a/data/ui/wizard-source.ui b/data/ui/wizard-source.ui +index b59fccfc..6762d2d6 100644 +--- a/data/ui/wizard-source.ui ++++ b/data/ui/wizard-source.ui +@@ -49,7 +49,6 @@ + + + False +- + + + +diff --git a/src/util-app.vala b/src/util-app.vala +index aba87cfd..253d1b74 100644 +--- a/src/util-app.vala ++++ b/src/util-app.vala +@@ -102,6 +102,86 @@ public void fetch_os_logo (Gtk.Image image, Osinfo.Os os, int size) { + } + } + ++ public string serialize_os_title (Osinfo.Media media) { ++ var title = "unknown"; ++ ++ /* Libosinfo lacks some OS variant names, so we do some ++ parsing here to compose a unique human-readable media ++ identifier. */ ++ var variant = ""; ++ var variants = media.get_os_variants (); ++ if (variants.get_length () > 0) ++ variant = (variants.get_nth (0) as Osinfo.OsVariant).get_name (); ++ else if ((media.os as Osinfo.Product).name != null) { ++ variant = (media.os as Osinfo.Product).name; ++ if (media.url != null && media.url.contains ("server")) ++ variant += " Server"; ++ } else { ++ var file = File.new_for_uri (media.url); ++ ++ title = file.get_basename ().replace ("_", ""); ++ } ++ ++ var subvariant = ""; ++ ++ if (media.url != null) { ++ if (media.url.contains ("netinst")) ++ subvariant = "(netinst)"; ++ else if (media.url.contains ("minimal")) ++ subvariant = "(minimal)"; ++ else if (media.url.contains ("dvd")) ++ subvariant = "(DVD)"; ++ } ++ ++ var is_live = media.live ? " (" + _("Live") + ")" : ""; ++ ++ title = @"$variant $(media.architecture) $subvariant $is_live"; ++ ++ /* Strip consequent whitespaces */ ++ return title.replace (" ", ""); ++ } ++ ++ public async GLib.List? get_recommended_downloads () { ++ uint8[] contents; ++ ++ try { ++ File file = File.new_for_uri ("resource:///org/gnome/Boxes/recommended-downloads.xml"); ++ ++ file.load_contents (null, out contents, null); ++ } catch (GLib.Error e) { ++ warning ("Failed to load recommended downloads file: %s", e.message); ++ ++ return null; ++ } ++ ++ Xml.Doc* doc = Xml.Parser.parse_doc ((string)contents); ++ if (doc == null) ++ return null; ++ ++ Xml.Node* root = doc->get_root_element (); ++ if (root == null || root->name != "list") { ++ warning ("Failed to parse recommended downloads"); ++ ++ return null; ++ } ++ ++ GLib.List list = new GLib.List (); ++ var os_db = MediaManager.get_instance ().os_db; ++ for (Xml.Node* iter = root->children; iter != null; iter = iter->next) { ++ var os_id = iter->get_content (); ++ try { ++ var os = yield os_db.get_os_by_id (os_id); ++ var media = os.get_media_list ().get_nth (0) as Osinfo.Media; ++ ++ list.append (media); ++ } catch (OSDatabaseError error) { ++ warning ("Failed to find OS with id: '%s': %s", os_id, error.message); ++ } ++ } ++ ++ return list; ++ } ++ + public async GVir.StoragePool ensure_storage_pool (GVir.Connection connection) throws GLib.Error { + var pool = get_storage_pool (connection); + if (pool == null) { +diff --git a/src/wizard-downloads-page.vala b/src/wizard-downloads-page.vala +new file mode 100644 +index 00000000..0b77a9cb +--- /dev/null ++++ b/src/wizard-downloads-page.vala +@@ -0,0 +1,95 @@ ++// This file is part of GNOME Boxes. License: LGPLv2+ ++ ++public enum WizardDownloadsPageView { ++ RECOMMENDED, ++ SEARCH_RESULTS, ++ NO_RESULTS, ++} ++ ++public delegate void Boxes.DownloadChosenFunc (Boxes.WizardDownloadableEntry entry); ++ ++[GtkTemplate (ui = "/org/gnome/Boxes/ui/wizard-downloads-page.ui")] ++public class Boxes.WizardDownloadsPage : Gtk.Stack { ++ private OSDatabase os_db = new OSDatabase (); ++ public DownloadsSearch search { private set; get; } ++ ++ public DownloadChosenFunc download_chosen_func; ++ ++ [GtkChild] ++ private Gtk.ListBox listbox; ++ [GtkChild] ++ private Gtk.ListBox recommended_listbox; ++ ++ private GLib.ListStore recommended_model; ++ ++ private WizardDownloadsPageView _page; ++ public WizardDownloadsPageView page { ++ get { return _page; } ++ set { ++ _page = value; ++ ++ switch (_page) { ++ case WizardDownloadsPageView.SEARCH_RESULTS: ++ visible_child_name = "search-results"; ++ break; ++ case WizardDownloadsPageView.NO_RESULTS: ++ visible_child_name = "no-results"; ++ break; ++ case WizardDownloadsPageView.RECOMMENDED: ++ default: ++ visible_child_name = "recommended"; ++ break; ++ } ++ } ++ } ++ ++ construct { ++ os_db.load.begin (); ++ ++ search = new DownloadsSearch (); ++ ++ recommended_model = new GLib.ListStore (typeof (Osinfo.Media)); ++ recommended_listbox.bind_model (recommended_model, create_downloads_entry); ++ populate_recommended_list.begin (); ++ ++ listbox.bind_model (search.model, create_downloads_entry); ++ ++ search.search_changed.connect (set_visible_view); ++ } ++ ++ private void set_visible_view () { ++ if (search.text.length == 0) { ++ page = WizardDownloadsPageView.RECOMMENDED; ++ } else if (search.model.get_n_items () == 0) { ++ page = WizardDownloadsPageView.NO_RESULTS; ++ } else { ++ page = WizardDownloadsPageView.SEARCH_RESULTS; ++ } ++ } ++ ++ private async void populate_recommended_list () { ++ foreach (var media in yield get_recommended_downloads ()) { ++ recommended_model.append (media); ++ } ++ } ++ ++ private Gtk.Widget create_downloads_entry (Object item) { ++ var media = item as Osinfo.Media; ++ ++ return new WizardDownloadableEntry (media); ++ } ++ ++ [GtkCallback] ++ private void on_listbox_row_activated (Gtk.ListBoxRow row) { ++ var entry = row as WizardDownloadableEntry; ++ ++ download_chosen_func (entry); ++ } ++ ++ [GtkCallback] ++ private void on_show_more_button_clicked () { ++ search.show_all (); ++ ++ page = WizardDownloadsPageView.SEARCH_RESULTS; ++ } ++} +diff --git a/src/wizard-source.vala b/src/wizard-source.vala +index 9ea0a9b1..494c5561 100644 +--- a/src/wizard-source.vala ++++ b/src/wizard-source.vala +@@ -310,6 +310,7 @@ private void on_notify_estimated_load_progress () { + + private Gtk.ListBox media_vbox; + private Gtk.ListBox downloads_vbox; ++ private GLib.ListStore downloads_model; + private Osinfo.Os rhel_os; + + private Cancellable? rhel_cancellable; +@@ -318,12 +319,6 @@ private void on_notify_estimated_load_progress () { + + public string filename { get; set; } + +- private string[] recommended_downloads = { +- "http://ubuntu.com/ubuntu/16.04", +- "http://opensuse.org/opensuse/42.2", +- "http://fedoraproject.org/fedora/27", +- }; +- + public bool download_required { + get { + string scheme = Uri.parse_scheme (uri); +@@ -409,6 +404,8 @@ private void on_notify_estimated_load_progress () { + } + }); + ++ downloads_model = new GLib.ListStore (typeof (Osinfo.Media)); ++ + rhel_web_view.view.decide_policy.connect (on_rhel_web_view_decide_policy); + } + +@@ -425,26 +422,16 @@ public void setup_ui (AppWindow window) { + assert (window != null); + + this.window = window; ++ ++ downloads_vbox.bind_model (downloads_model, create_downloadable_entry); ++ ++ populate_recommended_downloads.begin (); + } + +- [GtkCallback] +- private void on_downloads_scrolled_shown () { ++ private async void populate_recommended_downloads () { + var os_db = media_manager.os_db; +- foreach (var os_id in recommended_downloads) { +- os_db.get_os_by_id.begin (os_id, (obj, res) => { +- try { +- var os = os_db.get_os_by_id.end (res); +- +- // TODO: Select the desktop/workstation variant. +- var media = os.get_media_list ().get_nth (0) as Osinfo.Media; +- var entry = create_downloadable_entry (media); +- +- downloads_vbox.insert (entry, -1); +- } catch (OSDatabaseError error) { +- warning ("Failed to find OS with ID '%s': %s", os_id, error.message); +- return; +- } +- }); ++ foreach (var media in yield get_recommended_downloads ()) { ++ downloads_model.append (media); + } + } + +-- +2.19.2 + diff --git a/SOURCES/gnome-boxes-unbreak-the-icon-installation.patch b/SOURCES/gnome-boxes-unbreak-the-icon-installation.patch new file mode 100644 index 0000000..4e24c84 --- /dev/null +++ b/SOURCES/gnome-boxes-unbreak-the-icon-installation.patch @@ -0,0 +1,56 @@ +From e8b9d5ca5ebed5f2e076e6e6c975ec37efc21c5b Mon Sep 17 00:00:00 2001 +From: Debarshi Ray +Date: Fri, 8 Jun 2018 12:42:49 +0200 +Subject: [PATCH] build: Unbreak the icon installation in gnome-3-28 + +The icons were getting directly copied to $data_dir/icons without +retaining the directory hierarchy inside. + +Fallout from d2410d0959094dee8cc3e1276b255e8fb991fe31 + +It was also broken in master, but was fixed by +c115f5bfb56aa9fe42356c5f4f9ee87f6c87f454 and +578707e9924c32a808e12c2830f18156ccb109f6 + +https://gitlab.gnome.org/GNOME/gnome-boxes/issues/217 +--- + data/meson.build | 26 +------------------------- + 1 file changed, 1 insertion(+), 25 deletions(-) + +diff --git a/data/meson.build b/data/meson.build +index 847734e59715..9f1c4b482356 100644 +--- a/data/meson.build ++++ b/data/meson.build +@@ -1,28 +1,4 @@ +-icondir = join_paths(data_dir, 'icons') +- +-install_data('icons/hicolor/16x16/apps/org.gnome.Boxes.png', +- install_dir: icondir, +-) +- +-install_data('icons/hicolor/24x24/apps/org.gnome.Boxes.png', +- install_dir: icondir, +-) +- +-install_data('icons/hicolor/symbolic/apps/org.gnome.Boxes-symbolic.svg', +- install_dir: icondir, +-) +-install_data('icons/hicolor/32x32/apps/org.gnome.Boxes.png', +- install_dir: icondir, +-) +- +-install_data('icons/hicolor/48x48/apps/org.gnome.Boxes.png', +- install_dir: icondir, +-) +- +-install_data('icons/hicolor/256x256/apps/org.gnome.Boxes.png', +- install_dir: icondir, +-) +- ++install_subdir('icons/hicolor/', install_dir: join_paths (data_dir, 'icons')) + + resource_files = files ('gnome-boxes.gresource.xml') + resources = gnome.compile_resources ('org.gnome.Boxes', +-- +2.14.4 + diff --git a/SOURCES/gnome-boxes-update-rhel-logo.patch b/SOURCES/gnome-boxes-update-rhel-logo.patch new file mode 100644 index 0000000..44b3bc1 --- /dev/null +++ b/SOURCES/gnome-boxes-update-rhel-logo.patch @@ -0,0 +1,63 @@ +diff --git a/data/osinfo/meson.build b/data/osinfo/meson.build +index 0f4982f..c7c6017 100644 +--- a/data/osinfo/meson.build ++++ b/data/osinfo/meson.build +@@ -10,7 +10,8 @@ osinfo_db = [ + ['rhel-4.0.xml', 'gnome-boxes/osinfo/os/redhat.com'], + ['rhel-5.0.xml', 'gnome-boxes/osinfo/os/redhat.com'], + ['rhel-6.0.xml', 'gnome-boxes/osinfo/os/redhat.com'], +- ['rhel-7.0.xml', 'gnome-boxes/osinfo/os/redhat.com'] ++ ['rhel-7.0.xml', 'gnome-boxes/osinfo/os/redhat.com'], ++ ['rhel-8.0.xml', 'gnome-boxes/osinfo/os/redhat.com'] + ] + + foreach os: osinfo_db +diff --git a/data/osinfo/rhel-4.0.xml b/data/osinfo/rhel-4.0.xml +index 2839687..318544e 100644 +--- a/data/osinfo/rhel-4.0.xml ++++ b/data/osinfo/rhel-4.0.xml +@@ -3,7 +3,7 @@ + + + +- https://people.gnome.org/~zeeshanak/logos/shadownman-pill.svg ++ https://gitlab.gnome.org/GNOME/gnome-boxes-logos/raw/master/logos/shadownman-pill.svg + + + +diff --git a/data/osinfo/rhel-8.0.xml b/data/osinfo/rhel-8.0.xml +new file mode 100644 +index 0000000..ad7a785 +--- /dev/null ++++ b/data/osinfo/rhel-8.0.xml +@@ -0,0 +1,9 @@ ++ ++ ++ ++ ++ ++ https://gitlab.gnome.org/GNOME/gnome-boxes-logos/raw/master/logos/shadownman-pill.svg ++ ++ ++ +diff --git a/data/recommended-downloads.xml b/data/recommended-downloads.xml +index b389e94..6f2ccce 100644 +--- a/data/recommended-downloads.xml ++++ b/data/recommended-downloads.xml +@@ -9,10 +9,11 @@ + available. + --> + +- http://redhat.com/rhel/7.6 +- http://fedoraproject.org/fedora/29 +- http://fedoraproject.org/silverblue/29 +- http://ubuntu.com/ubuntu/18.10 +- http://opensuse.org/opensuse/15.0 ++ http://redhat.com/rhel/8.1 ++ http://redhat.com/rhel/7.7 ++ http://fedoraproject.org/fedora/30 ++ http://fedoraproject.org/silverblue/30 ++ http://ubuntu.com/ubuntu/19.04 ++ http://opensuse.org/opensuse/15.1 + http://debian.org/debian/9 + diff --git a/SOURCES/gnome-boxes-use-q35-machine-type.patch b/SOURCES/gnome-boxes-use-q35-machine-type.patch new file mode 100644 index 0000000..fcae63a --- /dev/null +++ b/SOURCES/gnome-boxes-use-q35-machine-type.patch @@ -0,0 +1,354 @@ +--- + src/meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/meson.build b/src/meson.build +index ac79b7fc..00903170 100644 +--- a/src/meson.build ++++ b/src/meson.build +@@ -125,8 +125,8 @@ dependencies = [ + dependency ('libsecret-1'), + dependency ('libsoup-2.4', version: '>= 2.38'), + dependency ('libusb-1.0', version: '>= 1.0.9'), +- dependency ('libvirt-gconfig-1.0', version: '>= 0.2.0'), +- dependency ('libvirt-gobject-1.0', version: '>= 0.2.0'), ++ dependency ('libvirt-gconfig-1.0', version: '>= 2.0.0'), ++ dependency ('libvirt-gobject-1.0', version: '>= 2.0.0'), + dependency ('libxml-2.0', version: '>= 2.7.8'), + dependency ('spice-client-gtk-3.0', version: '>= 0.32'), + dependency ('tracker-sparql-2.0'), +-- + +--- + src/installer-media.vala | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + +diff --git a/src/installer-media.vala b/src/installer-media.vala +index feb5d7b..b29c10b 100644 +--- a/src/installer-media.vala ++++ b/src/installer-media.vala +@@ -25,12 +25,24 @@ private class Boxes.InstallerMedia : GLib.Object { + public virtual bool need_user_input_for_vm_creation { get { return false; } } + public virtual bool ready_to_create { get { return true; } } + ++ public bool supports_virtio1_disk { ++ get { ++ return (find_device_by_prop (supported_devices, DEVICE_PROP_NAME, "virtio1.0-block") != null); ++ } ++ } ++ + public bool supports_virtio_disk { + get { + return (find_device_by_prop (supported_devices, DEVICE_PROP_NAME, "virtio-block") != null); + } + } + ++ public bool supports_virtio1_net { ++ get { ++ return (find_device_by_prop (supported_devices, DEVICE_PROP_NAME, "virtio1.0-net") != null); ++ } ++ } ++ + public bool supports_virtio_net { + get { + return (find_device_by_prop (supported_devices, DEVICE_PROP_NAME, "virtio-net") != null); +-- + +--- + src/unattended-installer.vala | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/unattended-installer.vala b/src/unattended-installer.vala +index 4e0ba23..6a37e20 100644 +--- a/src/unattended-installer.vala ++++ b/src/unattended-installer.vala +@@ -232,7 +232,7 @@ private class Boxes.UnattendedInstaller: InstallerMedia { + if (os.distro == "win") + config.set_target_disk ("C"); + else +- config.set_target_disk (supports_virtio_disk? "/dev/vda" : "/dev/sda"); ++ config.set_target_disk (supports_virtio_disk || supports_virtio1_disk? "/dev/vda" : "/dev/sda"); + + var disk_config = get_unattended_disk_config (script.path_format); + var device_path = device_name_to_path (script.path_format, disk_config.get_target_dev ()); +@@ -360,7 +360,7 @@ private class Boxes.UnattendedInstaller: InstallerMedia { + disk.set_target_bus (DomainDiskBus.FDC); + } else { + // Path format checks below are most probably practically redundant but a small price for future safety +- if (supports_virtio_disk) ++ if (supports_virtio_disk || supports_virtio1_disk) + disk.set_target_dev ((path_format == PathFormat.UNIX)? "sda" : "E"); + else + disk.set_target_dev ((path_format == PathFormat.UNIX)? "sdb" : "E"); +-- + +--- + src/vm-configurator.vala | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala +index e8eefa3..ceadc80 100644 +--- a/src/vm-configurator.vala ++++ b/src/vm-configurator.vala +@@ -114,9 +114,10 @@ private class Boxes.VMConfigurator { + console.set_source (new DomainChardevSourcePty ()); + domain.add_device (console); + ++ var supports_virtio_net = install_media.supports_virtio_net || install_media.supports_virtio1_net; + var iface = create_network_interface (domain, + is_libvirt_bridge_net_available (), +- install_media.supports_virtio_net); ++ supports_virtio_net); + domain.add_device (iface); + + return domain; +@@ -309,7 +310,7 @@ private class Boxes.VMConfigurator { + disk.set_driver_cache (DomainDiskCacheType.WRITEBACK); + + var dev_letter_str = ((char) (dev_index + 97)).to_string (); +- if (install_media.supports_virtio_disk) { ++ if (install_media.supports_virtio_disk || install_media.supports_virtio1_disk) { + debug ("Using virtio controller for the main disk"); + disk.set_target_bus (DomainDiskBus.VIRTIO); + disk.set_target_dev ("vd" + dev_letter_str); +-- + +--- + src/installer-media.vala | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/installer-media.vala b/src/installer-media.vala +index b29c10b..0a83ba0 100644 +--- a/src/installer-media.vala ++++ b/src/installer-media.vala +@@ -49,6 +49,12 @@ private class Boxes.InstallerMedia : GLib.Object { + } + } + ++ public bool prefers_q35 { ++ get { ++ return false; ++ } ++ } ++ + public virtual bool live { get { return os_media == null || os_media.live; } } + public virtual bool eject_after_install { get { return os_media == null || os_media.eject_after_install; } } + +-- + +--- + src/installer-media.vala | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/src/installer-media.vala b/src/installer-media.vala +index 0a83ba0..7d95d65 100644 +--- a/src/installer-media.vala ++++ b/src/installer-media.vala +@@ -55,6 +55,12 @@ private class Boxes.InstallerMedia : GLib.Object { + } + } + ++ public bool prefers_ich9 { ++ get { ++ return false; ++ } ++ } ++ + public virtual bool live { get { return os_media == null || os_media.live; } } + public virtual bool eject_after_install { get { return os_media == null || os_media.eject_after_install; } } + +-- + +--- + src/installer-media.vala | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/installer-media.vala b/src/installer-media.vala +index 7d95d65..ba6bfc8 100644 +--- a/src/installer-media.vala ++++ b/src/installer-media.vala +@@ -173,7 +173,7 @@ private class Boxes.InstallerMedia : GLib.Object { + disk.set_target_dev (device_name); + if (iso_path != null) + disk.set_source (iso_path); +- disk.set_target_bus (DomainDiskBus.IDE); ++ disk.set_target_bus (prefers_q35? DomainDiskBus.SATA : DomainDiskBus.IDE); + if (mandatory) + disk.set_startup_policy (DomainDiskStartupPolicy.MANDATORY); + +-- + +--- + src/unattended-installer.vala | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/unattended-installer.vala b/src/unattended-installer.vala +index 6a37e20..e3fd115 100644 +--- a/src/unattended-installer.vala ++++ b/src/unattended-installer.vala +@@ -379,7 +379,7 @@ private class Boxes.UnattendedInstaller: InstallerMedia { + disk.set_source (secondary_disk_file.get_path ()); + disk.set_target_dev ((path_format == PathFormat.DOS)? "E" : "hdd"); + disk.set_guest_device_type (DomainDiskGuestDeviceType.CDROM); +- disk.set_target_bus (DomainDiskBus.IDE); ++ disk.set_target_bus (prefers_q35? DomainDiskBus.SATA : DomainDiskBus.IDE); + + return disk; + } +-- + +--- + src/vm-configurator.vala | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala +index ceadc80..c537316 100644 +--- a/src/vm-configurator.vala ++++ b/src/vm-configurator.vala +@@ -315,8 +315,13 @@ private class Boxes.VMConfigurator { + disk.set_target_bus (DomainDiskBus.VIRTIO); + disk.set_target_dev ("vd" + dev_letter_str); + } else { +- debug ("Using IDE controller for the main disk"); +- disk.set_target_bus (DomainDiskBus.IDE); ++ if (install_media.prefers_q35) { ++ debug ("Using SATA controller for the main disk"); ++ disk.set_target_bus (DomainDiskBus.SATA); ++ } else { ++ debug ("Using IDE controller for the main disk"); ++ disk.set_target_bus (DomainDiskBus.IDE); ++ } + disk.set_target_dev ("hd" + dev_letter_str); + } + +-- + +--- + src/vm-configurator.vala | 19 ++++++++++++++----- + 1 file changed, 14 insertions(+), 5 deletions(-) + +diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala +index c537316..07804f9 100644 +--- a/src/vm-configurator.vala ++++ b/src/vm-configurator.vala +@@ -363,13 +363,22 @@ private class Boxes.VMConfigurator { + domain.add_device (video); + } + +- private static void set_sound_config (Domain domain, InstallerMedia install_media) { +- var sound = new DomainSound (); ++ private static DomainSoundModel get_sound_model (InstallerMedia install_media) { ++ if (install_media.prefers_ich9) ++ return (DomainSoundModel) DomainSoundModel.ICH9; ++ + var device = find_device_by_prop (install_media.supported_devices, DEVICE_PROP_CLASS, "audio"); +- var model = (device != null)? get_enum_value (device.get_name (), typeof (DomainSoundModel)) : +- DomainSoundModel.AC97; ++ if (device == null) ++ return (DomainSoundModel) DomainSoundModel.ICH6; ++ ++ var model = get_enum_value (device.get_name (), typeof (DomainSoundModel)); + return_if_fail (model != -1); +- sound.set_model ((DomainSoundModel) model); ++ return (DomainSoundModel) model; ++ } ++ ++ private static void set_sound_config (Domain domain, InstallerMedia install_media) { ++ var sound = new DomainSound (); ++ sound.set_model (get_sound_model (install_media)); + + domain.add_device (sound); + } +-- + +--- + src/vm-configurator.vala | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala +index 07804f9..3dc1c8e 100644 +--- a/src/vm-configurator.vala ++++ b/src/vm-configurator.vala +@@ -338,6 +338,7 @@ private class Boxes.VMConfigurator { + os.set_boot_devices (boot_devices); + + os.set_arch (old_os.get_arch ()); ++ os.set_machine (old_os.get_machine ()); + + domain.set_os (os); + } +-- + +--- + src/vm-configurator.vala | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/vm-configurator.vala b/src/vm-configurator.vala +index 3dc1c8e..6c20f5e 100644 +--- a/src/vm-configurator.vala ++++ b/src/vm-configurator.vala +@@ -347,6 +347,8 @@ private class Boxes.VMConfigurator { + var os = new DomainOs (); + os.set_os_type (DomainOsType.HVM); + os.set_arch (guest_caps.get_arch ().get_name ()); ++ if (install_media.prefers_q35) ++ os.set_machine ("q35"); + + var boot_devices = new GLib.List (); + install_media.set_direct_boot_params (os); +-- + +--- + src/installer-media.vala | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/src/installer-media.vala b/src/installer-media.vala +index ba6bfc8..4a8d913 100644 +--- a/src/installer-media.vala ++++ b/src/installer-media.vala +@@ -57,7 +57,14 @@ private class Boxes.InstallerMedia : GLib.Object { + + public bool prefers_ich9 { + get { +- return false; ++ if (!prefers_q35) ++ return false; ++ ++ var device = find_device_by_prop (supported_devices, DEVICE_PROP_NAME, "ich9-hda"); ++ if (device == null) ++ return false; ++ ++ return true; + } + } + +-- + +--- + src/installer-media.vala | 12 +++++++++++- + 1 file changed, 11 insertions(+), 1 deletion(-) + +diff --git a/src/installer-media.vala b/src/installer-media.vala +index 4a8d913..5bde3ca 100644 +--- a/src/installer-media.vala ++++ b/src/installer-media.vala +@@ -51,7 +51,17 @@ private class Boxes.InstallerMedia : GLib.Object { + + public bool prefers_q35 { + get { +- return false; ++ if (os == null) ++ return true; ++ ++ var device = find_device_by_prop (supported_devices, DEVICE_PROP_NAME, "qemu-x86-q35"); ++ if (device == null) ++ return false; ++ ++ if (supports_virtio_net && !supports_virtio1_net) ++ return false; ++ ++ return true; + } + } + +-- diff --git a/SPECS/gnome-boxes.spec b/SPECS/gnome-boxes.spec new file mode 100644 index 0000000..8d3008a --- /dev/null +++ b/SPECS/gnome-boxes.spec @@ -0,0 +1,696 @@ +# Since RHEL-5, QEMU is restricted to x86_64 only +# As Boxes don't really handle the !qemu case very well (untested, the 'box +# creation' UI would still be there but non-functional, ...), better to +# only build Boxes on platforms where qemu/qemu-kvm are available +%if 0%{?rhel} +ExclusiveArch: x86_64 +%endif + + +# The following qemu_kvm_arches/with_qemu_kvm defines come from +# libvirt.spec +%if 0%{?fedora} + %global qemu_kvm_arches %{ix86} x86_64 %{power64} s390x %{arm} aarch64 + %global distributor_name fedora + %global distributor_version %{fedora} +%endif + +%if 0%{?rhel} >= 7 + %global qemu_kvm_arches x86_64 %{power64} + %global distributor_name rhel + %global distributor_version %{rhel} +%endif + +%ifarch %{qemu_kvm_arches} + %global with_qemu_kvm 1 +%else + %global with_qemu_kvm 0 +%endif + +%global url_ver %%(echo %{version}|cut -d. -f1,2) + +Name: gnome-boxes +Version: 3.28.5 +Release: 6%{?dist} +Summary: A simple GNOME 3 application to access remote or virtual systems + +License: LGPLv2+ +URL: https://wiki.gnome.org/Apps/Boxes +Source0: http://download.gnome.org/sources/%{name}/%{url_ver}/%{name}-%{version}.tar.xz + +# https://gitlab.gnome.org/GNOME/gnome-boxes/issues/217 +Patch0: gnome-boxes-unbreak-the-icon-installation.patch + +# https://bugzilla.redhat.com/1581422 +Patch1: gnome-boxes-use-q35-machine-type.patch + +# https://bugzilla.redhat.com/1656446 +Patch2: gnome-boxes-hardcode-recommended-oses.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1713130 +Patch3: gnome-boxes-update-rhel-logo.patch + +BuildRequires: gettext >= 0.19.8 +BuildRequires: meson +BuildRequires: vala >= 0.36.0 +BuildRequires: yelp-tools +BuildRequires: pkgconfig(clutter-gtk-1.0) +BuildRequires: pkgconfig(glib-2.0) >= 2.52 +BuildRequires: pkgconfig(gobject-introspection-1.0) +BuildRequires: pkgconfig(govirt-1.0) +BuildRequires: pkgconfig(gtk+-3.0) >= 3.22.20 +BuildRequires: pkgconfig(gtk-vnc-2.0) +BuildRequires: pkgconfig(libarchive) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: pkgconfig(libsecret-1) +BuildRequires: pkgconfig(libvirt-gobject-1.0) +BuildRequires: pkgconfig(libvirt-gconfig-1.0) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(gudev-1.0) +BuildRequires: pkgconfig(libosinfo-1.0) >= 1.2.0 +BuildRequires: pkgconfig(libsoup-2.4) >= 2.44 +BuildRequires: pkgconfig(libusb-1.0) +BuildRequires: pkgconfig(tracker-sparql-2.0) +BuildRequires: pkgconfig(webkit2gtk-4.0) +BuildRequires: spice-gtk3-vala +BuildRequires: libosinfo-vala +BuildRequires: desktop-file-utils + +# Pulls in libvirtd + KVM, but no NAT / firewall configs +%if %{with_qemu_kvm} +Requires: libvirt-daemon-kvm +%else +Requires: libvirt-daemon-qemu +%endif + +# Pulls in the libvirtd NAT 'default' network +# Original request: https://bugzilla.redhat.com/show_bug.cgi?id=1081762 +# +# However, the 'default' network does not mix well with the Fedora livecd +# when it is run inside a VM. The whole saga is documented here: +# +# boxes: https://bugzilla.redhat.com/show_bug.cgi?id=1164492 +# libvirt: https://bugzilla.redhat.com/show_bug.cgi?id=1146232 +# +# Until a workable solution has been determined and implemented, this +# dependency should stay disabled in rawhide and fedora development +# branches so it does not end up on the livecd. Once a Fedora GA is +# released, a gnome-boxes update can be pushed with this dependency +# re-enabled. crobinso will handle this process, see: +# +# https://bugzilla.redhat.com/show_bug.cgi?id=1164492#c71 +Requires: libvirt-daemon-config-network + +# Needed for unattended installations +Requires: mtools +Requires: genisoimage + +Requires: adwaita-icon-theme + +%description +gnome-boxes lets you easily create, setup, access, and use: + * remote machines + * remote virtual machines + * local virtual machines + * When technology permits, set up access for applications on + local virtual machines + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 + +%build +%meson \ +%if %{?distributor_name:1}%{!?distributor_name:0} + -D distributor_name=%{distributor_name} \ +%endif +%if 0%{?distributor_version} + -D distributor_version=%{distributor_version} \ +%endif + +%meson_build + +%install +%meson_install +%find_lang %{name} --with-gnome + +%check +desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Boxes.desktop + +%files -f %{name}.lang +%license COPYING +%doc AUTHORS README NEWS TODO +%{_bindir}/%{name} +%{_datadir}/%{name}/ +%{_datadir}/applications/org.gnome.Boxes.desktop +%{_datadir}/glib-2.0/schemas/org.gnome.boxes.gschema.xml +%{_datadir}/icons/hicolor/*/apps/org.gnome.Boxes.png +%{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Boxes-symbolic.svg +%{_libexecdir}/gnome-boxes-search-provider +%{_datadir}/dbus-1/services/org.gnome.Boxes.SearchProvider.service +%{_datadir}/dbus-1/services/org.gnome.Boxes.service +%dir %{_datadir}/gnome-shell +%dir %{_datadir}/gnome-shell/search-providers +%{_datadir}/gnome-shell/search-providers/gnome-boxes-search-provider.ini +%{_datadir}/metainfo/org.gnome.Boxes.appdata.xml + +%changelog +* Mon Jun 17 2019 Fabiano Fidêncio - 3.28.5-6 +- Revert "Add 3D acceleration option (powered by virgl)" +- Related: #1647004 + +* Mon Jun 03 2019 Felipe Borges - 3.28.5-5 +- Add 3D acceleration option (powered by virgl) +- Resolves: #1647004 + +* Thu May 23 2019 Fabiano Fidêncio - 3.28.5-4 +- Add rhel-8.0 logo & update logo for rhel-4.0 & update recommendations +- Resolves: #1713130 + +* Wed Dec 05 2018 Felipe Borges - 3.28.5-3 +- Pick our recommended downloads +- Related #1656446 + +* Mon Oct 15 2018 Felipe Borges - 3.28.5-2 +- Use q35 for machine type +- Related #1581422 + +* Fri Jun 08 2018 Debarshi Ray - 3.28.5-1 +- Update to 3.28.5 + +* Wed May 09 2018 Kalev Lember - 3.28.4-1 +- Update to 3.28.4 + +* Tue May 08 2018 Kalev Lember - 3.28.3-1 +- Update to 3.28.3 + +* Mon Apr 30 2018 Cole Robinson - 3.28.2-1.fc28.1 +- Re-enable libvirt-daemon-config-network dep, see bz 1164492#c71 + +* Tue Apr 10 2018 Kalev Lember - 3.28.2-1 +- Update to 3.28.2 + +* Mon Apr 09 2018 Kalev Lember - 3.28.1-1 +- Update to 3.28.1 + +* Mon Mar 26 2018 Adam Williamson - 3.27.92-2.fc28.1 +- Disable libvirt-daemon-config-network dep until GA (#1164492) + +* Mon Mar 12 2018 Debarshi Ray - 3.27.92-2 +- Override the user agent for Fedora and RHEL + +* Mon Mar 05 2018 Kalev Lember - 3.27.92-1 +- Update to 3.27.92 +- Switch to the meson build system + +* Mon Feb 19 2018 Debarshi Ray - 3.27.2-1 +- Update to 3.27.2 + +* Wed Feb 07 2018 Fedora Release Engineering - 3.27.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Mon Jan 08 2018 Björn Esser - 3.27.1-4 +- Prefer %%global over %%define as indicated by guidelines + +* Mon Jan 08 2018 Björn Esser - 3.27.1-3 +- Add a patch making newly created VMs use VIRTIO +- Resolves: rhbz#1491320 + +* Fri Jan 05 2018 Igor Gnatenko - 3.27.1-2 +- Remove obsolete scriptlets + +* Tue Nov 21 2017 Debarshi Ray - 3.27.1-1 +- Update to 3.27.1 + +* Wed Nov 01 2017 Kalev Lember - 3.26.2-1 +- Update to 3.26.2 + +* Thu Oct 12 2017 Debarshi Ray - 3.26.1-2 +- Add the RHEL Developer Suite patches (GNOME #786679) + +* Sun Oct 08 2017 Kalev Lember - 3.26.1-1 +- Update to 3.26.1 + +* Wed Sep 13 2017 Kalev Lember - 3.26.0-1 +- Update to 3.26.0 + +* Wed Aug 23 2017 Debarshi Ray - 3.25.91-1 +- Update to 3.25.91 + +* Tue Aug 01 2017 Kalev Lember - 3.25.4-1 +- Update to 3.25.4 + +* Wed Jul 26 2017 Fedora Release Engineering - 3.25.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Jun 25 2017 Kalev Lember - 3.25.3-1 +- Update to 3.25.3 + +* Mon Jun 12 2017 Kalev Lember - 3.25.2-1 +- Update to 3.25.2 + +* Tue Mar 21 2017 Kalev Lember - 3.24.0-1 +- Update to 3.24.0 + +* Tue Feb 28 2017 Richard Hughes - 3.23.91-1 +- Update to 3.23.91 + +* Mon Feb 06 2017 Debarshi Ray - 3.23.4.1-1 +- Update to 3.23.4.1 + +* Thu Nov 24 2016 Kalev Lember - 3.23.2-1 +- Update to 3.23.2 + +* Sat Nov 05 2016 Debarshi Ray - 3.22.2-1 +- Update to 3.22.2 + +* Fri Nov 04 2016 Kalev Lember - 3.22.1-2 +- Re-add libvirt-daemon-config-network dep (#1164492) + +* Wed Oct 12 2016 Kalev Lember - 3.22.1-1 +- Update to 3.22.1 + +* Thu Sep 22 2016 Kalev Lember - 3.22.0-2 +- BR vala instead of obsolete vala-tools subpackage + +* Wed Sep 21 2016 Kalev Lember - 3.22.0-1 +- Update to 3.22.0 + +* Fri Sep 16 2016 Kalev Lember - 3.21.92-1 +- Update to 3.21.92 +- Drop unrecognized configure options +- Don't set group tags + +* Wed Jun 22 2016 Richard Hughes - 3.21.3-1 +- Update to 3.21.3 + +* Wed Jun 22 2016 Marc-André Lureau - 3.20.2-4 +- Rebuild to pick spice-gtk 0.32 ABI break + +* Mon Jun 13 2016 Christophe Fergeau - 3.20.2-3 +- Added upstream patch to avoid showing privilege elevation dialog at + every Boxes startup (it's only needed if one wants to import system + VMs) + +* Wed May 25 2016 Kalev Lember - 3.20.2-2 +- Temporarily remove libvirt-daemon-config-network dep (#1164492) + +* Mon May 09 2016 Kalev Lember - 3.20.2-1 +- Update to 3.20.2 + +* Tue Mar 22 2016 Kalev Lember - 3.20.0-1 +- Update to 3.20.0 + +* Wed Mar 16 2016 Kalev Lember - 3.19.92-1 +- Update to 3.19.92 + +* Fri Mar 04 2016 Kalev Lember - 3.19.91-1 +- Update to 3.19.91 + +* Wed Feb 03 2016 Fedora Release Engineering - 3.19.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jan 20 2016 Kalev Lember - 3.19.4-1 +- Update to 3.19.4 + +* Thu Dec 17 2015 Kalev Lember - 3.19.3-1 +- Update to 3.19.3 + +* Wed Oct 28 2015 Kalev Lember - 3.19.1-1 +- Update to 3.19.1 + +* Mon Oct 12 2015 Kalev Lember - 3.18.1-1 +- Update to 3.18.1 + +* Tue Sep 22 2015 Kalev Lember - 3.18.0-1 +- Update to 3.18.0 +- Update URL + +* Tue Sep 01 2015 Kalev Lember - 3.17.91-1 +- Update to 3.17.91 + +* Tue Aug 18 2015 Kalev Lember - 3.17.90-1 +- Update to 3.17.90 +- Use make_install macro + +* Tue Jun 30 2015 Kalev Lember - 3.17.3-1 +- Update to 3.17.3 + +* Wed Jun 17 2015 Fedora Release Engineering - 3.17.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Thu May 28 2015 Zeeshan Ali - 3.17.2-1 +- Update to 3.17.2 +- Update dependencies. + +* Fri May 01 2015 Kalev Lember - 3.17.1-1 +- Update to 3.17.1 +- Include the symbolic icon + +* Thu Apr 16 2015 Kalev Lember - 3.16.1-1 +- Update to 3.16.1 + +* Tue Mar 24 2015 Kalev Lember - 3.16.0-1 +- Update to 3.16.0 + +* Tue Mar 17 2015 Kalev Lember - 3.15.92-1 +- Update to 3.15.92 + +* Tue Mar 03 2015 Kalev Lember - 3.15.91-1 +- Update to 3.15.91 +- Use the %%license macro for the COPYING file + +* Thu Feb 19 2015 Richard Hughes - 3.15.90-1 +- Update to 3.15.90 + +* Thu Jan 22 2015 Richard Hughes - 3.15.4-1 +- Update to 3.15.4 + +* Fri Dec 19 2014 Richard Hughes - 3.15.3-1 +- Update to 3.15.3 + +* Tue Nov 25 2014 Kalev Lember - 3.15.2-1 +- Update to 3.15.2 + +* Wed Nov 12 2014 Kalev Lember - 3.14.2-1 +- Update to 3.14.2 + +* Tue Nov 04 2014 Kalev Lember - 3.14.1.2-1 +- Update to 3.14.1.2 + +* Wed Oct 15 2014 Kalev Lember - 3.14.1.1-1 +- Update to 3.14.1.1 + +* Mon Oct 13 2014 Kalev Lember - 3.14.1-1 +- Update to 3.14.1 + +* Thu Oct 2 2014 Zeeshan Ali 3.14.0-3 +- Remove now unneeded deps on fuseiso and genisoimage. + +* Wed Sep 24 2014 Peter Robinson 3.14.0-2 +- Update KVM arches + +* Tue Sep 23 2014 Kalev Lember - 3.14.0-1 +- Update to 3.14.0 + +* Tue Sep 16 2014 Kalev Lember - 3.13.92-1 +- Update to 3.13.92 +- Adapt packaging for the desktop file rename + +* Wed Sep 03 2014 Kalev Lember - 3.13.91-1 +- Update to 3.13.91 + +* Tue Aug 26 2014 Kalev Lember - 3.13.90-1 +- Update to 3.13.90 + +* Sat Aug 16 2014 Fedora Release Engineering - 3.13.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Mon Jul 21 2014 Kalev Lember - 3.13.4-1 +- Update to 3.13.4 + +* Fri Jun 27 2014 Bastien Nocera 3.13.3-2 +- Don't run update-mime-database in post, we don't ship mime XML + files anymore + +* Wed Jun 25 2014 Richard Hughes - 3.13.3-1 +- Update to 3.13.3 + +* Sat Jun 07 2014 Fedora Release Engineering - 3.12.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon May 26 2014 Matthias Clasen - 3.12.2-2 +- Require adwaita-icon-theme. Its the default + +* Thu May 15 2014 Kalev Lember - 3.12.2-1 +- Update to 3.12.2 + +* Wed Apr 16 2014 Kalev Lember - 3.12.1-1 +- Update to 3.12.1 + +* Mon Mar 31 2014 Zeeshan Ali - 3.12.0-2 +- Add dep on libvirt-daemon-config-network to fix rhbz#1081762. + +* Mon Mar 24 2014 Richard Hughes - 3.12.0-1 +- Update to 3.12.0 + +* Wed Mar 19 2014 Richard Hughes - 3.11.92-1 +- Update to 3.11.92 + +* Tue Mar 04 2014 Richard Hughes - 3.11.91-1 +- Update to 3.11.91 + +* Thu Feb 20 2014 Kalev Lember - 3.11.90.1-2 +- Rebuilt for cogl soname bump + +* Wed Feb 19 2014 Richard Hughes - 3.11.90.1-1 +- Update to 3.11.90.1 + +* Tue Feb 18 2014 Richard Hughes - 3.11.90-1 +- Update to 3.11.90 + +* Mon Feb 10 2014 Peter Hutterer - 3.11.5.1-2 +- Rebuild for libevdev soname bump + +* Thu Feb 06 2014 Kalev Lember - 3.11.5.1-1 +- Update to 3.11.5.1 + +* Wed Feb 05 2014 Kalev Lember - 3.11.5-2 +- Rebuilt for cogl soname bump + +* Wed Feb 05 2014 Richard Hughes - 3.11.5-1 +- Update to 3.11.5 + +* Wed Jan 15 2014 Richard Hughes - 3.11.4-1 +- Update to 3.11.4 + +* Tue Dec 17 2013 Richard Hughes - 3.11.3-1 +- Update to 3.11.3 + +* Wed Dec 04 2013 Christophe Fergeau 3.11.2-2 +- Rebuild against new libgovirt release + +* Mon Nov 25 2013 Richard Hughes - 3.11.2-1 +- Update to 3.11.2 + +* Thu Nov 14 2013 Richard Hughes - 3.10.2-1 +- Update to 3.10.2 + +* Wed Sep 25 2013 Kalev Lember - 3.10.0-1 +- Update to 3.10.0 + +* Wed Sep 18 2013 Kalev Lember - 3.9.92-1 +- Update to 3.9.92 + +* Mon Sep 09 2013 Zeeshan Ali - 3.9.91.1-1 +- Update to 3.9.91.1 +- Fix vala and gtk+ dependency + +* Tue Sep 03 2013 Kalev Lember - 3.9.91-1 +- Update to 3.9.91 + +* Fri Aug 09 2013 Kalev Lember - 3.9.3-4 +- Rebuilt for cogl 1.15.4 soname bump + +* Wed Aug 07 2013 Christophe Fergeau 3.9.3-3 +- Add Requires on dconf and gnome-themes-standard, fixes rhbz#978727 + +* Sat Aug 03 2013 Fedora Release Engineering - 3.9.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue Jul 16 2013 Richard Hughes - 3.9.3-1 +- Update to 3.9.3 + +* Tue May 28 2013 Zeeshan Ali - 3.9.2-1 +- Update to 3.9.2. + +* Mon May 27 2013 Kalev Lember 3.8.2-5 +- Only pull in qemu on non-kvm arches + +* Fri May 24 2013 Christophe Fergeau 3.8.2-4 +- ... and remove again the ExclusiveArch on fedora. If libvirt-daemon-qemu + is available, this means we can create (very slow) x86 boxes regardless + of the arch + +* Thu May 23 2013 Christophe Fergeau 3.8.2-3 +- Readd ExclusiveArch as Boxes is not really functional on non-x86 + arch even if it can be built. Also, libvirt-daemon-kvm is not + available on every arch, causing rhbz#962325 + +* Thu May 16 2013 Christophe Fergeau 3.8.2-2 +- Add upstream patch for rhbz#963464 + +* Tue May 14 2013 Zeeshan Ali - 3.8.2-1 +- Update to 3.8.2. + +* Thu Apr 18 2013 Christophe Fergeau 3.8.1.2-1 +- Update to 3.8.1.2 + +* Tue Apr 16 2013 Richard Hughes - 3.8.1-1 +- Update to 3.8.1 + +* Tue Apr 02 2013 Christophe Fergeau 3.8.0-2 +- Enable smartcard support and oVirt support + +* Tue Mar 26 2013 Richard Hughes - 3.8.0-1 +- Update to 3.8.0 + +* Wed Mar 20 2013 Richard Hughes - 3.7.92-1 +- Update to 3.7.92 + +* Fri Mar 8 2013 Matthias Clasen - 3.7.91-1 +- Update to 3.7.91 + +* Thu Feb 21 2013 Kalev Lember - 3.7.90-2 +- Rebuilt for cogl soname bump + +* Thu Feb 21 2013 Christophe Fergeau 3.7.90-1 +- Update do 3.7.90 + +* Wed Feb 06 2013 Richard Hughes - 3.7.5-1 +- Update to 3.7.5 + +* Sun Jan 27 2013 Kalev Lember - 3.7.4-3 +- Rebuilt for tracker 0.16 ABI + +* Fri Jan 25 2013 Peter Robinson 3.7.4-2 +- Rebuild for new cogl + +* Tue Jan 15 2013 Zeeshan Ali - 3.7.4-1 +- Update to 3.7.4. + +* Thu Dec 20 2012 Christophe Fergeau - 3.7.3-1 +- Update to 3.7.3 + +* Tue Nov 20 2012 Christophe Fergeau - 3.7.2-2 +- Reenable USB redirection (it's disabled by default, packagers must + enable it if appropriate) + +* Tue Nov 20 2012 Zeeshan Ali - 3.7.2-1 +- Update to 3.7.2. + +* Tue Nov 13 2012 Christophe Fergeau - 3.6.2-2 +- Update to 3.6.2 + +* Tue Oct 16 2012 Zeeshan Ali - 3.6.1.1-2 +- Enable USB redirection in new domains. + +* Tue Oct 16 2012 Zeeshan Ali - 3.6.1.1-1 +- Update to 3.6.1.1 + +* Mon Oct 15 2012 Zeeshan Ali - 3.6.1-1 +- Update to 3.6.1 + +* Tue Sep 25 2012 Christophe Fergeau - 3.6.0-1 +- Update to 3.6.0 + +* Wed Sep 19 2012 Richard Hughes - 3.5.92-1 +- Update to 3.5.92 + +* Thu Sep 6 2012 Matthias Clasen - 3.5.91-2 +- Rebuild against new spice + +* Tue Sep 04 2012 Christophe Fergeau - 3.5.91-1 +- Update do 3.5.91 + +* Wed Aug 22 2012 Richard Hughes - 3.5.90-1 +- Update to 3.5.90 + +* Tue Aug 07 2012 Richard Hughes - 3.5.5-1 +- Update to 3.5.5 + +* Thu Jul 19 2012 Fedora Release Engineering - 3.5.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Jul 16 2012 Christophe Fergeau - 3.5.4.1-1 +- Update to 3.5.4.1 + +* Mon Jul 16 2012 Christophe Fergeau - 3.5.4-1 +- Update to 3.5.4 +- Update some BuildRequires min version + +* Tue Jun 26 2012 Richard Hughes - 3.5.3-1 +- Update to 3.5.3 + +* Thu Jun 07 2012 Christophe Fergeau - 3.5.2-2 +- enable logos after getting confirmation this has been approved by + fedora-legal and the Fedora board + +* Thu Jun 07 2012 Richard Hughes - 3.5.2-1 +- Update to 3.5.2 + +* Wed May 16 2012 Christophe Fergeau - 3.4.2-2 +- Remove ExclusiveArch now that spice-gtk is built on all arch + +* Tue May 15 2012 Zeeshan Ali - 3.4.2-1 +- Update to 3.4.2 + +* Thu Apr 26 2012 Christophe Fergeau - 3.4.1-2 +- Backport a few upstream patches: + - asynchronously fetch domain information from libvirt, this makes Boxes + much more responsive + - make the file chooser dialog modal + - fix f17 unattended installation + +* Tue Apr 17 2012 Richard Hughes - 3.4.1-1 +- Update to 3.4.1 + +* Sat Mar 31 2012 Daniel P. Berrange - 3.4.0.1-2 +- Only pull in libvirtd + KVM drivers, without default configs (bug 802475) + +* Sat Mar 31 2012 Zeeshan Ali - 3.4.0.1-1 +- Update to 3.4.0.1 + +* Mon Mar 26 2012 Christophe Fergeau - 3.4.0-1 +- Update to 3.4.0 + +* Mon Mar 26 2012 Dan Horák - 3.3.92-2 +- set ExclusiveArch equal to spice-gtk + +* Tue Mar 20 2012 Christophe Fergeau - 3.3.92-1 +- Update to 3.3.92 + +* Tue Mar 6 2012 Matthias Clasen - 3.3.91-1 +- Update to 3.3.91 + +* Sun Feb 26 2012 Matthias Clasen - 3.3.90-1 +- Update to 3.3.90 + +* Wed Feb 08 2012 Christophe Fergeau - 3.3.5.1-1 +- Update to 3.3.5.1 + +* Wed Jan 25 2012 Christophe Fergeau - 3.3.4.1-1 +- Update to minor 3.3.4.1 release + +* Fri Jan 20 2012 Christophe Fergeau - 3.3.4-4 +- call desktop-file-validate in %%install. gnome-boxes upstream installs + a .desktop file on its own so desktop-file-validate is enough, no need + to call desktop-file-install. + +* Fri Jan 20 2012 Christophe Fergeau - 3.3.4-3 +- Fix %%global use (%%url_ver got expanded to 3.3.4 instead of 3.3 in + -2) + +* Tue Jan 17 2012 Christophe Fergeau - 3.3.4-2 +- Remove use of BuildRoot +- Remove use of defattr +- Use %%global instead of %%define + +* Tue Jan 17 2012 Christophe Fergeau - 3.3.4-1 +- Update to 3.3.4 release + +* Thu Jan 05 2012 Christophe Fergeau - 3.3.3-3 +- Escape %%{buildroot} in changelog +- Remove empty %%pre section + +* Wed Jan 04 2012 Christophe Fergeau - 3.3.3-2 +- Use %%{buildroot} instead of $RPM_BUILD_ROOT +- Remove unneeded patch +- Add missing dependency on fuseiso + +* Fri Dec 23 2011 Christophe Fergeau - 3.3.3-1 +- Initial import +