pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/net/tigervnc tigervnc: update to 1.11.0 (with xorg-ser...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/0ecaca3a885d
branches:  trunk
changeset: 452818:0ecaca3a885d
user:      wiz <wiz%pkgsrc.org@localhost>
date:      Sun May 16 21:06:42 2021 +0000

description:
tigervnc: update to 1.11.0 (with xorg-server 1.20.11).

Switch to xorg-server 1.20.11.

Restore vncserver script that upstream does not distribute
any longer (they switched to systemd instead).

Changes:

TigerVNC 1.11.0 is now available. This is a new major release of
TigerVNC, but also a security release. Users that rely on the TLS
feature in the viewers are recommended to upgrade as soon as
possible.

Lots of changes have been made since the last release, but the highlights are:

* A security issue has been fixed in how the viewers handle TLS certificate exceptions
* vncserver has gotten a major redesign to be compatible with modern distributions
* The native viewer now has touch gestures to handle certain mouse actions (e.g. scroll wheel)
* Middle mouse button emulation in the native viewer, for devices with only two mouse buttons
* The Java viewer now supports Java 9+, but also now requires Java 8+
* Support for alpha cursors in the Java viewer (a feature already supported in the native viewer)
* The password and username can now be specified via the environment for the native viewer
* Support for building Xvnc/libvnc.so with Xorg 1.20.7+ and deprecate support for Xorg older than 1.16
* The official builds have been fixed to work on the upcoming macOS 11
* The Windows server (WinVNC) is now packaged separately as it is unmaintained and buggy

1.10.1

This is a security release to fix a number of issues that were
found by Kaspersky Lab. These issues affect both the client and
server and could theoretically allow an malicious peer to take
control over the software on the other side.

No working exploit is known at this time, and the issues require
the peer to first be authenticated. We still urge users to upgrade
when possible.

1.10.0

TigerVNC 1.10.0 is now available. Lots of changes have been made
since the last release, but the highlights are:

* The clipboard now supports full Unicode in the native viewer, WinVNC and Xvnc/libvnc.so
* The native client will now respect the system trust store when verifying server certificates
* Improved compatibility with VMware's VNC server
* Improved compatibility with some input methods on macOS
* Improvements to the automatic "repair" of JPEG artefacts
* Better handling of the Alt keys in some corner cases
* The Java web server has been removed as applets are no longer support by most browsers
* x0vncserver can now be configured to only allow local connections
* x0vncserver has received fixes for when only part of the display is shared
* Polling is now default in WinVNC as that works better for most

diffstat:

 net/tigervnc/Makefile                                            |   58 +-
 net/tigervnc/PLIST                                               |   19 +-
 net/tigervnc/distinfo                                            |   29 +-
 net/tigervnc/files/vncserver.pl                                  |  898 ++++++++++
 net/tigervnc/patches/patch-CMakeLists.txt                        |   23 +-
 net/tigervnc/patches/patch-common_rfb_util.h                     |   13 +
 net/tigervnc/patches/patch-unix_vncserver                        |   31 -
 net/tigervnc/patches/patch-unix_vncserver_vncserver.in           |   13 +
 net/tigervnc/patches/patch-unix_vncserver_vncsession.c           |   15 +
 net/tigervnc/patches/patch-unix_xserver117.patch                 |   72 -
 net/tigervnc/patches/patch-unix_xserver_hw_vnc_Makefile.am       |   10 +-
 net/tigervnc/patches/patch-unix_xserver_hw_vnc_vncBlockHandler.c |   21 +
 net/tigervnc/patches/patch-unix_xserver_os_inputthread.c         |   14 +
 13 files changed, 1067 insertions(+), 149 deletions(-)

diffs (truncated from 1364 to 300 lines):

diff -r 31793420909e -r 0ecaca3a885d net/tigervnc/Makefile
--- a/net/tigervnc/Makefile     Sun May 16 20:14:06 2021 +0000
+++ b/net/tigervnc/Makefile     Sun May 16 21:06:42 2021 +0000
@@ -1,11 +1,11 @@
-# $NetBSD: Makefile,v 1.37 2021/04/21 13:25:14 adam Exp $
+# $NetBSD: Makefile,v 1.38 2021/05/16 21:06:42 wiz Exp $
 
-DISTNAME=              tigervnc-1.9.0
-PKGREVISION=           8
+DISTNAME=              tigervnc-1.11.0
+PKGNAME=               ${DISTNAME}.1.20.11
 CATEGORIES=            net
 MASTER_SITES=          ${MASTER_SITE_GITHUB:=TigerVNC/}
-GITHUB_TAG=            v${PKGVERSION_NOREV}
-XORG_SERVER_FILE=      xorg-server-1.17.2
+GITHUB_TAG=            v1.11.0
+XORG_SERVER_FILE=      xorg-server-1.20.11
 SITES.${XORG_SERVER_FILE}.tar.bz2=     ${MASTER_SITE_XORG:=xserver/}
 DISTFILES=             ${DISTNAME}${EXTRACT_SUFX} ${XORG_SERVER_FILE}.tar.bz2
 
@@ -20,13 +20,21 @@
 
 DEPENDS+=      mcookie-[0-9]*:../../x11/mcookie
 
+REPLACE_BASH+= unix/vncserver/vncsession-start.in
+REPLACE_PERL+= unix/vncserver/vncserver.in
+
+WRKSRC=                ${WRKDIR}/${DISTNAME}
+
 USE_CMAKE=     yes
 USE_LIBTOOL=   yes
 USE_LANGUAGES= c c++
-USE_TOOLS+=    intltool msgfmt msgmerge patch perl:run autoconf automake autoreconf pkg-config gmake bash
+USE_TOOLS+=    intltool msgfmt msgmerge patch perl:run autoconf automake autoreconf pkg-config gmake bash:run
 BUILD_DIRS=    . unix/xserver
 INSTALL_DIRS=  . unix/xserver/hw/vnc
 
+# for reallocarray()
+CPPFLAGS.NetBSD+=      -D_OPENBSD_SOURCE
+
 LDFLAGS+=      ${BUILDLINK_LDADD.gettext}
 
 CONFIGURE_ENV+=                        ac_cv_path_RAWCPP="${PREFIX}/bin/tradcpp -Uunix"
@@ -36,18 +44,35 @@
 SUBST_CLASSES+=                hpath
 SUBST_STAGE.hpath=     pre-configure
 SUBST_MESSAGE.hpath=   fixing hardcoded paths
-SUBST_FILES.hpath=     unix/vncserver
+SUBST_FILES.hpath=     unix/vncserver/vncserver.in
 SUBST_SED.hpath+=      -e 's|/usr/local/vnc/classes|${PREFIX}/share/vnc/classes|g'
 SUBST_VARS.hpath+=     PREFIX X11BASE
 
 REPLACE_PERL+= unix/vncserver
+REPLACE_PERL+= vncserver.pl
 
 post-extract:
        cd ${WRKDIR} && ${EXTRACTOR} ${_DISTDIR}/${XORG_SERVER_FILE}.tar.bz2
        cp -r ${WRKDIR}/${XORG_SERVER_FILE}/* ${WRKSRC}/unix/xserver
+       cp ${FILESDIR}/vncserver.pl ${WRKSRC}
 
 post-patch:
-       cd ${WRKSRC}/unix/xserver && ${PATCH} --batch -p1 <../xserver117.patch
+       cd ${WRKSRC}/unix/xserver && ${PATCH} --batch -p1 <../xserver120.patch
+
+# suggested by BUILDING.txt:
+#./configure --with-pic --without-dtrace --disable-static --disable-dri \
+#      --disable-xinerama --disable-xvfb --disable-xnest --disable-xorg \
+#      --disable-dmx --disable-xwin --disable-xephyr --disable-kdrive \
+#      --disable-config-dbus --disable-config-hal --disable-config-udev \
+#      --disable-dri2 --enable-install-libxf86config --enable-glx \
+#      --with-default-font-path="catalogue:/etc/X11/fontpath.d,built-ins" \
+#      --with-fontdir=/usr/share/X11/fonts \
+#      --with-xkb-path=/usr/share/X11/xkb \
+#      --with-xkb-output=/var/lib/xkb \
+#      --with-xkb-bin-directory=/usr/bin \
+#      --with-serverconfig-path=/usr/lib[64]/xorg \
+#      --with-dri-driver-path=/usr/lib[64]/dri \
+#      {additional configure options}
 
 XORG_CONFIGURE_ARGS+=  --prefix=${PREFIX} --mandir=${PREFIX}/${PKGMANDIR}
 XORG_CONFIGURE_ARGS+=  --disable-xwayland --disable-kdrive --disable-xephyr
@@ -57,6 +82,22 @@
 XORG_CONFIGURE_ARGS+=  --disable-unit-tests --disable-devel-docs --disable-selective-werror
 XORG_CONFIGURE_ARGS+=  --disable-dri --enable-dri2 --disable-dri3 --enable-glx --enable-glx-tls
 
+EGDIR=                 share/examples/tigervnc
+INSTALLATION_DIRS+=    ${EGDIR}
+MAKE_DIRS+=            ${PKG_SYSCONFDIR}/pam.d
+MAKE_DIRS+=            ${PKG_SYSCONFDIR}/tigervnc
+CONF_FILES+=           ${EGDIR}/tigervnc ${PKG_SYSCONFDIR}/pam.d/tigervnc
+CONF_FILES+=           ${EGDIR}/vncserver-config-defaults ${PKG_SYSCONFDIR}/tigervnc/vncserver-config-defaults
+CONF_FILES+=           ${EGDIR}/vncserver-config-mandatory ${PKG_SYSCONFDIR}/tigervnc/vncserver-config-mandatory
+CONF_FILES+=           ${EGDIR}/vncserver.users ${PKG_SYSCONFDIR}/tigervnc/vncserver.users
+
+post-install:
+       ${INSTALL_SCRIPT} ${WRKSRC}/vncserver.pl ${DESTDIR}${PREFIX}/bin/vncserver
+       ${MV} ${DESTDIR}${PREFIX}/etc/pam.d/tigervnc ${DESTDIR}${PREFIX}/${EGDIR}
+       ${MV} ${DESTDIR}${PREFIX}/etc/tigervnc/vncserver-config-defaults ${DESTDIR}${PREFIX}/${EGDIR}
+       ${MV} ${DESTDIR}${PREFIX}/etc/tigervnc/vncserver-config-mandatory ${DESTDIR}${PREFIX}/${EGDIR}
+       ${MV} ${DESTDIR}${PREFIX}/etc/tigervnc/vncserver.users ${DESTDIR}${PREFIX}/${EGDIR}
+
 .include "../../mk/bsd.prefs.mk"
 
 .if ${X11_TYPE} != "modular"
@@ -94,4 +135,5 @@
 .include "../../x11/libXfont/buildlink3.mk"
 .include "../../x11/libXrandr/buildlink3.mk"
 .include "../../x11/libxkbfile/buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
 .include "../../mk/bsd.pkg.mk"
diff -r 31793420909e -r 0ecaca3a885d net/tigervnc/PLIST
--- a/net/tigervnc/PLIST        Sun May 16 20:14:06 2021 +0000
+++ b/net/tigervnc/PLIST        Sun May 16 21:06:42 2021 +0000
@@ -1,20 +1,29 @@
-@comment $NetBSD: PLIST,v 1.7 2020/04/17 11:37:24 wiz Exp $
+@comment $NetBSD: PLIST,v 1.8 2021/05/16 21:06:42 wiz Exp $
 bin/Xvnc
 bin/vncconfig
 bin/vncpasswd
 bin/vncserver
 bin/vncviewer
 bin/x0vncserver
+lib/systemd/system/vncserver@.service
 lib/xorg/modules/extensions/libvnc.la
+libexec/vncserver
+libexec/vncsession-start
 man/man1/Xvnc.1
 man/man1/vncconfig.1
 man/man1/vncpasswd.1
-man/man1/vncserver.1
 man/man1/vncviewer.1
 man/man1/x0vncserver.1
+man/man8/vncserver.8
+man/man8/vncsession.8
+sbin/vncsession
 share/applications/vncviewer.desktop
-share/doc/${PKGNAME}/LICENCE.TXT
-share/doc/${PKGNAME}/README.rst
+share/doc/tigervnc/LICENCE.TXT
+share/doc/tigervnc/README.rst
+share/examples/tigervnc/tigervnc
+share/examples/tigervnc/vncserver-config-defaults
+share/examples/tigervnc/vncserver-config-mandatory
+share/examples/tigervnc/vncserver.users
 share/icons/hicolor/16x16/apps/tigervnc.png
 share/icons/hicolor/22x22/apps/tigervnc.png
 share/icons/hicolor/24x24/apps/tigervnc.png
@@ -34,6 +43,7 @@
 share/locale/hu/LC_MESSAGES/tigervnc.mo
 share/locale/id/LC_MESSAGES/tigervnc.mo
 share/locale/it/LC_MESSAGES/tigervnc.mo
+share/locale/ko/LC_MESSAGES/tigervnc.mo
 share/locale/nl/LC_MESSAGES/tigervnc.mo
 share/locale/pl/LC_MESSAGES/tigervnc.mo
 share/locale/pt_BR/LC_MESSAGES/tigervnc.mo
@@ -45,3 +55,4 @@
 share/locale/uk/LC_MESSAGES/tigervnc.mo
 share/locale/vi/LC_MESSAGES/tigervnc.mo
 share/locale/zh_CN/LC_MESSAGES/tigervnc.mo
+share/locale/zh_TW/LC_MESSAGES/tigervnc.mo
diff -r 31793420909e -r 0ecaca3a885d net/tigervnc/distinfo
--- a/net/tigervnc/distinfo     Sun May 16 20:14:06 2021 +0000
+++ b/net/tigervnc/distinfo     Sun May 16 21:06:42 2021 +0000
@@ -1,16 +1,19 @@
-$NetBSD: distinfo,v 1.17 2020/04/17 11:37:24 wiz Exp $
+$NetBSD: distinfo,v 1.18 2021/05/16 21:06:42 wiz Exp $
 
-SHA1 (tigervnc-1.9.0.tar.gz) = c56656c596fb863bb2c4b67fb62b4165011d181f
-RMD160 (tigervnc-1.9.0.tar.gz) = 990e872addf459432584c176b3565504e994899e
-SHA512 (tigervnc-1.9.0.tar.gz) = 333910f567e6b5e4a5a22d898b2d4c3f4b834cb4cc8fc13ff55d31401894c0d5122a127692ec5eb51e412c945ff3ea5b8146f9ab22cbe1e47541e09239ec8c9d
-Size (tigervnc-1.9.0.tar.gz) = 1506520 bytes
-SHA1 (xorg-server-1.17.2.tar.bz2) = 56ac29a82b99bcf4c7ba2fca41a44cfa18748262
-RMD160 (xorg-server-1.17.2.tar.bz2) = bf575a269f1e7b729992a20989be84e09fcc88a2
-SHA512 (xorg-server-1.17.2.tar.bz2) = 7e7b7620890cc8db696695758fa22fa879f9d3c33946663611ec0b37f02116e9c6f08779f9eece59907b430d3df93f0c0548939683ea156b3c4cbe02571b7551
-Size (xorg-server-1.17.2.tar.bz2) = 5767983 bytes
-SHA1 (patch-CMakeLists.txt) = 42a364f898784a9c4da46bea8ef6bc37838815b9
+SHA1 (tigervnc-1.11.0.tar.gz) = 6f6b621a76b734888748de10c32c2b5b59d40b19
+RMD160 (tigervnc-1.11.0.tar.gz) = 516a6eee866ef221ae52d759b465032a51510dc3
+SHA512 (tigervnc-1.11.0.tar.gz) = 262676f065de6dfb72b1482c0ef1e6d8b764f53360ae6114debbe0986eede45d27e283e1452a72cb9b7540657ab347fd36df5b30b72d6db4a0f8cbea5b591025
+Size (tigervnc-1.11.0.tar.gz) = 1346992 bytes
+SHA1 (xorg-server-1.20.11.tar.bz2) = 86ae4add5719e6026a569f5559d51e8707171d5d
+RMD160 (xorg-server-1.20.11.tar.bz2) = 9b451d5523e9384df37e0e91f52d843090590d23
+SHA512 (xorg-server-1.20.11.tar.bz2) = 1017015b9fd5d53788abe3641d877e6df8609841fa5c1847c0a5e133ddcc1b758a5d695304ebd36828099ec201a85b6b70b46f5ea4f81c5bd3a16fa6e175e3c2
+Size (xorg-server-1.20.11.tar.bz2) = 6476116 bytes
+SHA1 (patch-CMakeLists.txt) = e844bee9fa5e1ce755d65333fadd3654a207aee4
+SHA1 (patch-common_rfb_util.h) = 73d5fc206e192b936c224cedf5857980fca69eb0
 SHA1 (patch-media_CMakeLists.txt) = cd50f9b7a9405aa523412ef823a32437a3c19ffa
-SHA1 (patch-unix_vncserver) = 9c71ad02c6657f537bcb2abaa116a831b555d7c0
-SHA1 (patch-unix_xserver117.patch) = 5e5d2a98f0b765ae0d6bb5f200808126b03dcc51
-SHA1 (patch-unix_xserver_hw_vnc_Makefile.am) = 29b33e6d94a070bb0a55a264cd1c4e120c9b1b3c
+SHA1 (patch-unix_vncserver_vncserver.in) = 715f16a4be6806778fd0a9d781e920771e35d0ca
+SHA1 (patch-unix_vncserver_vncsession.c) = 78f623b2ed7e34d9478032a02d20917fdbf2c0ca
+SHA1 (patch-unix_xserver_hw_vnc_Makefile.am) = df31836e27bb535b307404adb55e239f10bbe6c4
+SHA1 (patch-unix_xserver_hw_vnc_vncBlockHandler.c) = 534a621aab793625c27737d42c5bf12c9574a414
 SHA1 (patch-unix_xserver_hw_vnc_vncModule.c) = 77aff6c2bb19e6936302c783b72d581e7d6388f5
+SHA1 (patch-unix_xserver_os_inputthread.c) = da8f1a6ab905d2569f61e92d8cf9891ed14ec42a
diff -r 31793420909e -r 0ecaca3a885d net/tigervnc/files/vncserver.pl
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/net/tigervnc/files/vncserver.pl   Sun May 16 21:06:42 2021 +0000
@@ -0,0 +1,898 @@
+#!/usr/bin/env perl
+#
+#  Copyright (C) 2009-2010 D. R. Commander.  All Rights Reserved.
+#  Copyright (C) 2005-2006 Sun Microsystems, Inc.  All Rights Reserved.
+#  Copyright (C) 2002-2003 Constantin Kaplinsky.  All Rights Reserved.
+#  Copyright (C) 2002-2005 RealVNC Ltd.
+#  Copyright (C) 1999 AT&T Laboratories Cambridge.  All Rights Reserved.
+#
+#  This is free software; you can redistribute it and/or modify
+#  it under the terms of the GNU General Public License as published by
+#  the Free Software Foundation; either version 2 of the License, or
+#  (at your option) any later version.
+#
+#  This software is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+#
+#  You should have received a copy of the GNU General Public License
+#  along with this software; if not, write to the Free Software
+#  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
+#  USA.
+#
+
+#
+# vncserver - wrapper script to start an X VNC server.
+#
+
+# First make sure we're operating in a sane environment.
+$exedir = "";
+$slashndx = rindex($0, "/");
+if($slashndx>=0) {
+    $exedir = substr($0, 0, $slashndx+1);
+}
+
+&SanityCheck();
+
+#
+# Global variables.  You may want to configure some of these for
+# your site
+#
+
+$geometry = "1024x768";
+#$depth = 16;
+
+$vncUserDir = "$ENV{HOME}/.vnc";
+$vncUserConfig = "$vncUserDir/config";
+
+$vncSystemConfigDir = "/etc/tigervnc";
+$vncSystemConfigDefaultsFile = "$vncSystemConfigDir/vncserver-config-defaults";
+$vncSystemConfigMandatoryFile = "$vncSystemConfigDir/vncserver-config-mandatory";
+
+$skipxstartup = 0;
+$xauthorityFile = "$ENV{XAUTHORITY}" || "$ENV{HOME}/.Xauthority";
+
+$xstartupFile = $vncUserDir . "/xstartup";
+$defaultXStartup
+    = ("#!/bin/sh\n\n".
+       "unset SESSION_MANAGER\n".
+       "unset DBUS_SESSION_BUS_ADDRESS\n".
+       "OS=`uname -s`\n".
+       "if [ \$OS = 'Linux' ]; then\n".
+       "  case \"\$WINDOWMANAGER\" in\n".
+       "    \*gnome\*)\n".
+       "      if [ -e /etc/SuSE-release ]; then\n".
+       "        PATH=\$PATH:/opt/gnome/bin\n".
+       "        export PATH\n".
+       "      fi\n".
+       "      ;;\n".
+       "  esac\n".
+       "fi\n".
+       "if [ -x /etc/X11/xinit/xinitrc ]; then\n".
+       "  exec /etc/X11/xinit/xinitrc\n".
+       "fi\n".
+       "if [ -f /etc/X11/xinit/xinitrc ]; then\n".
+       "  exec sh /etc/X11/xinit/xinitrc\n".
+       "fi\n".
+       "[ -r \$HOME/.Xresources ] && xrdb \$HOME/.Xresources\n".
+       "xsetroot -solid grey\n".
+       "xterm -geometry 80x24+10+10 -ls -title \"\$VNCDESKTOP Desktop\" &\n".
+       "twm &\n");
+
+$defaultConfig
+    = ("## Supported server options to pass to vncserver upon invocation can be listed\n".
+       "## in this file. See the following manpages for more: vncserver(1) Xvnc(1).\n".
+       "## Several common ones are shown below. Uncomment and modify to your liking.\n".
+       "##\n".
+       "# securitytypes=vncauth,tlsvnc\n".
+       "# desktop=sandbox\n".
+       "# geometry=2000x1200\n".
+       "# localhost\n".
+       "# alwaysshared\n");
+
+chop($host = `uname -n`);
+
+if (-d "/etc/X11/fontpath.d") {
+    $fontPath = "catalogue:/etc/X11/fontpath.d";
+}
+
+@fontpaths = ('/usr/share/X11/fonts', '/usr/share/fonts', '/usr/share/fonts/X11/');



Home | Main Index | Thread Index | Old Index