summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaúl Porcel <armin76@gentoo.org>2009-03-08 15:34:44 +0000
committerRaúl Porcel <armin76@gentoo.org>2009-03-08 15:34:44 +0000
commit5e2f0d2279b69f6dbff6d154f42705cb1a143d9f (patch)
treec3609e8fe4a2543a405b28d11440d2392fbe3d5f /net-misc/tigervnc
parentamd64/x86 stable, bug #256414 (diff)
downloadgentoo-2-5e2f0d2279b69f6dbff6d154f42705cb1a143d9f.tar.gz
gentoo-2-5e2f0d2279b69f6dbff6d154f42705cb1a143d9f.tar.bz2
gentoo-2-5e2f0d2279b69f6dbff6d154f42705cb1a143d9f.zip
Initial commit, ebuild by me
(Portage version: 2.1.6.7/cvs/Linux ia64)
Diffstat (limited to 'net-misc/tigervnc')
-rw-r--r--net-misc/tigervnc/ChangeLog11
-rw-r--r--net-misc/tigervnc/files/tigervnc.confd9
-rw-r--r--net-misc/tigervnc/files/tigervnc.initd57
-rw-r--r--net-misc/tigervnc/files/vncviewer.pngbin0 -> 1048 bytes
-rw-r--r--net-misc/tigervnc/metadata.xml12
-rw-r--r--net-misc/tigervnc/tigervnc-0.0.90_p3631.ebuild184
6 files changed, 273 insertions, 0 deletions
diff --git a/net-misc/tigervnc/ChangeLog b/net-misc/tigervnc/ChangeLog
new file mode 100644
index 000000000000..9c734b38262e
--- /dev/null
+++ b/net-misc/tigervnc/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for net-misc/tigervnc
+# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/ChangeLog,v 1.1 2009/03/08 15:34:44 armin76 Exp $
+
+*tigervnc-0.0.90_p3631 (08 Mar 2009)
+
+ 08 Mar 2009; Raúl Porcel <armin76@gentoo.org> +files/tigervnc.confd,
+ +files/tigervnc.initd, +files/vncviewer.png, +metadata.xml,
+ +tigervnc-0.0.90_p3631.ebuild:
+ Initial commit, ebuild by me
+
diff --git a/net-misc/tigervnc/files/tigervnc.confd b/net-misc/tigervnc/files/tigervnc.confd
new file mode 100644
index 000000000000..e651dbbe7889
--- /dev/null
+++ b/net-misc/tigervnc/files/tigervnc.confd
@@ -0,0 +1,9 @@
+# Config file for /etc/init.d/tigervnc
+
+# Specify the user(s) Xvnc(1) should be run for. The syntax is: "username:display".
+# example: "DISPLAYS="foo:1 bar:2" You can specify more users separated by space.
+# DISPLAYS="myuser:1"
+
+# Specify any of vncserver(1) and Xvnc(1) options. See the respective man pages for more information.
+# VNC_OPTS=""
+
diff --git a/net-misc/tigervnc/files/tigervnc.initd b/net-misc/tigervnc/files/tigervnc.initd
new file mode 100644
index 000000000000..8341a802fe33
--- /dev/null
+++ b/net-misc/tigervnc/files/tigervnc.initd
@@ -0,0 +1,57 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2 or later
+# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/files/tigervnc.initd,v 1.1 2009/03/08 15:34:44 armin76 Exp $
+
+depend() {
+ need net
+}
+
+checkconfig() {
+ if [ -n "${DISPLAYS}" ]; then
+ if [ $1 = "start" ]; then
+ local user
+ for user in $DISPLAYS; do
+ if eval [ ! -f "~${user%%:*}/.vnc/passwd" ]; then
+ eerror "There are no passwords defined for user ${user%%:*}."
+ return 1
+ elif [ -e "/tmp/.X11-unix/X${user##*:}" ]; then
+ eerror "Display :${user##*:} appears to be already in use because of /tmp/.X11-unix/X${user##*:}"
+ eerror "Remove this file if there is no X server $HOSTNAME:${user##*:}"
+ return 1
+ elif [ -e "/tmp/.X${user##*:}-lock" ]; then
+ eerror "Display :${user##*:} appears to be already in use because of /tmp/.X${user##*:}-lock"
+ eerror "Remove this file if there is no X server $HOSTNAME:${user##*:}"
+ return 1
+ fi
+ done
+ fi
+ return 0
+ else
+ eerror 'Please define $DISPLAYS in /etc/conf.d/vnc'
+ return 1
+ fi
+}
+
+start() {
+ checkconfig start || return 1
+ ebegin "Starting TigerVNC server"
+ for user in $DISPLAYS; do
+ su ${user%%:*} -c "cd ~${user%%:*} && vncserver :${user##*:} $VNC_OPTS" &>/dev/null
+ done
+ eend $?
+}
+
+stop() {
+ checkconfig stop || return 2
+ ebegin "Stopping TigerVNC server"
+ for user in $DISPLAYS; do
+ su ${user%%:*} -c "vncserver -kill :${user##*:}" &>/dev/null
+ done
+ eend $?
+}
+
+restart() {
+ svc_stop
+ svc_start
+}
diff --git a/net-misc/tigervnc/files/vncviewer.png b/net-misc/tigervnc/files/vncviewer.png
new file mode 100644
index 000000000000..a52d21a5330c
--- /dev/null
+++ b/net-misc/tigervnc/files/vncviewer.png
Binary files differ
diff --git a/net-misc/tigervnc/metadata.xml b/net-misc/tigervnc/metadata.xml
new file mode 100644
index 000000000000..5c5c7417fbb0
--- /dev/null
+++ b/net-misc/tigervnc/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>no-herd</herd>
+ <maintainer>
+ <email>armin76@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="server">Build TigerVNC server</flag>
+ <flag name="xorgmodule">Build the Xorg module</flag>
+ </use>
+</pkgmetadata>
diff --git a/net-misc/tigervnc/tigervnc-0.0.90_p3631.ebuild b/net-misc/tigervnc/tigervnc-0.0.90_p3631.ebuild
new file mode 100644
index 000000000000..3fdc7740f242
--- /dev/null
+++ b/net-misc/tigervnc/tigervnc-0.0.90_p3631.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/tigervnc/tigervnc-0.0.90_p3631.ebuild,v 1.1 2009/03/08 15:34:44 armin76 Exp $
+
+EAPI="1"
+
+inherit eutils toolchain-funcs multilib autotools
+
+XSERVER_VERSION="1.5.3"
+PATCH="${P/_p*/}-patches-0.1"
+OPENGL_DIR="xorg-x11"
+
+DESCRIPTION="Remote desktop viewer display system"
+HOMEPAGE="http://www.realvnc.com/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+ mirror://gentoo/${PATCH}.tar.bz2
+ server? ( ftp://ftp.freedesktop.org/pub/xorg/individual/xserver/xorg-server-${XSERVER_VERSION}.tar.bz2 )"
+
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="+opengl server +xorgmodule"
+
+RDEPEND="sys-libs/zlib
+ media-libs/freetype
+ x11-libs/libSM
+ x11-libs/libXtst
+ app-admin/eselect-opengl
+ server? (
+ x11-libs/libXi
+ x11-libs/libXfont
+ x11-libs/libXmu
+ x11-libs/libxkbfile
+ x11-libs/libXrender
+ x11-apps/xauth
+ x11-apps/xsetroot
+ media-fonts/font-adobe-100dpi
+ media-fonts/font-adobe-75dpi
+ media-fonts/font-alias
+ media-fonts/font-cursor-misc
+ media-fonts/font-misc-misc
+ xorgmodule? ( ~x11-base/xorg-server-${XSERVER_VERSION} )
+ )
+ !net-misc/vnc
+ !net-misc/tightvnc
+ !net-misc/xf4vnc"
+DEPEND="${RDEPEND}
+ x11-proto/inputproto
+ x11-proto/xextproto
+ server? (
+ x11-proto/bigreqsproto
+ x11-proto/compositeproto
+ x11-proto/damageproto
+ x11-proto/dri2proto
+ x11-proto/fixesproto
+ x11-proto/fontsproto
+ x11-proto/randrproto
+ x11-proto/resourceproto
+ x11-proto/scrnsaverproto
+ x11-proto/trapproto
+ x11-proto/videoproto
+ x11-proto/xcmiscproto
+ x11-proto/xineramaproto
+ x11-proto/xf86bigfontproto
+ x11-proto/xf86dgaproto
+ x11-proto/xf86driproto
+ x11-proto/xf86miscproto
+ x11-proto/xf86vidmodeproto
+ opengl? ( x11-proto/glproto )
+ >=media-libs/mesa-7.1
+ >=x11-proto/renderproto-0.9.3
+ x11-libs/libpciaccess
+ )"
+
+S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ if ! use server ; then
+ echo
+ einfo "The 'server' USE flag will build tigervnc's server."
+ einfo "If '-server' is chosen only the client is built to save space."
+ einfo "Stop the build now if you need to add 'server' to USE flags.\n"
+ ebeep
+ epause 5
+ else
+ ewarn "Forcing on xorg-x11 for new enough glxtokens.h..."
+ OLD_IMPLEM="$(eselect opengl show)"
+ eselect opengl set --impl-headers ${OPENGL_DIR}
+ fi
+}
+
+switch_opengl_implem() {
+ # Switch to the xorg implementation.
+ # Use new opengl-update that will not reset user selected
+ # OpenGL interface ...
+ echo
+ eselect opengl set ${OLD_IMPLEM}
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ if use server ; then
+ cp -r "${WORKDIR}"/xorg-server-${XSERVER_VERSION}/* unix/xserver
+# else
+# rm -f "${WORKDIR}"/patch/*tigervnc-server*
+ fi
+
+ EPATCH_SUFFIX="patch" epatch "${WORKDIR}"/patch
+
+ cd unix
+ eautoreconf
+ if use server ; then
+ epatch xserver15.patch
+ cd xserver
+ eautoreconf
+ fi
+}
+
+src_compile() {
+ cd unix
+ econf || die "econf failed"
+ emake || die "emake failed"
+
+ if use server ; then
+ cd xserver
+ econf \
+ --disable-xorg --disable-xnest --disable-xvfb --disable-dmx \
+ --disable-xwin --disable-xephyr --disable-kdrive --with-pic \
+ --disable-xorgcfg --disable-xprint --disable-static \
+ --disable-composite --disable-xtrap --enable-xcsecurity \
+ --disable-{a,c,m}fb \
+ --with-default-font-path=/usr/share/fonts/misc,/usr/share/fonts/75dpi,/usr/share/fonts/100dpi,/usr/share/fonts/TTF,/usr/share/fonts/Type1 \
+ --enable-install-libxf86config \
+ --disable-xevie \
+ --disable-dri2 \
+ --disable-config-dbus \
+ --disable-config-hal \
+ $(use_enable opengl glx) \
+ || die "econf server failed"
+ emake || die "emake server failed"
+ fi
+}
+
+src_install() {
+ cd unix
+ emake DESTDIR="${D}" install || die "emake install failed"
+ newman vncviewer/vncviewer.man vncviewer.1
+ dodoc README
+
+ doicon "${FILESDIR}"/vncviewer.png
+ make_desktop_entry vncviewer vncviewer vncviewer Network
+
+ if use server ; then
+ dobin vncserver || die "dobin failed"
+ for f in vncviewer/vncviewer vncpasswd/vncpasswd \
+ vncconfig/vncconfig vncserver x0vncserver/x0vncserver; do
+ mv $f.man $f.1
+ doman $f.1
+ done
+ cd xserver/hw/vnc
+ emake DESTDIR="${D}" install || die "emake install failed"
+ ! use xorgmodule && rm -rf "${D}"/usr/$(get_libdir)/xorg
+
+ newman Xvnc.man Xvnc.1
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+
+ rm "${D}"/usr/$(get_libdir)/xorg/modules/extensions/libvnc.la
+ else
+ cd "${D}"
+ rm usr/bin/vncconfig
+ rm usr/bin/vncpasswd
+ rm usr/bin/vncserver
+ rm usr/bin/x0vncserver
+ fi
+}
+
+pkg_postinst() {
+ use server && switch_opengl_implem
+}
+