summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2016-02-29 14:03:20 +0100
committerBernard Cafarelli <voyageur@gentoo.org>2016-02-29 14:03:53 +0100
commitef3dcdab5cfa84b28ac856a34aa202d0f03fd457 (patch)
tree7f730e6fb2fd204df69630e72099f2f03d8f46e2 /net-misc/x2goserver
parentapp-office/libreoffice-bin: Require at least GCC 4.9, bug 573962 (diff)
downloadgentoo-ef3dcdab5cfa84b28ac856a34aa202d0f03fd457.tar.gz
gentoo-ef3dcdab5cfa84b28ac856a34aa202d0f03fd457.tar.bz2
gentoo-ef3dcdab5cfa84b28ac856a34aa202d0f03fd457.zip
net-misc/x2goserver: use explicitly bash in Xsession, bug #575022
Upstream backport after report by polynomial-c Package-Manager: portage-2.2.27
Diffstat (limited to 'net-misc/x2goserver')
-rw-r--r--net-misc/x2goserver/files/x2goserver-4.0.1.19-use_bash_in_Xsession.patch26
-rw-r--r--net-misc/x2goserver/x2goserver-4.0.1.19-r2.ebuild89
2 files changed, 115 insertions, 0 deletions
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 00000000000..0eab0d391b6
--- /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 00000000000..83207b66767
--- /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"
+}