# 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}
%if 0%{?fedora} >= 18
%define qemu_kvm_arches %{ix86} x86_64 ppc64 s390x
%endif
%if 0%{?fedora} >= 20
%define qemu_kvm_arches %{ix86} x86_64 %{power64} s390x %{arm} aarch64
%endif
%endif
%if 0%{?rhel} >= 7
%define qemu_kvm_arches x86_64
%endif
%ifarch %{qemu_kvm_arches}
%define with_qemu_kvm 1
%else
%define with_qemu_kvm 0
%endif
#based on openSUSE spec file from dimstar, and on the Mageia .spec from bkor
%global url_ver %%(echo %{version}|cut -d. -f1,2)
Name: gnome-boxes
Version: 3.14.3.1
Release: 7%{?dist}
Summary: A simple GNOME 3 application to access remote or virtual systems
Group: Applications/Emulators
License: LGPLv2+
URL: https://live.gnome.org/Boxes
Source0: http://download.gnome.org/sources/%{name}/%{url_ver}/%{name}-%{version}.tar.xz
BuildRequires: libgovirt-devel >= 0.3.0
BuildRequires: intltool
BuildRequires: vala-devel >= 0.21.1
BuildRequires: vala-tools >= 0.21.1
BuildRequires: yelp-tools
BuildRequires: pkgconfig(clutter-gtk-1.0) >= 1.3.2
BuildRequires: pkgconfig(glib-2.0) => 2.32
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 0.9.6
BuildRequires: pkgconfig(gtk+-3.0) >= 3.9
BuildRequires: pkgconfig(gtk-vnc-2.0) >= 0.4.4
BuildRequires: pkgconfig(libarchive)
BuildRequires: pkgconfig(libvirt-gobject-1.0) >= 0.1.5
BuildRequires: pkgconfig(libvirt-gconfig-1.0) >= 0.1.5
BuildRequires: pkgconfig(libxml-2.0) >= 2.7.8
BuildRequires: pkgconfig(gudev-1.0) >= 167
BuildRequires: pkgconfig(libosinfo-1.0) >= 0.2.3
BuildRequires: pkgconfig(libsoup-2.4) >= 2.38
BuildRequires: spice-gtk3-vala >= 0.9
BuildRequires: libosinfo-vala >= 0.0.4
BuildRequires: desktop-file-utils
BuildRequires: tracker-devel
BuildRequires: libuuid-devel
#BuildRequires: autoconf automake libtool
# 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 libvirtd NAT based networking
# https://bugzilla.redhat.com/show_bug.cgi?id=1081762
Requires: libvirt-daemon-config-network
# Needed for unattended installations
Requires: mtools
Requires: genisoimage
# gnome-boxes uses a dark theme
Requires: adwaita-icon-theme
Requires: gnome-themes-standard
Requires: dconf
# https://bugzilla.gnome.org/show_bug.cgi?id=1072611
# Should not propose to install/boot from CD/DVD in RHEL7
Patch0: ignore-CDROM-devices.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1214294
# session networking limited to user interfaces only
Patch1: look-for-bridge.conf-in-qemu-kvm-dir-too.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1238719
# cannot start gnome boxes anymore
Patch2: more-reliable-storage-pool-setup.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1211198
# unattended installation of Fedora 20 doesn't work
Patch3: unattended-file-More-reliable-test-for-raw-images.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1201255
# Import from system broker fails for boxes with device nodes as main disks
Patch4: fix-import-of-system-libvirt-VMs.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1034354
# Cannot start non-running oVirt VM and then connect to it
Patch5: ovirt-Wait-machine-to-start-before-connecting-to-it.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=1250270
# the intro label was forcing the window to be too tall
Patch6: deep-intro.patch
%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 -b .ignore-CDROM-devices
%patch1 -p1 -b .look-for-bridge.conf-in-qemu-kvm-dir-too
%patch2 -p1 -b .more-reliable-storage-pool-setup
%patch3 -p1 -b .unattended-file-More-reliable-test-for-raw-images
%patch4 -p1 -b .fix-import-of-system-libvirt-VMs
%patch5 -p1 -b .ovirt-Wait-machine-to-start-before-connecting-to-it
%patch6 -p1 -b .deep-intro
%build
#fedora-legal and the fedora board permit logos to be enabled
#http://lists.fedoraproject.org/pipermail/advisory-board/2012-February/011360.html
%configure --enable-logos --enable-vala --enable-usbredir --enable-smartcard
make %{?_smp_mflags} V=1
%install
make install DESTDIR=%{buildroot}
%find_lang %{name} --with-gnome
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/org.gnome.Boxes.desktop
%post
update-desktop-database &> /dev/null || :
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
%postun
update-desktop-database &> /dev/null || :
if [ $1 -eq 0 ] ; then
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
fi
%posttrans
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
%files -f %{name}.lang
%doc AUTHORS COPYING README NEWS TODO
%{_bindir}/%{name}
%{_datadir}/%{name}/
%{_datadir}/appdata/org.gnome.Boxes.appdata.xml
%{_datadir}/applications/org.gnome.Boxes.desktop
%{_datadir}/glib-2.0/schemas/org.gnome.boxes.gschema.xml
%{_datadir}/icons/hicolor/*/apps/gnome-boxes.*
%{_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
%changelog
* Wed Aug 19 2015 Matthias Clasen <mclasen@redhat.com> - 3.14.3.1-7
- Make window less tall
Resolves: #1250270
* Wed Jul 29 2015 Zeeshan Ali <zeenix@redhat.com> - 3.14.3.1-6
- Wait machine to start before connecting to it. (related: #1034354).
* Wed Jul 22 2015 Zeeshan Ali <zeenix@redhat.com> - 3.14.3.1-5
- Fix import of system VMs. (related: #1201255).
* Fri Jul 17 2015 Zeeshan Ali <zeenix@redhat.com> - 3.14.3.1-4
- More reliable test for raw images (related: #1211198).
* Wed Jul 15 2015 Zeeshan Ali <zeenix@redhat.com> - 3.14.3.1-3
- More reliable storage pool setup (related: #1238719).
* Fri May 22 2015 Zeeshan Ali <zeenix@redhat.com> - 3.14.3.1-2
- Look for bridge.conf in qemu-kvm dir too (related: #1214294).
* Thu Mar 19 2015 Richard Hughes <rhughes@redhat.com> - 3.14.3.1-1
- Update to 3.14.3.1.
* Mon Oct 13 2014 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-11
- Don't hang on failure to handle a URL (related: #1046251).
- Handle paths as well (related: #1046251).
- Handle local paths to remote files (related: #1046251).
* Thu Oct 9 2014 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-10
- Set volume capacity in correct units (related: #1049316).
- Refresh volume info after resize (related: #1049316).
* Thu Jul 24 2014 Marc-Andre Lureau <marcandre.lureau@redhat.com> - 3.8.3-9
- Rebuild to pick new libgovirt
Resolves: #1117928
* Mon Mar 17 2014 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-8
- Don't register for 'x-content/bootable-media' (related: #1072611).
- Ignore CDROM devices (related: #1072611).
- Ignore non-readable devices (related: #1043892)
* Wed Mar 12 2014 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-7
- Fix a crash in get_decoded_udev_property (related: #1061216).
* Fri Feb 28 2014 Matthias Clasen <mclasen@redhat.com> - 3.8.3-6
- Rebuild
Resolves: #1070807
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 3.8.3-5
- Mass rebuild 2013-12-27
* Tue Dec 17 2013 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-4
- Remove media from correct box (related: #846408).
- Remove existing transition before adding new one (related: #1015079).
* Wed Dec 4 2013 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-3
- Complete translations (related: #1030336).
* Fri Nov 8 2013 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-2
- Fix rhbz#968285
* Tue May 28 2013 Zeeshan Ali <zeenix@redhat.com> - 3.8.3-1
- Update to 3.8.3.
* Mon May 27 2013 Kalev Lember <kalevlember@gmail.com> 3.8.2-5
- Only pull in qemu on non-kvm arches
* Fri May 24 2013 Christophe Fergeau <cfergeau@redhat.com> 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 <cfergeau@redhat.com> 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 <cfergeau@redhat.com> 3.8.2-2
- Add upstream patch for rhbz#963464
* Tue May 14 2013 Zeeshan Ali <zeenix@redhat.com> - 3.8.2-1
- Update to 3.8.2.
* Thu Apr 18 2013 Christophe Fergeau <cfergeau@redhat.com> 3.8.1.2-1
- Update to 3.8.1.2
* Tue Apr 16 2013 Richard Hughes <rhughes@redhat.com> - 3.8.1-1
- Update to 3.8.1
* Tue Mar 26 2013 Richard Hughes <rhughes@redhat.com> - 3.8.0-1
- Update to 3.8.0
* Wed Mar 20 2013 Richard Hughes <rhughes@redhat.com> - 3.7.92-1
- Update to 3.7.92
* Fri Mar 8 2013 Matthias Clasen <mclasen@redhat.com> - 3.7.91-1
- Update to 3.7.91
* Thu Feb 21 2013 Kalev Lember <kalevlember@gmail.com> - 3.7.90-2
- Rebuilt for cogl soname bump
* Thu Feb 21 2013 Christophe Fergeau <cfergeau@redhat.com> 3.7.90-1
- Update do 3.7.90
* Wed Feb 06 2013 Richard Hughes <rhughes@redhat.com> - 3.7.5-1
- Update to 3.7.5
* Sun Jan 27 2013 Kalev Lember <kalevlember@gmail.com> - 3.7.4-3
- Rebuilt for tracker 0.16 ABI
* Fri Jan 25 2013 Peter Robinson <pbrobinson@fedoraproject.org> 3.7.4-2
- Rebuild for new cogl
* Tue Jan 15 2013 Zeeshan Ali <zeenix@redhat.com> - 3.7.4-1
- Update to 3.7.4.
* Thu Dec 20 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.7.3-1
- Update to 3.7.3
* Tue Nov 20 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.7.2-2
- Reenable USB redirection (it's disabled by default, packagers must
enable it if appropriate)
* Tue Nov 20 2012 Zeeshan Ali <zeenix@redhat.com> - 3.7.2-1
- Update to 3.7.2.
* Tue Nov 13 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.6.2-2
- Update to 3.6.2
* Tue Oct 16 2012 Zeeshan Ali <zeenix@redhat.com> - 3.6.1.1-2
- Enable USB redirection in new domains.
* Tue Oct 16 2012 Zeeshan Ali <zeenix@redhat.com> - 3.6.1.1-1
- Update to 3.6.1.1
* Mon Oct 15 2012 Zeeshan Ali <zeenix@redhat.com> - 3.6.1-1
- Update to 3.6.1
* Tue Sep 25 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.6.0-1
- Update to 3.6.0
* Wed Sep 19 2012 Richard Hughes <hughsient@gmail.com> - 3.5.92-1
- Update to 3.5.92
* Thu Sep 6 2012 Matthias Clasen <mclasen@redhat.com> - 3.5.91-2
- Rebuild against new spice
* Tue Sep 04 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.5.91-1
- Update do 3.5.91
* Wed Aug 22 2012 Richard Hughes <hughsient@gmail.com> - 3.5.90-1
- Update to 3.5.90
* Tue Aug 07 2012 Richard Hughes <hughsient@gmail.com> - 3.5.5-1
- Update to 3.5.5
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.5.4.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jul 16 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.5.4.1-1
- Update to 3.5.4.1
* Mon Jul 16 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.5.4-1
- Update to 3.5.4
- Update some BuildRequires min version
* Tue Jun 26 2012 Richard Hughes <hughsient@gmail.com> - 3.5.3-1
- Update to 3.5.3
* Thu Jun 07 2012 Christophe Fergeau <cfergeau@redhat.com> - 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 <hughsient@gmail.com> - 3.5.2-1
- Update to 3.5.2
* Wed May 16 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.4.2-2
- Remove ExclusiveArch now that spice-gtk is built on all arch
* Tue May 15 2012 Zeeshan Ali <zeenix@redhat.com> - 3.4.2-1
- Update to 3.4.2
* Thu Apr 26 2012 Christophe Fergeau <cfergeau@redhat.com> - 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 <hughsient@gmail.com> - 3.4.1-1
- Update to 3.4.1
* Sat Mar 31 2012 Daniel P. Berrange <berrange@redhat.com> - 3.4.0.1-2
- Only pull in libvirtd + KVM drivers, without default configs (bug 802475)
* Sat Mar 31 2012 Zeeshan Ali <zeenix@redhat.com> - 3.4.0.1-1
- Update to 3.4.0.1
* Mon Mar 26 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.4.0-1
- Update to 3.4.0
* Mon Mar 26 2012 Dan HorĂ¡k <dan[at]danny.cz> - 3.3.92-2
- set ExclusiveArch equal to spice-gtk
* Tue Mar 20 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.3.92-1
- Update to 3.3.92
* Tue Mar 6 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.91-1
- Update to 3.3.91
* Sun Feb 26 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.90-1
- Update to 3.3.90
* Wed Feb 08 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.3.5.1-1
- Update to 3.3.5.1
* Wed Jan 25 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.3.4.1-1
- Update to minor 3.3.4.1 release
* Fri Jan 20 2012 Christophe Fergeau <cfergeau@redhat.com> - 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 <cfergeau@redhat.com> - 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 <cfergeau@redhat.com> - 3.3.4-2
- Remove use of BuildRoot
- Remove use of defattr
- Use %%global instead of %%define
* Tue Jan 17 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.3.4-1
- Update to 3.3.4 release
* Thu Jan 05 2012 Christophe Fergeau <cfergeau@redhat.com> - 3.3.3-3
- Escape %%{buildroot} in changelog
- Remove empty %%pre section
* Wed Jan 04 2012 Christophe Fergeau <cfergeau@redhat.com> - 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 <cfergeau@redhat.com> - 3.3.3-1
- Initial import