60 Commits

Author SHA1 Message Date
Marc-André Lureau
668c52775f wixl: use a versionized installation directory
It turned out that not only the current MSI broke the "component rule",
but also that our files are not versionized correctly. Windows Installer
applies some file versioning rules before replacing a file
http://msdn.microsoft.com/en-us/library/aa368599%28v=vs.85%29.aspx

Since msitools doesn't extract version from files and populate the Version
field of the File table, it "usually" keep the current file installed.

It's practically impossible to rely on version information from
files (from a quick look, only 5% of the files are versionized and even
less correctly, libgcrypt seems to do non-monotonic buildid for example)

So the rule that applies when files are not versionized is to check the
file hash, and the modified date. File hash was added recently in
msitools, but doesn't apply when the installed file itself has a
version.

In order to solve the above problems, it's simpler to just have a
different installation prefix. Windows Installer will see files with
different component guid, and won't be checking any file update rule.  I
have verified the upgrade is working, not leaving any file behind and
updating registry correctly with this solution. Until the files are
correctly versionized, it looks like the only sensible thing to
do. Furthermore, this make it simpler to have several versions installed
in parallel later on (when we change productid)
2015-01-12 17:04:46 +00:00
Victor Toso
3bbf1ded1c nsis: use gstreamer-1.0 instead of gstreamer-0.10
Spice-gtk now is able to use gstreamer-1.0 for playback and record
audio. This patch updates the installer to use the latest version.
2015-01-05 23:28:26 +01:00
Fabiano Fidêncio
2cbfd08b09 nsis: use gtk-vnc conditionally
Only include gtk-vnc as dep when it's explicitly done in the configure.
2014-12-23 00:42:05 +01:00
Fabiano Fidêncio
c7cbf57efc nsis: use spice-gtk conditionally
Only include spice-gtk as dep when it's explicitly done in the configure.
2014-12-23 00:42:05 +01:00
Fabiano Fidêncio
979eab69f2 nsis: use libgovirt conditionally
Only include libgovirt as dep when it's explicitly done in the configure.
2014-12-23 00:42:02 +01:00
Fabiano Fidêncio
6baccb2b78 nsis: add missing file needed to use virsh.exe 2014-12-23 00:40:37 +01:00
Fabiano Fidêncio
5159956305 nsis: use libvirt conditionally
Only include libvirt as dep when it's explicitly done in the configure.
2014-12-23 00:40:05 +01:00
Fabiano Fidêncio
de700d09ef msi: use gtk-vnc conditionally
Only include gtk-vnc as dep when it's explicitly done in the configure.
2014-12-21 22:52:49 +01:00
Fabiano Fidêncio
57c4ebcaad msi: use spice-gtk conditionally
Only include spice-gtk as dep when it's explicitly done in the configure.
2014-12-21 22:50:06 +01:00
Fabiano Fidêncio
b8b64e67dc msi: use libgovirt conditionally
Only include libgovirt as dep when it's explicitly done in the configure.
2014-12-21 22:47:56 +01:00
Fabiano Fidêncio
befd4608e4 msi: use libvirt conditionally
Only include libvirt as dep when it's explicitly done in the configure.
2014-12-21 22:42:06 +01:00
Fabiano Fidêncio
dba01112e8 cosmetic: use $(VAR) instead of ${VAR} 2014-12-21 22:36:07 +01:00
Marc-André Lureau
7e4921f161 msi/nsis: fix keyboard-shortcuts icon location
The /usr/share/icons/gnome icon theme location has been replaced with
Adwaita in f21, fix the path.
2014-12-15 18:11:33 +01:00
Fabiano Fidêncio
c3179a4c69 msi: add gtk3 support
Add support to build the virt-viewer's msi using GTK3.
For the GTK3 build, in order to provide all used icons for Windows
systems we have to include manually all the icons we want to or add
adwaita-icon-theme as dependency. I've decided to go with the first
approach, what can be improved when we have "foreach" support in
msitools (https://bugzilla.gnome.org/show_bug.cgi?id=741296).
2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
ee1ad5797d msi: add libgovirt as dependency
libgovirt is used to provide support to foreign menu using ovirt.
2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
0fd0ccc129 nsis: add missing 24x24 icons 2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
4db8e8f67f nsis: add gtk3 support
Add support to build the virt-viewer's nsis using GTK3.
2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
59019cc4a3 nsis: remove $INSTDIR\etc 2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
c46f42eafc nsis: remove $INSTDIR\etc\libvirt 2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
6bd9b280b5 nsis: remove dup entries 2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
80601c6131 nsis: add libgovirt (and its dependencies)
libgovirt is used to provide support to foreign menu using ovirt.
2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
69aed2eb9f nsis: add libwinpthread-1.dll
libwinpthread-1.dll is a dependency of libvirt
2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
0202f83c7a nsis: add libopus-0.dll
libopus-0.dll is a dependency of spice-glib
2014-12-15 17:36:10 +01:00
Fabiano Fidêncio
8dbefb1aca nsis: add libnettle-4-7.dll (and its dependencies)
libgcc_s_sjlj-1 is needed by libgmp (on x86)
libgcc_s_seh-1 is needed by libgmp (on x86_64s)
libgmp-10.dll is needed by libnettle
libhogweed-2-5.dll is provided by libnettle
libnettle-4-7.dll is needed by gnutls
gnutls is needed by gvnc and libvirt

An interesting point here that worth to mention is the usage of /nonfatal
when including libgcc_s_{sjlj,seh}-1.dll. As we only have the _seh in x64
the build breaks trying to add "not found" files. A check for arch was
one option to solve the problem, but _sjlj may exist in x64 as well, when
using an old gcc. An explicit check if the file exists (in compile time)
was another idea, but for some reason the "-" part of the filename was
interpreted as a math operand, breaking the build.
With all that in mind, adding /nonfatal was the most convenient solution.
2014-12-15 17:36:09 +01:00
Fabiano Fidêncio
a5b8266295 nsis: update libgnutls version
Use version -28 instead of -26, matching what currently is in f21.
2014-12-15 17:36:09 +01:00
Fabiano Fidêncio
cf6b2c5695 nsis: update libtasn1 version
Use version -6 instead of -3, matching what currently is in f21.
2014-12-15 17:36:09 +01:00
Fabiano Fidêncio
a58a1885c0 nsis: update libpng version
Use libpng15-15 instead of libpng16-16, matching what currently is in
f21.
2014-12-15 17:36:09 +01:00
Fabiano Fidêncio
df4450112a nsis: update libgcrypt version
Use version -20 instead of -11, matching what currently is in f21.
2014-12-15 17:36:09 +01:00
Christophe Fergeau
abf13d38b3 Update shared mime database on install/uninstall
remomte-viewer installs a file to $datadir/share/mime to register a
mime-type for its .vv files. However, after installing this file,
update-mime-database must be run in order to update the shared mime
database. This commit (inspired by what Nautilus/planner are doing) adds
what is needed for that.
If the mime type is not correctly registered, gvfs-info console.vv will not
return the correct mime type, and xdg-open console.vv will fail to start
remote-viewer, and will fall back to running gedit as the .vv file is a
text file.

https://bugzilla.redhat.com/show_bug.cgi?id=1044209
2013-12-18 14:20:39 +01:00
Marc-André Lureau
9ad08231ca remote-viewer: add desktop icon
Associate an icon to desktop menu entry.
https://bugzilla.redhat.com/show_bug.cgi?id=1020359
2013-12-11 00:26:54 +01:00
Marc-André Lureau
c8e5b8e3b0 msi: use ProductVersion compatible with Windows Installer
Windows Installer expects version of form major.minor.build in order to
perform updates.

Following Daniel Berrange suggestion, compute a ProductVersion
compatible with this scheme by shifting virt-viewer "micro" release
number and adding the extra "buildid".
2013-07-30 21:08:26 +02:00
Marc-André Lureau
460a463c81 wxs: add usb.ids and keyboard-shortcuts.png 2013-07-30 21:05:14 +02:00
Marc-André Lureau
85892affca data/remote-viewer.desktop: Fix missing trailing ;
data/remote-viewer.desktop: error: value
"x-scheme-handler/spice;application/x-virt-viewer" for string list key
"MimeType" in group "Desktop Entry" does not have a semicolon (';') as
trailing character
2013-07-04 16:30:22 +02:00
Marc-André Lureau
2c1e7c18bf build-sys: add debug-helper rule 2013-05-23 17:30:59 +02:00
Daniel P. Berrange
c330f40a0c Set MANUFACTURER env variable when running wixl
The MANUFACTURER env variable is mandatory since it is used
in the data files. wixl will exit with parser error if it
is not set

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2013-05-01 16:11:06 +01:00
Marc-André Lureau
29f7ee33ca msi: build correct 64-bit msi 2013-04-15 16:46:48 +02:00
Marc-André Lureau
d5daa55fe8 msi: fix icon location 2013-04-15 16:46:48 +02:00
Marc-André Lureau
4e24da29e7 build-sys: regenerate spec files when they change 2013-04-15 16:46:47 +02:00
Daniel P. Berrange
87bb91e6af Don't define the same make target/variables twice
The NSIS patches defined the .PHONY target twice and also
defined CLEANFILES twice
2013-02-13 15:18:16 +00:00
Marc-André Lureau
db19b2ec99 win: add virt-viewer.msi build rule
In order to build the MSI, you will need msitools:
http://ftp.gnome.org/pub/GNOME/sources/msitools/

The MANUFACTURER environment variable is mandatory and should be set
to the manufacturer/author of the MSI build.
2013-02-13 13:20:37 +01:00
Marc-André Lureau
da45d9fa1e Register remote-viewer mime handling
Unfortunately, I don't see yet how we could avoid the browser dialog
asking which application to open. On Firefox, each user has a
mimeTypes.rdf, but we can't really modify it..
2013-02-11 19:35:00 +01:00
Christophe Fergeau
a525e43e85 nsis: Adjust file list
Adjust file names for mingw-usbredir dlls and readline dlls
2013-01-24 12:58:06 +01:00
Michal Privoznik
5c9955df09 Sanitize syntax-check
make syntax-check is producing some errors about empty line at EOF
and missing #include <config.h> in src/virt-viewer-file.c

* src/virt-viewer-file.c: add #include <config.h>
* data/virt-viewer-debug.nsis.in: remove empty line at EOF
2012-12-05 16:28:21 +01:00
Marc-André Lureau
9f5192f117 debug.nsis: remove superflous path 2012-11-27 12:37:29 +01:00
Marc-André Lureau
03c3e4d08e Add virt-viewer-debug.exe NSIS installer
This installer will provide with the tools and configuration needed to
debug virt-viewer & remote-viewer. It will install itself by default in
virt-viewer directory.
2012-11-23 16:05:57 +01:00
Marc-André Lureau
93da043657 Use a mutex to check if VirtViewer running
We need to warn user that installer can't proceed if there is already
a running instance of VirtViewer or of the installer.

https://bugzilla.redhat.com/show_bug.cgi?id=864033
2012-10-23 14:49:23 +02:00
Marc-André Lureau
08db836b13 nsis: add deps.txt file in installer
This helps track package version that were used during the
build of Windows installer. It's not ideal, but make up the
lack of package management on windows
2012-10-23 11:17:05 +02:00
Marc-André Lureau
e5895ce49f nsis: update required files and libraries 2012-10-23 11:17:05 +02:00
Marc-André Lureau
cffee9c27d nsis: fix .nsis file paths
- look up for icons under the DESTDIR directory
- don't ship gstaudiofx, unneeded
- add missing libtasn
2012-05-15 02:45:21 +02:00
Marc-André Lureau
88893e30bc nsis: IE policy to launch silentely remote-viewer
Add IE ElevationPolicy for the remote-viewer client.

http://msdn.microsoft.com/en-us/library/bb250462%28v=vs.85%29.aspx
2012-05-14 17:43:34 +02:00