diff options
author | BlackNoxis <steven.darklight@gmail.com> | 2014-02-15 23:24:26 +0200 |
---|---|---|
committer | BlackNoxis <steven.darklight@gmail.com> | 2014-02-15 23:24:26 +0200 |
commit | 7224c1253228e5c29c78cb3f0f26ce34770f2356 (patch) | |
tree | 1684924656132935256e034f35f92abee6623265 /net-misc/xrdp/xrdp-9999.ebuild |
Added ebuilds for kogaion desktop
Diffstat (limited to 'net-misc/xrdp/xrdp-9999.ebuild')
-rw-r--r-- | net-misc/xrdp/xrdp-9999.ebuild | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/net-misc/xrdp/xrdp-9999.ebuild b/net-misc/xrdp/xrdp-9999.ebuild new file mode 100644 index 00000000..fc3a2cf5 --- /dev/null +++ b/net-misc/xrdp/xrdp-9999.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI="2" + +inherit eutils multilib cvs + +DESCRIPTION="An open source remote desktop protocol(rdp) server." +HOMEPAGE="http://xrdp.sourceforge.net/" +SRC_URI="" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="" +IUSE="" + +DEPEND="sys-libs/pam" +RDEPEND="${DEPEND} + || ( x11-misc/x11vnc net-misc/vnc[server] net-misc/tightvnc )" + +DESTDIR="/usr/$(get_libdir)/${PN}" + +src_unpack() { + ECVS_SERVER="xrdp.cvs.sourceforge.net:/cvsroot/xrdp" + ECVS_USER="anonymous" + ECVS_PASS="" + ECVS_AUTH="pserver" + ECVS_MODULE="xrdp" + ECVS_LOCALNAME="xrdp" + + S="${WORKDIR}/${ECVS_LOCALNAME}" + + cvs_src_unpack + cd "${S}" + + # fix makefile problem in sesrun + epatch "${FILESDIR}/xrdp-9999-002-sesrun-config.patch" + + # fix sandbox security violation issues + epatch "${FILESDIR}/xrdp-9999-001-sandbox-violation.patch" + + # domain as module name non-auto fix, and hidden modules patch + epatch "${FILESDIR}/xrdp-9999-003-domain-as-module-name-noauto-fix-and-hidden-option.patch" + + # ignore client auth when module has preset + # No longer required as it has been merged into CVS HEAD + # xrdp/xrdp/xrdp_wm.c r1.63, Thu May 28 21:01:01 2009 UTC + #epatch "${FILESDIR}/xrdp-9999-004-ignore-client-auth-on-preset.patch" + + autoreconf -fvi + + # fix cflags, broken paths, multilib, and insecure rpath in all makefiles + for MAKE in $(find . -name Makefile) ; do + sed -i "s:CFLAGS = -Wall -O. :CFLAGS += : + s:/usr/xrdp:${DESTDIR}:g + s:/usr/lib/:/usr/$(get_libdir)/:g + s:rpath,\.:rpath,${DESTDIR}:g" ${MAKE} + done + + #sed -i '/instfiles\/xrdp_control1.sh/ d' Makefile +} + +src_configure() { + econf --localstatedir=/var || die "econf failed" +} + +src_compile() { + emake -j1 DESTDIR="${DESTDIR}" || die "emake failed" +} + +src_install() { + emake -j1 DESTDIR="${D}" install || die "emake install failed" + emake -j1 -C sesman/tools DESTDIR="${D}" install || die "emake install failed" + emake -j1 -C sesman/libscp DESTDIR="${D}" install || die "emake install failed" + dodoc design.txt readme.txt sesman/startwm.sh + doman "${D}/usr/share/man/"*/* + keepdir /var/log/${PN} + rm -f "${D}/etc/xrdp/xrdp.sh" "${D}/etc/init.d/xrdp.sh" + cp "${FILESDIR}/startwm.sh" "${D}/etc/xrdp/" + cp -f "${FILESDIR}/xrdp.ini" "${D}/etc/xrdp/" + chmod 755 "${D}/etc/xrdp/startwm.sh" + newinitd "${FILESDIR}/${PN}-initd-cvs" ${PN} + newconfd "${FILESDIR}/${PN}-confd-cvs" ${PN} + sed -i "s:LIBDIR:$(get_libdir):" "${D}/etc/init.d/${PN}" +} + +pkg_postinst() { + # generate a new rsa key if needed + if [ ! -e "/etc/xrdp/rsakeys.ini" ] ; then + elog "Generating xrdp keys..." + xrdp-keygen xrdp /etc/xrdp/rsakeys.ini + fi +} |