Commit Graph

96 Commits

Author SHA1 Message Date
Michael Weghorn
4676c57486 Make app-id and desktop file name match
The application uses an application-id of
"org.virt-manager.virt-viewer" (see function
remote_viewer_new in src/remote-viewer.c).

So far, there was a mismatch between this
application-id and the desktop file name,
resulting e.g. in no proper window icon being
used when running the app on KDE Plasma Wayland.

Adjust the name of the desktop and appdata
files to match the application-id as expected.

Also update the translatable strings using this
command:

    ninja -C _build virt-viewer-pot

Fixes: https://gitlab.com/virt-viewer/virt-viewer/-/issues/135
Signed-off-by: Michael Weghorn <m.weghorn@posteo.de>
2024-02-13 15:48:54 +01:00
Kowalski Dragon (kowalski7cc)
10b111c39b
Add content_rating to appdata
Signed-off-by: Kowalski Dragon (kowalski7cc) <kowalski7cc@users.noreply.github.com>
2023-09-20 14:37:01 +02:00
Kowalski Dragon (kowalski7cc)
44db1933f7
Add launchable desktop file and virt-viewer binary
Signed-off-by: Kowalski Dragon (kowalski7cc) <kowalski7cc@users.noreply.github.com>
2023-09-20 14:36:55 +02:00
Daniel P. Berrangé
dec15f96a0 build: use full_path() for referencing programs
When using the result of find_program, meson may expand
it to include both an interpretor path and the script
path. If we then add the interpretor path too, we fail.
Using 'full_path()' ensures we get only the script path.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2023-01-26 17:50:34 +00:00
Daniel P. Berrangé
c7a75aa3c2 meson: set variables for each program in build-aux dir
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-08-11 10:17:26 +01:00
Daniel P. Berrangé
98d9f202ef data: remove bogus param for meson i18n.merge_file
The positional parameter used to be treated as 'input', but since we
already set 'input' explicitly it is redundant. With latest meson
versions it now generates an error

data/meson.build:4:7: ERROR: Function does not take positional arguments.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2022-04-27 11:27:46 +01:00
Daniel P. Berrangé
df4f0a8d4f data: fix URLs in wxs file
The download site is on virt-manager.org, not virt-tools.org, so lets
use that site, with TLS too.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-03-08 12:53:55 +00:00
Daniel P. Berrangé
1f814df294 build: remove all traces of autotools build recipes
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-01-25 16:02:48 +00:00
Daniel P. Berrangé
b2c072cf0b build: introduce meson build recipes
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2021-01-25 16:02:48 +00:00
Pino Toscano
e4e6462818 mime: rename <_comment> to <comment>
Since gettext is used to extract this file, there is no more need to
prefix the translatable tags with underscore as intltool required.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2020-07-25 06:51:10 +02:00
Pino Toscano
e05169c0e8 Modernize AppStream file
- use the "desktop-application" component instead of the old "desktop"
- do not specify a type for the id, and remove the .desktop suffix;
  it is implicit for type=desktop-application
- move the URLs of screenshots within <image> tags
- simply remove the non-standard <updatecontact>, instead of converting
  it to <url type="contact">, as it is the same
- add URLs for the bug tracking, and the translation system

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2020-07-23 16:43:59 +02:00
Pino Toscano
05de79c4db build: appdata -> metainfo
Rename our makefile bits to metainfo as better naming.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2020-07-23 16:43:04 +02:00
Pino Toscano
e1e345a9a3 Install the AppStream file to the canonical location
The canonical location for AppStream XML files has been changed to
/usr/share/metainfo four years ago at least, with /usr/share/appdata
left as legacy location. It is time to switch to the right location.

Signed-off-by: Pino Toscano <ptoscano@redhat.com>
2020-07-23 16:41:41 +02:00
Daniel P. Berrangé
42752d3ff0 data: replace unix2dos with sed
This avoids needing to install extra packages in the CI system

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-06-26 15:50:50 +01:00
Daniel P. Berrangé
beeff760ac docs: update to point users to gitlab.com project
The project primary git repo has moved from pagure.io to
gitlab.com/virt-viewer/virt-viewer.  We want users to submit
code contributions, bug reports and support questions to the
gitlab project, not the mailing list, nor bugzilla, nor the
virt-manager.org site.

We're still using virt-manager.org for hosting downloads of
source and pagure.io for MSIs, but we'll aim to change that
too.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-04-03 14:08:10 +01:00
Daniel P. Berrangé
8089cddfcb po: provide custom make rules for po file management
Historically we have relied on intltool to install a standard
po/Makefile.in.in which has very limited scope for customization.
intltool is deprecated in favour of standard gettextize tools,
but these share the same disadvantages.

Writing make rules for po file management is no more difficult
than any other rules virt-viewer has, so stop using intltool
and don't use gettextize ether.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-03-12 11:49:38 +00:00
Daniel P. Berrangé
7bea22aece msi: record full build environment in MSI installer
For proper compliance with the GPL and other licenses we need to be
clear about exactly what toolchain and dependent packages we used in
order to build the MSI installer we distribute.

Historically we've done this by including a "deps.txt" file which
provides a list of all the mingw{32,64}-* RPMs on the host system.

This is not sufficient information, however, because the build system
will in fact use various native packages too from the toolchain too,
notably including any program run by "configure" which covers various
shell utilities, and pkg-config, and then of course make & msitools
itself.

Rather than try to figure out which subset of host RPMs are used,
just list every single host RPM that is installed.

A key implication of this is that formal release builds should always
be done in a pristine build root populated with the minimal content
required for the build.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2019-02-19 14:59:18 +00:00
Marc-André Lureau
c4f6142f15 remote-viewer: add handling of spice+unix and spice+tls schemes
- spice+unix:// was added in spice-gtk v0.28
- spice+tls:// was added in spice-gtk v0.35

This allows launchers to start remote-viewer when they encounter a
Spice URI with +unix or +tls.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Acked-by: Jonathon Jongsma <jjongsma@redhat.com>
Acked-by: Victor Toso <victortoso@redhat.com>
2018-09-25 22:01:28 +04:00
Marc-André Lureau
140cb84c25 remote-viewer: remove --spice-controller
spice controller interface is being removed from spice-gtk.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Victor Toso <victortoso@redhat.com>
2017-11-16 17:04:05 +01:00
Lukáš Venhoda
f212c5a358 package: Add appdata metadata for Gnome Software
Adds metadata to be used with Gnome Software.
Includes name, summary, description and a few screenshots of remote-viewer.

Signed-off-by: Lukáš Venhoda <lvenhoda@redhat.com>
Acked-by: Daniel P. Berrange <berrange@redhat.com>
Acked-by: Fabiano Fidêncio <fidencio@redhat.com>
2016-06-29 02:01:42 +02:00
Fabiano Fidêncio
ad40386fa2 msi: Depend on mingw-adwaita-icon-theme
Instead of maintain a file which includes every single icon that we use
from adwaita-icon-theme (adwaita-icons-needed.wxi.in), let's depend on
mingw-adwaita-icon-theme directly.
It reduces considerably the maintainability and the risk to have missing
icons. Although, the size of the final binary gets increased from ~35MB
to ~50MB.

Resolves: rhbz#1301064
Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com>
Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2016-05-03 08:04:23 +02:00
Fabiano Fidêncio
c589d8ad35 Remove nsis installer
The only reason for us to keep maintaining the nsis installer was the
activex plugin (spicex), which requires those nsis based installers.
As the next release of RHEV/oVirt won't use the activex plugin (spicex)
let's completely remove the nsis installer from our tree and focus on
only maintain the msi installer.
oVirt/RHEV is shipping virt-viewer based on 2.0 release and, if needed,
they can stick to 3.0 branch in a future update (in case their plan goes
wrong and they end up needing the nsis support).

Related: rhbz#1324885 and rhbz#1316560
Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com>
Acked-by: Christophe Fergeau <cfergeau@redhat.com>
2016-05-03 08:04:23 +02:00
Fabiano Fidêncio
ce0c17b4f5 wxi: virt-viewer depends on libvirt-glib
Since 51ce01d virt-viewer depends again on libvirt-glib.

Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com>
Acked-by: Eduardo Lima (Etrunko) <etrunko@redhat.com>
Acked-by: Victor Toso <victortoso@redhat.com>
2016-02-25 22:18:53 +01:00
Fabiano Fidêncio
151109dbd2 nsis: Add libvirt-glib-1.0-0.dll
Since 51ce01d virt-viewer depends again on libvirt-glib.

Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com>
Acked-by: Eduardo Lima (Etrunko) <etrunko@redhat.com>
Acked-by: Victor Toso <victortoso@redhat.com>
2016-02-25 22:18:13 +01:00
Fabiano Fidêncio
5d98df3ef1 nsis: update nettle to 3.2.1
Use version 3.2.1, matching what currently is in f23.
2016-02-24 07:20:10 +01:00
Fabiano Fidêncio
cf228ad54d nsis: add libbz2-1.dll
mingw-bzip2 seems to be a mingw-freetype dependency.
2015-12-01 16:46:07 +01:00
Fabiano Fidêncio
730a50a67a nsis: update nettle to 3.1.1
Use version 3.1.1, matching what currently is in f23.
2015-12-01 16:46:07 +01:00
Fabiano Fidêncio
632d9369bc nsis: update libgnutls to 3.4.7
Use version 3.4.7, matching what currently is in f23.
2015-12-01 16:46:07 +01:00
Fabiano Fidêncio
65aa7e08a5 nsis: update pango to 1.38.1
Use version 1.38.1, matching what is in f23.
An important note is that the removed files were removed in
mingw-pango-1.37.1.
2015-12-01 16:46:07 +01:00
Fabiano Fidêncio
69e29aca56 msi: use the correct id for remote-viewer.exe
As, in theory, file ids are stables, seems that we have been using the
wrong id for remote-viewer.exe (not sure if since forever or if the path
changed).
That's what msidump shows:

ffidenci@cat ~/src/upstream/virt-viewer/dump $ grep "fil808B4A5BAB4ACD727D3823632E798743" File.idt
ffidenci@cat ~/src/upstream/virt-viewer/dump $ grep "fil808B4A5BAB4ACD727D3823632E798743" Registry.idt
reg29E29C5608128A0192FB9DC3C18562A6 0
VirtViewer.vvfile\shell\open\command
"[#fil808B4A5BAB4ACD727D3823632E798743]" "%1"   CProgIds
ffidenci@cat ~/src/upstream/virt-viewer/dump $ grep "remote-viewer.exe" File.idt
fil610DF9E49759B1DEC646290195F96F8A cmp7677A8696936707272DCA43B1BF26760
remote-viewer.exe   855735          512 837

So, let's use the correct id (fil610DF9E49759B1DEC646290195F96F8A) from
now on.

Related: rhbz#1146016
2015-10-08 16:43:16 +02:00
Fabiano Fidêncio
097e1f6c51 msi: {virt,remote}-viewer depends on libxml2
Currently libxml2 is pulled as an indirect dependency when virt-viewer
is built with support to ovirt or libvirt (pulled by rest or libvirt,
respectively). However, {virt,remote}-viewer itself depends on libxml2
and not having it as an explicit dependency will cause errors on opening
remote-viewer when it is built without support to ovirt/libvirt.
2015-10-06 23:06:23 +02:00
Fabiano Fidêncio
03c014cb38 msi: drop gtk2 support
As virt-viewer builds for Windows are using GTK3 nowadays, we can easily
drop GTK2 support and avoid maintenance effort in something that is not
used/tested anymore.
2015-06-23 17:39:04 +02:00
Fabiano Fidêncio
0a7fa73f6c nsis: drop gtk2 support
As virt-viewer builds for Windows are using GTK3 nowadays, we can easily
drop GTK2 support and avoid maintenance effort in something that is not
used/tested anymore.
2015-06-23 17:39:00 +02:00
Fabiano Fidêncio
9f96eabdeb nsis: add libepoxy-0.dll (a new gtk3 dependency)
The new dependecy was introduced in gtk+ 3.15.3.
2015-06-23 16:43:03 +02:00
Fabiano Fidêncio
9c1f0dccde nsis: Ship libwinpthread even without libvirt support
Without libwinpthread, remote-viewer complains about missing this dll,
when built using --without-libvirt
2015-06-11 14:09:16 +02:00
Sandy Stutsman
2088585143 Add InstallScope="perMachine" to virt-viewer.wxs.in
Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=1146016
Without this parameter the installer will place the start menu icon in the
Admin users path rather than the 'AllUsers'.  Unprivileged users are unable
to use the menu to start the remote-viewer.

N.B. Because previous installations mixed Users and PerMachine (AllUsers)
paths, this installation will *NOT* properly upgrade them.  They must be
manually uninstalled first.
2015-06-10 13:55:23 +02:00
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