summaryrefslogtreecommitdiffstats
path: root/abs/extra/tigervnc/PKGBUILD
blob: db327efb8ba65e37c7de840b69942395dfe9ea02 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Uroš Vampl <mobile.leecher at gmail dot com>

pkgname=tigervnc
pkgver=1.6.0
pkgrel=2
_xorgver=1.18.0
pkgdesc="Suite of VNC servers and clients. Based on the VNC 4 branch of TightVNC."
arch=('i686' 'x86_64')
url="http://www.tigervnc.org"
license=('GPL')
depends=('fltk' 'pam' 'gnutls' 'libjpeg-turbo' 'libxtst' 'libxfont' 'pixman'
	 'xorg-xauth' 'xorg-xsetroot' 'xkeyboard-config' 'xorg-xkbcomp'
	 'libgl' 'libgcrypt' 'perl' 'libxdamage')
makedepends=('cmake' 'nasm' 'xorg-font-util' 'xorg-util-macros' 'bigreqsproto'
	     'compositeproto' 'damageproto' 'randrproto' 'resourceproto'
	     'scrnsaverproto' 'videoproto' 'xcmiscproto' 'xf86vidmodeproto'
	     'xtrans' 'glproto' 'dri2proto' 'dri3proto' 'presentproto'
	     'mesa' 'imagemagick')
optdepends=('mesa: for OpenGL functionality in Xvnc')
conflicts=('tightvnc')
install=tiger.install
source=($pkgname-$pkgver.tar.gz::https://github.com/TigerVNC/tigervnc/archive/v${pkgver}.tar.gz
	ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${_xorgver}.tar.bz2
	vncserver.service
	vncviewer.desktop
    vncsvc.rules
	gethomedir.patch
	xorg118.patch)

prepare() {
  cd ${srcdir}/${pkgname}-${pkgver}

  patch -Np1 -i ${srcdir}/xorg118.patch
  patch -Np1 -i ${srcdir}/gethomedir.patch
  sed -i 's/iconic/nowin/' unix/vncserver

  cd unix/xserver
  cp -r ${srcdir}/xorg-server-${_xorgver}/* .
  patch -Np1 -i ../xserver117.patch
}

build() {
  cd ${srcdir}/${pkgname}-${pkgver}

  cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr
  make

  cd unix/xserver
  autoreconf -fiv
  ./configure --prefix=/usr \
	--disable-static --without-dtrace \
	--disable-xorg --disable-xnest --disable-xvfb --disable-dmx \
	--disable-xwin --disable-xephyr --disable-kdrive --disable-xwayland \
	--disable-config-hal --disable-config-udev --with-pic \
	--disable-unit-tests --disable-devel-docs --disable-selective-werror \
	--disable-dri --enable-dri2 --enable-dri3 --enable-glx --enable-glx-tls
  make
}

package() {
  cd ${srcdir}/${pkgname}-${pkgver}
  make DESTDIR=${pkgdir} install
  cd unix/xserver/hw/vnc
  make DESTDIR=${pkgdir} install
  install -Dm0644 ${srcdir}/${pkgname}-${pkgver}/contrib/systemd/user/vncserver@.service \
    $pkgdir/usr/lib/systemd/user/vncserver@.service
  install -Dm0644 $srcdir/vncserver.service $pkgdir/usr/lib/systemd/system/vncserver.service
  install -Dm0644 $srcdir/vncviewer.desktop $pkgdir/usr/share/applications/vncviewer.desktop

  #LinHES sudo rules
  mkdir -p $pkgdir/etc/sudoers.d/
  chmod 750 $pkgdir/etc/sudoers.d/
  chown -R root:root $pkgdir/etc/sudoers.d
  install -o root -g root -m 0750 $srcdir/vncsvc.rules $pkgdir/etc/sudoers.d/vncsvc-tigervnc
}
md5sums=('78b736445781d86c48e942465a391ccc'
         '3c1c1057d3ad27380d8dd87ffcc182cd'
         '1aad8f06504b3e29a24ccfbaab617973'
         'b200d83c60e80c6f9693ea19a2d9f5b0'
         'f333a228ddbefffc6ce945754bc9c5c5'
         '22f1523a0eca56ad79cfabd0db6e2cf6'
         '2fd32181679077eb7f7ca06cf25f443f')