diff options
Diffstat (limited to 'community/tigervnc')
-rw-r--r-- | community/tigervnc/PKGBUILD | 69 | ||||
-rw-r--r-- | community/tigervnc/vncserver.service | 28 | ||||
-rw-r--r-- | community/tigervnc/vncviewer.desktop | 10 | ||||
-rw-r--r-- | community/tigervnc/xserver114.patch | 84 |
4 files changed, 191 insertions, 0 deletions
diff --git a/community/tigervnc/PKGBUILD b/community/tigervnc/PKGBUILD new file mode 100644 index 000000000..4e2ad657b --- /dev/null +++ b/community/tigervnc/PKGBUILD @@ -0,0 +1,69 @@ +# $Id: PKGBUILD 93706 2013-07-08 14:56:58Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Uroš Vampl <mobile.leecher at gmail dot com> + +pkgname=tigervnc +pkgver=1.3.0 +pkgrel=1 +_xorgver=1.14.2 +pkgdesc="suite of VNC servers and clients. VNC 4 branch of TightVNC." +arch=('i686' 'x86_64') +url="http://www.tigervnc.org" +license=('GPL') +depends=('pam' 'gnutls' 'libjpeg-turbo' 'libxft' 'libxinerama' 'libxcursor' + 'libxtst' 'libxfont' 'pixman' 'xorg-xauth' 'xorg-xsetroot' + 'xkeyboard-config' 'libgl' 'libgcrypt' 'perl' 'xorg-xkbcomp' + 'fltk') +makedepends=('cmake' 'nasm' 'xorg-font-util' 'xorg-util-macros' 'bigreqsproto' + 'compositeproto' 'damageproto' 'randrproto' 'resourceproto' + 'scrnsaverproto' 'videoproto' 'xcmiscproto' 'xf86vidmodeproto' + 'xtrans' 'mesa' 'glproto' 'dri2proto' 'imagemagick' 'librsvg') +options=(!libtool) +conflicts=('tightvnc') +source=(http://downloads.sourceforge.net/project/tigervnc/tigervnc/$pkgver/tigervnc-$pkgver.tar.bz2 + ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${_xorgver}.tar.bz2 + vncserver.service + vncviewer.desktop + xserver114.patch) +md5sums=('a5158228e64d14496821a39bf3851f1b' + '5d36a6483e8e301875131e8302c67727' + '0903d5a0dfa38e0b04964505b644585c' + '15c0405f920c3dac250692e8922578d1' + '928faf837ba5b1b34283f9f018df2f5e') + +prepare() { + cd ${srcdir}/${pkgname}-${pkgver} + cp -r ${srcdir}/xorg-server-${_xorgver}/* unix/xserver +} + +build() { + cd ${srcdir}/${pkgname}-${pkgver} + + cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DUSE_INCLUDED_FLTK=yes + make + make -C media + + cd unix/xserver + patch -Np1 -i ${srcdir}/xserver114.patch + autoreconf -fiv + ./configure --prefix=/usr \ + --disable-static --disable-xinerama --without-dtrace \ + --disable-xorg --disable-xnest --disable-xvfb --disable-dmx \ + --disable-xwin --disable-xephyr --disable-kdrive --with-pic \ + --disable-config-dbus --disable-config-hal --disable-config-udev \ + --disable-unit-tests --disable-devel-docs --disable-selective-werror \ + --disable-dri --enable-dri2 --enable-glx --enable-glx-tls + make +} + +package() { + cd ${srcdir}/${pkgname}-${pkgver} + make DESTDIR=${pkgdir} install + cd unix/xserver/hw/vnc + make DESTDIR=${pkgdir} install + sed -i 's/iconic/nowin/' ${pkgdir}/usr/bin/vncserver + install -Dm0644 $srcdir/vncserver.service $pkgdir/usr/lib/systemd/system/vncserver.service + install -dm0755 $pkgdir/usr/share/icons + install -m0644 ${srcdir}/${pkgname}-${pkgver}/media/icons/* $pkgdir/usr/share/icons/ + install -Dm0644 $srcdir/vncviewer.desktop $pkgdir/usr/share/applications/vncviewer.desktop +} diff --git a/community/tigervnc/vncserver.service b/community/tigervnc/vncserver.service new file mode 100644 index 000000000..a5bb02ade --- /dev/null +++ b/community/tigervnc/vncserver.service @@ -0,0 +1,28 @@ +# The vncserver service unit file +# +# 1. Copy this file to /etc/systemd/system/vncserver@:<display>.service +# 2. Edit User= +# ("User=foo") +# 3. Edit and vncserver parameters appropriately +# ("/usr/bin/vncserver %i -arg1 -arg2 -argn") +# 4. Run `systemctl --system daemon-reload` +# 5. Run `systemctl enable vncserver@:<display>.service` +# +# DO NOT RUN THIS SERVICE if your local area network is untrusted! +# +# See the wiki page for more on security +# https://wiki.archlinux.org/index.php/Vncserver + +[Unit] +Description=Remote desktop service (VNC) +After=syslog.target network.target + +[Service] +Type=forking +User= + +ExecStart=/usr/bin/vncserver %i +ExecStop=/usr/bin/vncserver -kill %i + +[Install] +WantedBy=multi-user.target diff --git a/community/tigervnc/vncviewer.desktop b/community/tigervnc/vncviewer.desktop new file mode 100644 index 000000000..b14e4fe2a --- /dev/null +++ b/community/tigervnc/vncviewer.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=Application +Name=TigerVNC viewer +Comment=TigerVNC viewer +Exec=/usr/bin/vncviewer +Icon=tigervnc_32.png +Terminal=false +StartupNotify=false +Categories=Application; Network; diff --git a/community/tigervnc/xserver114.patch b/community/tigervnc/xserver114.patch new file mode 100644 index 000000000..80dd6a225 --- /dev/null +++ b/community/tigervnc/xserver114.patch @@ -0,0 +1,84 @@ +diff -up xorg-server-20130109/configure.ac.vnc xorg-server-20130109/configure.ac +--- xorg-server-20130109/configure.ac.vnc 2013-01-24 13:01:31.013267503 +0100 ++++ xorg-server-20130109/configure.ac 2013-01-24 13:08:43.283941751 +0100 +@@ -72,6 +72,7 @@ dnl forcing an entire recompile.x + AC_CONFIG_HEADERS(include/version-config.h) + + AM_PROG_AS ++AC_PROG_CXX + AC_PROG_LN_S + AC_LIBTOOL_WIN32_DLL + AC_DISABLE_STATIC +@@ -1573,6 +1574,10 @@ if test "x$XVFB" = xyes; then + AC_SUBST([XVFB_SYS_LIBS]) + fi + ++dnl Xvnc DDX ++AC_SUBST([XVNC_CPPFLAGS], ["-DHAVE_DIX_CONFIG_H $XSERVER_CFLAGS"]) ++AC_SUBST([XVNC_LIBS], ["$FB_LIB $FIXES_LIB $XEXT_LIB $CONFIG_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_SYNC_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $MAIN_LIB"]) ++AC_SUBST([XVNC_SYS_LIBS], ["$GLX_SYS_LIBS"]) + + dnl Xnest DDX + +@@ -1608,6 +1613,8 @@ if test "x$XORG" = xauto; then + fi + AC_MSG_RESULT([$XORG]) + ++AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version]) ++ + if test "x$XORG" = xyes; then + XORG_DDXINCS='-I$(top_srcdir)/hw/xfree86 -I$(top_srcdir)/hw/xfree86/include -I$(top_srcdir)/hw/xfree86/common' + XORG_OSINCS='-I$(top_srcdir)/hw/xfree86/os-support -I$(top_srcdir)/hw/xfree86/os-support/bus -I$(top_srcdir)/os' +@@ -1826,7 +1833,6 @@ if test "x$XORG" = xyes; then + AC_DEFINE(XORG_SERVER, 1, [Building Xorg server]) + AC_DEFINE(XORGSERVER, 1, [Building Xorg server]) + AC_DEFINE(XFree86Server, 1, [Building XFree86 server]) +- AC_DEFINE_UNQUOTED(XORG_VERSION_CURRENT, [$VENDOR_RELEASE], [Current Xorg version]) + AC_DEFINE(NEED_XF86_TYPES, 1, [Need XFree86 typedefs]) + AC_DEFINE(NEED_XF86_PROTOTYPES, 1, [Need XFree86 helper functions]) + AC_DEFINE(__XSERVERNAME__, "Xorg", [Name of X server]) +@@ -2291,6 +2297,7 @@ hw/dmx/Makefile + hw/dmx/man/Makefile + hw/vfb/Makefile + hw/vfb/man/Makefile ++hw/vnc/Makefile + hw/xnest/Makefile + hw/xnest/man/Makefile + hw/xwin/Makefile +diff -up xorg-server-20130109/hw/Makefile.am.vnc xorg-server-20130109/hw/Makefile.am +--- xorg-server-20130109/hw/Makefile.am.vnc 2013-01-10 06:06:16.000000000 +0100 ++++ xorg-server-20130109/hw/Makefile.am 2013-01-24 13:08:43.283941751 +0100 +@@ -33,7 +33,8 @@ SUBDIRS = \ + $(XNEST_SUBDIRS) \ + $(DMX_SUBDIRS) \ + $(KDRIVE_SUBDIRS) \ +- $(XQUARTZ_SUBDIRS) ++ $(XQUARTZ_SUBDIRS) \ ++ vnc + + DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive + +diff -up xorg-server-20130109/mi/miinitext.c.vnc xorg-server-20130109/mi/miinitext.c +--- xorg-server-20130109/mi/miinitext.c.vnc 2013-01-10 06:06:16.000000000 +0100 ++++ xorg-server-20130109/mi/miinitext.c 2013-01-24 13:08:43.283941751 +0100 +@@ -112,6 +112,10 @@ SOFTWARE. + #include "micmap.h" + #include "globals.h" + ++#ifdef TIGERVNC ++extern void vncExtensionInit(INITARGS); ++#endif ++ + /* The following is only a small first step towards run-time + * configurable extensions. + */ +@@ -302,6 +306,9 @@ static ExtensionModule staticExtensions[ + #ifdef XSELINUX + {SELinuxExtensionInit, SELINUX_EXTENSION_NAME, &noSELinuxExtension}, + #endif ++#ifdef TIGERVNC ++ {vncExtensionInit, "VNC-EXTENSION", NULL}, ++#endif + }; + + static ExtensionModule *ExtensionModuleList = NULL; |