diff --git a/.gitignore b/.gitignore index f6daf3d..d3f4ae8 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ virt-manager-0.8.4.tar.gz /virt-manager-0.9.3.tar.gz /virt-manager-0.9.4.tar.gz /virt-manager-0.9.5.tar.gz +/virt-manager-d3f9bc8e.tar.gz diff --git a/sources b/sources index a688457..24a7d0e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -2b622a0f4cd53f83665d9841b5a3cefa virt-manager-0.9.5.tar.gz +0189909a03f0af234dfa2a92709dce47 virt-manager-d3f9bc8e.tar.gz diff --git a/virt-manager.spec b/virt-manager.spec index 2426346..50cc2d0 100644 --- a/virt-manager.spec +++ b/virt-manager.spec @@ -1,28 +1,26 @@ # -*- rpm-spec -*- -%define _package virt-manager -%define _version 0.9.5 -%define _release 1 -%define virtinst_version 0.600.4 +%define with_guestfs 0 +%define disable_unsupported_rhel 0 +%define askpass_package "openssh-askpass" %define qemu_user "qemu" +%define libvirt_packages "libvirt-daemon-kvm" %define preferred_distros "fedora,rhel" %define kvm_packages "qemu-system-x86" -%define libvirt_packages "libvirt-daemon-kvm" -%define askpass_package "openssh-askpass" -%define disable_unsupported_rhel 0 -%define with_guestfs 0 -%define with_tui 1 +%if 0%{?rhel} +%define preferred_distros "rhel,fedora" +%define kvm_packages "qemu-kvm" +%define disable_unsupported_rhel 1 +%endif -%define with_spice 1 # End local config -# Default option handling -%if %{with_spice} -%define default_graphics "spice" -%endif +%global gitcommit d3f9bc8e +%define _version 0.10.0 +%define _release 0.1.git%{gitcommit} # This macro is used for the continuous automated builds. It just @@ -31,7 +29,7 @@ # Fedora RPM builds %define _extra_release %{?dist:%{dist}}%{?extra_release:%{extra_release}} -Name: %{_package} +Name: virt-manager Version: %{_version} Release: %{_release}%{_extra_release} %define verrel %{version}-%{release} @@ -40,65 +38,36 @@ Summary: Virtual Machine Manager Group: Applications/Emulators License: GPLv2+ URL: http://virt-manager.org/ -Source0: http://virt-manager.org/download/sources/%{name}/%{name}-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch -# These two are just the oldest version tested -Requires: pygtk2 >= 1.99.12-6 -Requires: gnome-python2-gconf >= 1.99.11-7 -# This version not strictly required: virt-manager should work with older, -# however varying amounts of functionality will not be enabled. -Requires: libvirt-python >= 0.7.0 -# Definitely does not work with earlier due to python API changes -Requires: dbus-python >= 0.61 -Requires: dbus-x11 -%if 0%{?rhel} > 6 -# Might work with earlier, but this is what we've tested -Requires: gnome-keyring >= 0.4.9 -%else -Requires: libgnome-keyring -%endif -# Minimum we've tested with -# Although if you don't have this, comment it out and the app -# will work just fine - keyring functionality will simply be -# disabled -Requires: gnome-python2-gnomekeyring >= 2.15.4 -# Minimum we've tested with -Requires: libxml2-python >= 2.6.23 -# Absolutely require this version or later -Requires: python-virtinst >= %{virtinst_version} -# Earlier vte had broken python binding module -Requires: vte >= 0.12.2 -# For online help -Requires: scrollkeeper +#Source0: http://virt-manager.org/download/sources/%{name}/%{name}-%{version}.tar.gz +# Generate source with +# git clone git://git.fedorahosted.org/git/virt-manager.git +# cd virt-manager +# git archive --output virt-manager-%{gitcommit}.tar.gz --prefix virt-manager-%{gitcommit}/ %{gitcommit} +Source: virt-manager-%{gitcommit}.tar.gz + + +Requires: pygobject3 +Requires: gtk3 +Requires: libvirt-glib >= 0.0.9 +Requires: gnome-python2-gconf +Requires: libxml2-python +Requires: vte + # For console widget -Requires: gtk-vnc-python >= 0.3.8 -%if %{with_spice} -Requires: spice-gtk-python -%endif +Requires: gtk-vnc2 +Requires: spice-gtk3 + + %if %{with_guestfs} Requires: python-libguestfs %endif -%if %{with_tui} == 0 -Obsoletes: virt-manager-common <= %{verrel} -Conflicts: virt-manager-common > %{verrel} -%else -Requires: virt-manager-common = %{verrel} -%endif -BuildRequires: gettext -BuildRequires: scrollkeeper BuildRequires: intltool -BuildRequires: GConf2 BuildRequires: /usr/bin/pod2man -Requires(pre): GConf2 -Requires(post): GConf2 -Requires(preun): GConf2 -Requires(post): desktop-file-utils -Requires(postun): desktop-file-utils %description Virtual Machine Manager provides a graphical tool for administering virtual @@ -107,19 +76,6 @@ connect to a graphical or serial console, and see resource usage statistics for existing VMs on local or remote machines. Uses libvirt as the backend management API. -# TUI package setup -%if %{with_tui} -%package tui -Summary: Virtual Machine Manager text user interface -Group: Applications/Emulators - -Requires: virt-manager-common = %{verrel} -Requires: python-newt_syrup >= 0.1.2 -Requires: libuser-python -Requires: python-IPy - -%description tui -An interactive text user interface for Virtual Machine Manager. %package common Summary: Common files used by the different Virtual Machine Manager interfaces @@ -128,140 +84,148 @@ Group: Applications/Emulators # This version not strictly required: virt-manager should work with older, # however varying amounts of functionality will not be enabled. Requires: libvirt-python >= 0.7.0 -Requires: dbus-python -# Minimum we've tested with -Requires: libxml2-python >= 2.6.23 -# Absolutely require this version or later -Requires: python-virtinst >= %{virtinst_version} +Requires: libxml2-python +Requires: python-urlgrabber +Requires: python-ipaddr %description common -Common files used by the different Virtual Machine Manager interfaces. -%endif +Common files used by the different virt-manager interfaces, as well as +virt-install related tools. + + +%package -n virt-install +Summary: Utilities for installing virtual machines + +Requires: virt-manager-common = %{verrel} + +Provides: virt-install +Provides: virt-clone +Provides: virt-image +Provides: virt-convert +Obsoletes: python-virtinst + +%description -n virt-install +Package includes several command line utilities, including virt-install +(build and install new VMs) and virt-clone (clone an existing virtual +machine). + %prep -%setup -q +%setup -q -n virt-manager-%{gitcommit} %build %if %{qemu_user} -%define _qemu_user --with-qemu_user=%{qemu_user} +%define _qemu_user --qemu-user=%{qemu_user} %endif %if %{kvm_packages} -%define _kvm_packages --with-kvm-packages=%{kvm_packages} +%define _kvm_packages --kvm-package-names=%{kvm_packages} %endif %if %{preferred_distros} -%define _preferred_distros --with-preferred-distros=%{preferred_distros} +%define _preferred_distros --preferred-distros=%{preferred_distros} %endif %if %{libvirt_packages} -%define _libvirt_packages --with-libvirt-package-names=%{libvirt_packages} +%define _libvirt_packages --libvirt-package-names=%{libvirt_packages} %endif %if %{askpass_package} -%define _askpass_package --with-askpass-package=%{askpass_package} +%define _askpass_package --askpass-package-names=%{askpass_package} %endif %if %{disable_unsupported_rhel} -%define _disable_unsupported_rhel --disable-unsupported-rhel-options +%define _disable_unsupported_rhel --hide-unsupported-rhel-options %endif %if 0%{?default_graphics:1} -%define _default_graphics --with-default-graphics=%{default_graphics} +%define _default_graphics --default-graphics=%{default_graphics} %endif -%if %{with_tui} -%define _tui_opt --with-tui -%else -%define _tui_opt --without-tui -%endif -%configure %{?_tui_opt} \ - %{?_qemu_user} \ - %{?_kvm_packages} \ - %{?_libvirt_packages} \ - %{?_askpass_package} \ - %{?_preferred_distros} \ - %{?_disable_unsupported_rhel} \ - %{?_default_graphics} -make %{?_smp_mflags} +python setup.py configure \ + --pkgversion="%{version}" \ + %{?_qemu_user} \ + %{?_kvm_packages} \ + %{?_libvirt_packages} \ + %{?_askpass_package} \ + %{?_preferred_distros} \ + %{?_disable_unsupported_rhel} \ + %{?_default_graphics} %install -rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT -%find_lang %{name} +python setup.py install -O1 --root=$RPM_BUILD_ROOT -%clean -rm -rf $RPM_BUILD_ROOT +%find_lang %{name} -%pre -%gconf_schema_prepare %{name} %post /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : -update-desktop-database -q %{_datadir}/applications -%gconf_schema_upgrade %{name} +/usr/bin/update-desktop-database &> /dev/null || : + %postun if [ $1 -eq 0 ] ; then /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + /usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : fi -update-desktop-database -q %{_datadir}/applications +/usr/bin/update-desktop-database &> /dev/null || : -%preun -%gconf_schema_remove %{name} %posttrans /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +/usr/bin/glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || : + -%if %{with_tui} %files -%else -%files -f %{name}.lang -%endif -%defattr(-,root,root,-) -%doc README COPYING COPYING-DOCS AUTHORS ChangeLog NEWS -%{_sysconfdir}/gconf/schemas/%{name}.schemas +%doc README COPYING NEWS %{_bindir}/%{name} -%{_libexecdir}/%{name}-launch %{_mandir}/man1/%{name}.1* -%if %{with_tui} == 0 -%dir %{_datadir}/%{name} -%dir %{_datadir}/%{name}/virtManager/ -%{_datadir}/%{name}/virtManager/*.py* -%endif - -%{_datadir}/%{name}/*.ui -%{_datadir}/%{name}/%{name}.py* +%{_datadir}/%{name}/ui/*.ui +%{_datadir}/%{name}/virt-manager +%{_datadir}/%{name}/virtManager %{_datadir}/%{name}/icons %{_datadir}/icons/hicolor/*/apps/* %{_datadir}/applications/%{name}.desktop -%{_datadir}/dbus-1/services/%{name}.service +%{_datadir}/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.xml + -%if %{with_tui} %files common -f %{name}.lang -%defattr(-,root,root,-) %dir %{_datadir}/%{name} -%dir %{_datadir}/%{name}/virtManager/ -%{_datadir}/%{name}/virtManager/*.py* +%{_datadir}/%{name}/virtcli +%{_datadir}/%{name}/virtconv +%{_datadir}/%{name}/virtinst -%files tui -%defattr(-,root,root,-) -%{_bindir}/%{name}-tui -%{_datadir}/%{name}/%{name}-tui.py* +%files -n virt-install +%{_mandir}/man1/virt-install.1* +%{_mandir}/man1/virt-clone.1* +%{_mandir}/man1/virt-convert.1* +%{_mandir}/man1/virt-image.1* +%{_mandir}/man5/virt-image.5* + +%{_datadir}/%{name}/virt-install +%{_datadir}/%{name}/virt-clone +%{_datadir}/%{name}/virt-image +%{_datadir}/%{name}/virt-convert + +%{_bindir}/virt-install +%{_bindir}/virt-clone +%{_bindir}/virt-image +%{_bindir}/virt-convert -%{_datadir}/%{name}/virtManagerTui -%endif %changelog +* Mon Apr 29 2013 Cole Robinson - 0.10.0-0.1.gitd3f9bc8e +- Update to git snapshot for next release + * Mon Apr 01 2013 Cole Robinson - 0.9.5-1 - Rebased to version 0.9.5 - Enable adding virtio-scsi disks (Chen Hanxiao) (bz 887584)