commit:     ef3dcdab5cfa84b28ac856a34aa202d0f03fd457
Author:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 29 13:03:20 2016 +0000
Commit:     Bernard Cafarelli <voyageur <AT> gentoo <DOT> org>
CommitDate: Mon Feb 29 13:03:53 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef3dcdab

net-misc/x2goserver: use explicitly bash in Xsession, bug #575022

Upstream backport after report by polynomial-c

Package-Manager: portage-2.2.27

 .../x2goserver-4.0.1.19-use_bash_in_Xsession.patch | 26 +++++++
 net-misc/x2goserver/x2goserver-4.0.1.19-r2.ebuild  | 89 ++++++++++++++++++++++
 2 files changed, 115 insertions(+)

diff --git 
a/net-misc/x2goserver/files/x2goserver-4.0.1.19-use_bash_in_Xsession.patch 
b/net-misc/x2goserver/files/x2goserver-4.0.1.19-use_bash_in_Xsession.patch
new file mode 100644
index 0000000..0eab0d3
--- /dev/null
+++ b/net-misc/x2goserver/files/x2goserver-4.0.1.19-use_bash_in_Xsession.patch
@@ -0,0 +1,26 @@
+X-Git-Url: 
http://code.x2go.org/gitweb?p=x2goserver.git;a=blobdiff_plain;f=x2goserver-xsession%2Fetc%2FXsession;h=7ad477ffc439ef0f7f0ccbbee40f55504a8f2dd6;hp=ab32a1062cdbec6b3ccbea29682d240f06046394;hb=7ae2669b596d3b84f0ba09552d5a8c0e653ce86d;hpb=1cc93d59f6bb2559b1c42daba26cf3b9b50f3e69
+
+diff --git a/x2goserver-xsession/etc/Xsession 
b/x2goserver-xsession/etc/Xsession
+index ab32a10..7ad477f 100755
+--- a/x2goserver-xsession/etc/Xsession
++++ b/x2goserver-xsession/etc/Xsession
+@@ -208,16 +208,16 @@ elif [ -f /etc/redhat-release ] || [ -f 
/etc/gentoo-release ] || [ -f /etc/SUSE-
+ 
+       # XCLIENTS_D=/etc/x2go/Xclients.d
+       #if [ -d "$XCLIENTS_D" -a -x "$XCLIENTS_D/Xclients.${XSESSION_EXEC}.sh" 
]; then
+-      #       exec -l $SHELL -c "$CK_XINIT_SESSION $SSH_AGENT 
$XCLIENTS_D/Xclients.$1.sh"
++      #       exec /bin/bash -c "exec -l \"$SHELL\" -c \"$CK_XINIT_SESSION 
$SSH_AGENT $XCLIENTS_D/Xclients.$1.sh\""
+       #fi
+ 
+       # switchdesk support is also totally deprecated in RHEL, but we leave 
it here
+       # as a reminder, as well, in case we need it in the future for special 
setups...
+       #if [ -x "$SWITCHDESKPATH/Xclients.${XSESSION_EXEC}" ]; then
+-      #       exec -l "$SHELL" -c "$SWITCHDESKPATH/Xclients.${XSESSION_EXEC}";
++      #       exec /bin/bash -c "exec -l \"$SHELL\" -c 
\"$SWITCHDESKPATH/Xclients.${XSESSION_EXEC}\""
+       #fi
+ 
+-      exec $CK_XINIT_SESSION $SSH_AGENT /bin/sh -c "exec -l $SHELL -c 
\"$STARTUP\""
++      exec $CK_XINIT_SESSION $SSH_AGENT /bin/bash -c "exec -l \"$SHELL\" -c 
\"$STARTUP\""
+ fi
+ 
+ exit 0

diff --git a/net-misc/x2goserver/x2goserver-4.0.1.19-r2.ebuild 
b/net-misc/x2goserver/x2goserver-4.0.1.19-r2.ebuild
new file mode 100644
index 0000000..83207b6
--- /dev/null
+++ b/net-misc/x2goserver/x2goserver-4.0.1.19-r2.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+inherit multilib systemd toolchain-funcs user
+
+DESCRIPTION="The X2Go server"
+HOMEPAGE="http://www.x2go.org";
+SRC_URI="http://code.x2go.org/releases/source/${PN}/${P}.tar.gz";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+fuse postgres +sqlite"
+
+REQUIRED_USE="|| ( postgres sqlite )"
+
+DEPEND=""
+RDEPEND="dev-perl/Capture-Tiny
+       dev-perl/Config-Simple
+       dev-perl/File-BaseDir
+       dev-perl/File-ReadBackwards
+       dev-perl/File-Which
+       media-fonts/font-cursor-misc
+       media-fonts/font-misc-misc[nls]
+       >=net-misc/nx-3.5.0.25
+       net-misc/openssh
+       >=sys-apps/iproute2-4.3.0
+       x11-apps/xauth
+       x11-apps/xhost
+       x11-apps/xwininfo
+       fuse? ( sys-fs/sshfs-fuse )
+       postgres? ( dev-perl/DBD-Pg )
+       sqlite? ( dev-perl/DBD-SQLite )"
+
+pkg_setup() {
+       # Force the group creation, #479650
+       enewgroup x2gouser
+       enewgroup x2goprint
+       enewuser x2gouser -1 -1 /var/lib/x2go x2gouser
+       enewuser x2goprint -1 -1 /var/spool/x2goprint x2goprint
+}
+
+src_prepare() {
+       # Do not install Xresources symlink (#521126)
+       sed -e '\#$(INSTALL_SYMLINK) /etc/X11/Xresources# s/^/#/' -i 
x2goserver-xsession/Makefile || die "Xresources symlink sed failed"
+       # Multilib clean
+       sed -e "/^LIBDIR=/s/lib/$(get_libdir)/" -i Makefile */Makefile || die 
"multilib sed failed"
+       # Skip man2html build
+       sed -e "s/build-indep: build_man2html/build-indep:/" -i Makefile 
*/Makefile || die "man2html sed failed"
+       # Use nxagent directly
+       sed -i -e "/NX_TEMP=/s/x2goagent/nxagent/" 
x2goserver/bin/x2gostartagent || die "sed failed"
+
+       eapply "${FILESDIR}"/${P}-use_bash_in_Xsession.patch
+       eapply_user
+}
+
+src_compile() {
+       emake CC="$(tc-getCC)" PREFIX=/usr
+}
+
+src_install() {
+       emake DESTDIR="${D}" PREFIX=/usr install
+
+       fowners root:x2goprint /usr/bin/x2goprint
+       fperms 2755 /usr/bin/x2goprint
+       fperms 0750 /etc/sudoers.d
+       fperms 0440 /etc/sudoers.d/x2goserver
+       dosym /usr/share/applications /etc/x2go/applications
+
+       newinitd "${FILESDIR}"/${PN}.init x2gocleansessions
+       systemd_dounit "${FILESDIR}"/x2gocleansessions.service
+}
+
+pkg_postinst() {
+       if use sqlite ; then
+               elog "To use sqlite and create the initial database, run:"
+               elog " # x2godbadmin --createdb"
+       fi
+       if use postgres ; then
+               elog "To use a PostgreSQL databse, more information is availabe 
here:"
+               elog 
"http://www.x2go.org/doku.php/wiki:advanced:multi-node:x2goserver-pgsql";
+       fi
+
+       elog "For password authentication, you need to enable 
PasswordAuthentication"
+       elog "in /etc/ssh/sshd_config (disabled by default in Gentoo)"
+       elog "An init script was installed for x2gocleansessions"
+}

Reply via email to