diff options
author | 2014-10-23 08:19:10 +0000 | |
---|---|---|
committer | 2014-10-23 08:19:10 +0000 | |
commit | 5c3621f04f5013688b9f9336ecad68ab4d287db5 (patch) | |
tree | e82403108814116812b35fc0fc4951f8105bc619 /net-misc | |
parent | adding as maintainer for now (diff) | |
download | gentoo-2-5c3621f04f5013688b9f9336ecad68ab4d287db5.tar.gz gentoo-2-5c3621f04f5013688b9f9336ecad68ab4d287db5.tar.bz2 gentoo-2-5c3621f04f5013688b9f9336ecad68ab4d287db5.zip |
Initial commit of net-misc/xrdp, bug #352363.
(Portage version: 2.2.14_rc1/cvs/Linux x86_64, signed Manifest commit with key EFB4464E!)
Diffstat (limited to 'net-misc')
-rw-r--r-- | net-misc/xrdp/ChangeLog | 11 | ||||
-rw-r--r-- | net-misc/xrdp/files/startwm.sh | 8 | ||||
-rw-r--r-- | net-misc/xrdp/files/xrdp-initd | 28 | ||||
-rw-r--r-- | net-misc/xrdp/files/xrdp-sesman.pamd | 4 | ||||
-rw-r--r-- | net-misc/xrdp/metadata.xml | 11 | ||||
-rw-r--r-- | net-misc/xrdp/xrdp-0.6.1.ebuild | 91 | ||||
-rw-r--r-- | net-misc/xrdp/xrdp-0.8.0.ebuild | 124 |
7 files changed, 277 insertions, 0 deletions
diff --git a/net-misc/xrdp/ChangeLog b/net-misc/xrdp/ChangeLog new file mode 100644 index 000000000000..218992d81df4 --- /dev/null +++ b/net-misc/xrdp/ChangeLog @@ -0,0 +1,11 @@ +# ChangeLog for net-misc/xrdp +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/xrdp/ChangeLog,v 1.9 2014/10/23 08:19:10 mgorny Exp $ + +*xrdp-0.8.0 (23 Oct 2014) +*xrdp-0.6.1 (23 Oct 2014) + + 23 Oct 2014; Michał Górny <mgorny@gentoo.org> +files/startwm.sh, + +files/xrdp-initd, +files/xrdp-sesman.pamd, +metadata.xml, +xrdp-0.6.1.ebuild, + +xrdp-0.8.0.ebuild: + Initial commit of net-misc/xrdp, bug #352363. diff --git a/net-misc/xrdp/files/startwm.sh b/net-misc/xrdp/files/startwm.sh new file mode 100644 index 000000000000..df3dd787f2b5 --- /dev/null +++ b/net-misc/xrdp/files/startwm.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +# try hard to respect Gentoo's wm choice +. /etc/profile +[ -f /etc/rc.conf ] && . /etc/rc.conf +export XSESSION + +. /etc/X11/xinit/xinitrc diff --git a/net-misc/xrdp/files/xrdp-initd b/net-misc/xrdp/files/xrdp-initd new file mode 100644 index 000000000000..a6fbce01896b --- /dev/null +++ b/net-misc/xrdp/files/xrdp-initd @@ -0,0 +1,28 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/xrdp/files/xrdp-initd,v 1.3 2014/10/23 08:19:10 mgorny Exp $ + +depend() { + use net logger +} + +start() { + ebegin "Starting X remote desktop daemon" + start-stop-daemon --start --pidfile /var/run/xrdp.pid --exec /usr/bin/xrdp > /dev/null + eend $? || return $? + + ebegin "Starting remote desktop session manager" + start-stop-daemon --start --pidfile /var/run/xrdp-sesman.pid --exec /usr/bin/xrdp-sesman > /dev/null + eend $? +} + +stop() { + ebegin "Stopping X remote desktop daemon" + start-stop-daemon --stop --pidfile /var/run/xrdp.pid + eend $? + + ebegin "Stopping remote desktop session manager" + start-stop-daemon --stop --pidfile /var/run/xrdp-sesman.pid + eend $? +} diff --git a/net-misc/xrdp/files/xrdp-sesman.pamd b/net-misc/xrdp/files/xrdp-sesman.pamd new file mode 100644 index 000000000000..4712aa8aec0d --- /dev/null +++ b/net-misc/xrdp/files/xrdp-sesman.pamd @@ -0,0 +1,4 @@ +auth include system-remote-login +account include system-remote-login +password include system-remote-login +session include system-remote-login diff --git a/net-misc/xrdp/metadata.xml b/net-misc/xrdp/metadata.xml new file mode 100644 index 000000000000..7ad52bdd6edd --- /dev/null +++ b/net-misc/xrdp/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>mgorny@gentoo.org</email> + <name>Michał Górny</name> + </maintainer> + <use> + <flag name='fuse'>Enable clipboard file / device redirection via <pkg>sys-fs/fuse</pkg></flag> + </use> +</pkgmetadata> diff --git a/net-misc/xrdp/xrdp-0.6.1.ebuild b/net-misc/xrdp/xrdp-0.6.1.ebuild new file mode 100644 index 000000000000..2a4aea071f63 --- /dev/null +++ b/net-misc/xrdp/xrdp-0.6.1.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/xrdp/xrdp-0.6.1.ebuild,v 1.1 2014/10/23 08:19:10 mgorny Exp $ + +EAPI=5 + +inherit autotools eutils pam systemd + +MY_P="${PN}-v${PV}" + +DESCRIPTION="An open source Remote Desktop Protocol server" +HOMEPAGE="http://www.xrdp.org/" +SRC_URI="mirror://sourceforge/${PN}/${PV}/${MY_P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug kerberos pam" + +RDEPEND="dev-libs/openssl:0= + x11-libs/libX11:0= + x11-libs/libXfixes:0= + kerberos? ( virtual/krb5:0= ) + pam? ( virtual/pam:0= )" + +S=${WORKDIR}/${MY_P} + +src_prepare() { + epatch_user + + # disallow root login by default + sed -i -e '/^AllowRootLogin/s/1/0/' sesman/sesman.ini || die + + eautoreconf + # part of ./bootstrap + ln -s ../config.c sesman/tools/config.c || die +} + +src_configure() { + use kerberos && use pam \ + && ewarn "Both kerberos & pam auth enabled, kerberos will take precedence." + + local myconf=( + # configure.ac is completed flawed + + # -- authentication backends -- + # kerberos is inside !SESMAN_NOPAM conditional for no reason + $(use pam || use kerberos || echo --enable-nopam) + $(usex kerberos --enable-kerberos '') + # pam_userpass is not in Gentoo at the moment + #--disable-pamuserpass + + # -- others -- + $(usex debug --enable-xrdpdebug '') + + # --enable-freerdp1 does not work with 1.1 in gentoo + ) + + econf "${myconf[@]}" +} + +src_install() { + default + prune_libtool_files --all + + # use our pam.d file + use pam && newpamd "${FILESDIR}"/xrdp-sesman.pamd xrdp-sesman + # and our startwm.sh + exeinto /etc/xrdp + doexe "${FILESDIR}"/startwm.sh + + # package empty /etc/xrdp/rsakeys.ini rather than bundled keys :) + : > rsakeys.ini + insinto /etc/xrdp + doins rsakeys.ini + + # contributed by Jan Psota <jasiupsota@gmail.com> + newinitd "${FILESDIR}/${PN}-initd" ${PN} +} + +pkg_preinst() { + # either copy existing keys over to avoid CONFIG_PROTECT whining + # or generate new keys (but don't include them in binpkg!) + if [[ -f ${EROOT}/etc/xrdp/rsakeys.ini ]]; then + cp {"${EROOT}","${ED}"}/etc/xrdp/rsakeys.ini || die + else + einfo "Running xrdp-keygen to generate new rsakeys.ini ..." + "${S}"/keygen/xrdp-keygen xrdp "${ED}"/etc/xrdp/rsakeys.ini \ + || die "xrdp-keygen failed to generate RSA keys" + fi +} diff --git a/net-misc/xrdp/xrdp-0.8.0.ebuild b/net-misc/xrdp/xrdp-0.8.0.ebuild new file mode 100644 index 000000000000..9ebcc74a70ba --- /dev/null +++ b/net-misc/xrdp/xrdp-0.8.0.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-misc/xrdp/xrdp-0.8.0.ebuild,v 1.1 2014/10/23 08:19:10 mgorny Exp $ + +EAPI=5 + +inherit autotools eutils pam systemd + +DESCRIPTION="An open source Remote Desktop Protocol server" +HOMEPAGE="http://www.xrdp.org/" +# mirrored from https://github.com/neutrinolabs/xrdp/releases +SRC_URI="http://dev.gentoo.org/~mgorny/dist/${P}.tar.xz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug fuse kerberos jpeg pam pulseaudio" + +RDEPEND="dev-libs/openssl:0= + x11-libs/libX11:0= + x11-libs/libXfixes:0= + x11-libs/libXrandr:0= + fuse? ( sys-fs/fuse:0= ) + jpeg? ( virtual/jpeg:0= ) + kerberos? ( virtual/krb5:0= ) + pam? ( virtual/pam:0= ) + pulseaudio? ( media-sound/pulseaudio:0= )" +DEPEND="app-arch/xz-utils" + +# does not work with gentoo version of freerdp +# neutrinordp? ( net-misc/freerdp:0= ) +# incompatible with current ffmpeg/libav (surprising, isn't it?) +# xrdpvr? ( virtual/ffmpeg:0= ) + +src_prepare() { + epatch_user + + # don't let USE=debug adjust CFLAGS + sed -i -e 's:-g -O0::' configure.ac || die + # disallow root login by default + sed -i -e '/^AllowRootLogin/s/1/0/' sesman/sesman.ini || die + # Fedora files, not included here + sed -i -e '/EnvironmentFile=/d' instfiles/*.service || die + # reorder so that X11rdp comes last again since it's not supported + sed -i -e '/^\[xrdp1\]$/,/^$/{wxrdp.ini.tmp + ;d}' xrdp/xrdp.ini || die + # move newline to the beginning + sed -i -e 'x' xrdp.ini.tmp || die + cat xrdp.ini.tmp >> xrdp/xrdp.ini || die + rm -f xrdp.ini.tmp || die + + eautoreconf + # part of ./bootstrap + ln -s ../config.c sesman/tools/config.c || die +} + +src_configure() { + use kerberos && use pam \ + && ewarn "Both kerberos & pam auth enabled, kerberos will take precedence." + + local myconf=( + # configure.ac is completed flawed + + # -- authentication backends -- + # kerberos is inside !SESMAN_NOPAM conditional for no reason + $(use pam || use kerberos || echo --enable-nopam) + $(usex kerberos --enable-kerberos '') + # pam_userpass is not in Gentoo at the moment + #--disable-pamuserpass + + # -- jpeg support -- + $(usex jpeg --enable-jpeg '') + # the package supports explicit linking against libjpeg-turbo + # (no need for -ljpeg compat) + $(use jpeg && has_version 'media-libs/libjpeg-turbo:0' && echo --enable-tjpeg) + + # -- sound support -- + $(usex pulseaudio '--enable-simplesound --enable-loadpulsemodules' '') + + # -- others -- + $(usex debug --enable-xrdpdebug '') + $(usex fuse --enable-fuse '') + # $(usex neutrinordp --enable-neutrinordp '') + # $(usex xrdpvr --enable-xrdpvr '') + + "$(systemd_with_unitdir)" + ) + + econf "${myconf[@]}" +} + +src_install() { + default + prune_libtool_files --all + + # use our pam.d file since upstream's incompatible with Gentoo + use pam && newpamd "${FILESDIR}"/xrdp-sesman.pamd xrdp-sesman + # and our startwm.sh + exeinto /etc/xrdp + doexe "${FILESDIR}"/startwm.sh + + # Fedora stuff + rm -r "${ED}"/etc/default || die + + # own /etc/xrdp/rsakeys.ini + : > rsakeys.ini + insinto /etc/xrdp + doins rsakeys.ini + + # contributed by Jan Psota <jasiupsota@gmail.com> + newinitd "${FILESDIR}/${PN}-initd" ${PN} +} + +pkg_preinst() { + # either copy existing keys over to avoid CONFIG_PROTECT whining + # or generate new keys (but don't include them in binpkg!) + if [[ -f ${EROOT}/etc/xrdp/rsakeys.ini ]]; then + cp {"${EROOT}","${ED}"}/etc/xrdp/rsakeys.ini || die + else + einfo "Running xrdp-keygen to generate new rsakeys.ini ..." + "${S}"/keygen/xrdp-keygen xrdp "${ED}"/etc/xrdp/rsakeys.ini \ + || die "xrdp-keygen failed to generate RSA keys" + fi +} |