summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--x11-apps/xinit/Manifest1
-rw-r--r--x11-apps/xinit/files/0001-Gentoo-customizations.patch61
-rw-r--r--x11-apps/xinit/files/Xsession107
-rw-r--r--[-rwxr-xr-x]x11-apps/xinit/files/chooser.sh1
-rw-r--r--[-rwxr-xr-x]x11-apps/xinit/files/startDM.sh1
-rw-r--r--x11-apps/xinit/files/xinit-1.3.4-startx-current-vt.patch21
-rw-r--r--x11-apps/xinit/files/xinit-1.4.0-startx-current-vt.patch20
-rw-r--r--[-rwxr-xr-x]x11-apps/xinit/files/xserverrc0
-rw-r--r--x11-apps/xinit/xinit-1.4.0-r1.ebuild (renamed from x11-apps/xinit/xinit-1.3.4-r5.ebuild)22
9 files changed, 158 insertions, 76 deletions
diff --git a/x11-apps/xinit/Manifest b/x11-apps/xinit/Manifest
index e9bba13b..c8a83bfc 100644
--- a/x11-apps/xinit/Manifest
+++ b/x11-apps/xinit/Manifest
@@ -1 +1,2 @@
DIST xinit-1.3.4.tar.bz2 165881 BLAKE2B 78e0b9e8fdb146e969014d726ac05e7f4cf14947aa6026642fbbe6a55eb9c5cb891f079281bb40b460f9b1373259e338dcc0615fbdda64da49b719980017b782 SHA512 ac31e4cac86fc5dd4c0e15cf37cb9ac470ef3ace4f86d0063c7e1091342fe64d41fcd12c1840bd8e1cef4cdd7f66bd2fa76bd4061641e9c70941d76d73d0df2e
+DIST xinit-1.4.0.tar.bz2 174491 BLAKE2B 5a613a244a22f3bb4de43ae23b8f590b41a6af2c3adb282d2a089f4b94117220d86654c16cbb20ad0a50b6aab1be65512a7a42850e9047cfca96f25af964d081 SHA512 53a29081130c1e195eb441ee77ccaa044b18b4cca3d2d5da3a6d67aa421dfd9718fa18b6be6232a41e40cf260c8190064c4d8d9ab771177bd5cd12e77a8fa79e
diff --git a/x11-apps/xinit/files/0001-Gentoo-customizations.patch b/x11-apps/xinit/files/0001-Gentoo-customizations.patch
deleted file mode 100644
index a25ef4ba..00000000
--- a/x11-apps/xinit/files/0001-Gentoo-customizations.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From d24cea5021fab8a11b1492a031319939d133d221 Mon Sep 17 00:00:00 2001
-From: Tomas Chvatal <scarabeus@gentoo.org>
-Date: Mon, 1 Nov 2010 16:46:36 +0100
-Subject: [PATCH] Gentoo customizations.
-
-
-Signed-off-by: Tomas Chvatal <scarabeus@gentoo.org>
----
- xinitrc.cpp | 26 ++++++++++++++++++--------
- 1 files changed, 18 insertions(+), 8 deletions(-)
-
-diff --git a/xinitrc.cpp b/xinitrc.cpp
-index 049a8e4..80c3ad9 100644
---- a/xinitrc.cpp
-+++ b/xinitrc.cpp
-@@ -2,8 +2,8 @@ XCOMM!SHELL_CMD
-
- userresources=$HOME/.Xresources
- usermodmap=$HOME/.Xmodmap
--sysresources=XINITDIR/.Xresources
--sysmodmap=XINITDIR/.Xmodmap
-+sysresources=XINITDIR/Xresources
-+sysmodmap=XINITDIR/Xmodmap
-
- XCOMM merge in defaults and keymaps
-
-@@ -84,15 +84,25 @@ fi
- XCOMM This is the fallback case if nothing else is executed above
- #endif /* !defined(__SCO__) && !defined(__UNIXWARE__) */
-
-+if [ -n "`/etc/X11/chooser.sh`" ]; then
-+ command="`/etc/X11/chooser.sh`"
-+else
-+ failsafe="yes"
-+fi
-+
- if [ -d XINITDIR/xinitrc.d ] ; then
-- for f in XINITDIR/xinitrc.dXSLASHGLOB.sh ; do
-+ for f in XINITDIR/xinitrc.dXSLASHGLOB ; do
- [ -x "$f" ] && . "$f"
- done
- unset f
- fi
-
--TWM &
--XCLOCK -geometry 50x50-1+1 &
--XTERM -geometry 80x50+494+51 &
--XTERM -geometry 80x20+494-0 &
--exec XTERM -geometry 80x66+0+0 -name login
-+if [ -n "$failsafe" ]; then
-+ TWM &
-+ XCLOCK -geometry 50x50-1+1 &
-+ XTERM -geometry 80x50+494+51 &
-+ XTERM -geometry 80x20+494-0 &
-+ exec XTERM -geometry 80x66+0+0 -name login
-+else
-+ exec $command
-+fi
---
-1.7.3.1
-
diff --git a/x11-apps/xinit/files/Xsession b/x11-apps/xinit/files/Xsession
new file mode 100644
index 00000000..c86ccee1
--- /dev/null
+++ b/x11-apps/xinit/files/Xsession
@@ -0,0 +1,107 @@
+#!/bin/sh
+# $XConsortium: Xsession /main/10 1995/12/18 18:21:28 gildea $
+
+case $# in
+1)
+ case $1 in
+ failsafe)
+ exec xterm -geometry 80x24-0-0
+ ;;
+ esac
+esac
+
+# redirect errors to a file in user's home directory if we can
+for errfile in "$HOME/.xsession-errors" "${TMPDIR-/tmp}/xses-$USER" "/tmp/xses-$USER"
+do
+ if ( cp /dev/null "$errfile" 2> /dev/null )
+ then
+ chmod 600 "$errfile"
+ exec > "$errfile" 2>&1
+ break
+ fi
+done
+
+# clean up after xbanner
+if which freetemp 2> /dev/null ; then
+ freetemp
+fi
+
+startup=$HOME/.xsession
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+userxkbmap=$HOME/.Xkbmap
+
+sysresources=/etc/X11/Xresources
+sysmodmap=/etc/X11/Xmodmap
+sysxkbmap=/etc/X11/Xkbmap
+
+rh6sysresources=/etc/X11/xinit/Xresources
+rh6sysmodmap=/etc/X11/xinit/Xmodmap
+
+
+# merge in defaults
+if [ -f "$rh6sysresources" ]; then
+ xrdb -merge "$rh6sysresources"
+fi
+
+if [ -f "$sysresources" ]; then
+ xrdb -merge "$sysresources"
+fi
+
+if [ -f "$userresources" ]; then
+ xrdb -merge "$userresources"
+fi
+
+# merge in keymaps
+if [ -f "$sysxkbmap" ]; then
+ setxkbmap `cat "$sysxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+if [ -f "$userxkbmap" ]; then
+ setxkbmap `cat "$userxkbmap"`
+ XKB_IN_USE=yes
+fi
+
+#
+# Eeek, this seems like too much magic here
+#
+if [ -z "$XKB_IN_USE" -a ! -L /etc/X11/X ]; then
+ if grep '^exec.*/Xsun' /etc/X11/X > /dev/null 2>&1 && [ -f /etc/X11/XF86Config ]; then
+ xkbsymbols=`sed -n -e 's/^[ ]*XkbSymbols[ ]*"\(.*\)".*$/\1/p' /etc/X11/XF86Config`
+ if [ -n "$xkbsymbols" ]; then
+ setxkbmap -symbols "$xkbsymbols"
+ XKB_IN_USE=yes
+ fi
+ fi
+fi
+
+# xkb and xmodmap don't play nice together
+if [ -z "$XKB_IN_USE" ]; then
+ if [ -f "$rh6sysmodmap" ]; then
+ xmodmap "$rh6sysmodmap"
+ fi
+
+ if [ -f "$sysmodmap" ]; then
+ xmodmap "$sysmodmap"
+ fi
+
+ if [ -f "$usermodmap" ]; then
+ xmodmap "$usermodmap"
+ fi
+fi
+
+unset XKB_IN_USE
+
+if [ -x "$startup" ]; then
+ exec "$startup"
+elif [ -x "$HOME/.Xclients" ]; then
+ exec "$HOME/.Xclients"
+elif [ -x /etc/X11/xinit/Xclients ]; then
+ exec /etc/X11/xinit/Xclients
+elif [ -x /etc/X11/Xclients ]; then
+ exec /etc/X11/Xclients
+else
+ exec xsm
+fi
diff --git a/x11-apps/xinit/files/chooser.sh b/x11-apps/xinit/files/chooser.sh
index f24be46d..6cfc5742 100755..100644
--- a/x11-apps/xinit/files/chooser.sh
+++ b/x11-apps/xinit/files/chooser.sh
@@ -2,7 +2,6 @@
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2
# Author: Martin Schlemmer <azarah@gentoo.org>
-# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/files/chooser.sh,v 1.5 2009/11/14 14:18:43 scarabeus Exp $
# Find a match for $XSESSION in /etc/X11/Sessions
GENTOO_SESSION=""
diff --git a/x11-apps/xinit/files/startDM.sh b/x11-apps/xinit/files/startDM.sh
index ebb79704..66cceb3a 100755..100644
--- a/x11-apps/xinit/files/startDM.sh
+++ b/x11-apps/xinit/files/startDM.sh
@@ -1,7 +1,6 @@
#!/bin/sh
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2
-# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/files/startDM.sh,v 1.5 2011/01/22 15:35:49 lxnay Exp $
# We need to source /etc/profile for stuff like $LANG to work
# bug #10190.
diff --git a/x11-apps/xinit/files/xinit-1.3.4-startx-current-vt.patch b/x11-apps/xinit/files/xinit-1.3.4-startx-current-vt.patch
new file mode 100644
index 00000000..362b420c
--- /dev/null
+++ b/x11-apps/xinit/files/xinit-1.3.4-startx-current-vt.patch
@@ -0,0 +1,21 @@
+diff -ur a/startx.cpp b/startx.cpp
+--- a/startx.cpp 2014-09-11 19:31:42.000000000 +0200
++++ b/startx.cpp 2015-02-08 19:09:56.416428623 +0100
+@@ -188,17 +188,6 @@
+ if [ x"$server" = x ]; then
+ server=$defaultserver
+
+-#ifdef __linux__
+- XCOMM When starting the defaultserver start X on the current tty to avoid
+- XCOMM the startx session being seen as inactive:
+- XCOMM "https://bugzilla.redhat.com/show_bug.cgi?id=806491"
+- tty=$(tty)
+- if expr match "$tty" '^/dev/tty[0-9]\+$' > /dev/null; then
+- tty_num=$(echo "$tty" | grep -oE '[0-9]+$')
+- vtarg="vt$tty_num"
+- fi
+-#endif
+-
+ XCOMM For compatibility reasons, only use xserverrc if there were no server command line arguments
+ if [ x"$serverargs" = x -a x"$display" = x ]; then
+ if [ -f "$userserverrc" ]; then
diff --git a/x11-apps/xinit/files/xinit-1.4.0-startx-current-vt.patch b/x11-apps/xinit/files/xinit-1.4.0-startx-current-vt.patch
new file mode 100644
index 00000000..ecddd3b3
--- /dev/null
+++ b/x11-apps/xinit/files/xinit-1.4.0-startx-current-vt.patch
@@ -0,0 +1,20 @@
+--- a/startx.cpp
++++ b/startx.cpp
+@@ -200,17 +200,6 @@ XCOMM process server arguments
+ if [ x"$server" = x ]; then
+ server=$defaultserver
+
+-#ifdef __linux__
+- XCOMM When starting the defaultserver start X on the current tty to avoid
+- XCOMM the startx session being seen as inactive:
+- XCOMM "https://bugzilla.redhat.com/show_bug.cgi?id=806491"
+- tty=$(tty)
+- if expr "$tty" : '/dev/tty[0-9][0-9]*$' > /dev/null; then
+- tty_num=$(echo "$tty" | grep -oE '[0-9]+$')
+- vtarg="vt$tty_num -keeptty"
+- fi
+-#endif
+-
+ XCOMM For compatibility reasons, only use xserverrc if there were no server command line arguments
+ if [ x"$serverargs" = x -a x"$display" = x ]; then
+ if [ -f "$userserverrc" ]; then
diff --git a/x11-apps/xinit/files/xserverrc b/x11-apps/xinit/files/xserverrc
index b4de2528..b4de2528 100755..100644
--- a/x11-apps/xinit/files/xserverrc
+++ b/x11-apps/xinit/files/xserverrc
diff --git a/x11-apps/xinit/xinit-1.3.4-r5.ebuild b/x11-apps/xinit/xinit-1.4.0-r1.ebuild
index 02feb2d5..8bec55a2 100644
--- a/x11-apps/xinit/xinit-1.3.4-r5.ebuild
+++ b/x11-apps/xinit/xinit-1.4.0-r1.ebuild
@@ -1,6 +1,5 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/xinit-1.3.3.ebuild,v 1.10 2013/10/08 05:03:50 ago Exp $
EAPI=5
@@ -9,7 +8,7 @@ inherit xorg-2
DESCRIPTION="X Window System initializer"
LICENSE="${LICENSE} GPL-2"
-KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux"
+KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~arm-linux ~x86-linux"
IUSE="+minimal"
RDEPEND="
@@ -27,19 +26,15 @@ PDEPEND="x11-apps/xrdb
)
"
-# if a user uses startx to start the session, but then exits it from DE
-# X server doesnt catch session termination and remove the authfile
-# because of this tens of .serverauthfile files can be found in $HOME
-# this patch makes X to use .Xauthority as authfile, as it should be
-
PATCHES=(
"${FILESDIR}/${PN}-1.3.3-gentoo-customizations.patch"
- "${FILESDIR}/use_xauthority_as_xserverauthfile.patch"
+ "${FILESDIR}/${PN}-1.4.0-startx-current-vt.patch"
+ "${FILESDIR}/use_xauthority_as_xserverauthfile.patch"
)
src_configure() {
XORG_CONFIGURE_OPTIONS=(
- --with-xinitdir=/etc/X11/xinit
+ --with-xinitdir="${EPREFIX}"/etc/X11/xinit
)
xorg-2_src_configure
}
@@ -49,11 +44,12 @@ src_install() {
exeinto /etc/X11
doexe "${FILESDIR}"/chooser.sh "${FILESDIR}"/startDM.sh
+ exeinto /etc/X11/Sessions
+ doexe "${FILESDIR}"/Xsession
exeinto /etc/X11/xinit
- doexe "${FILESDIR}"/xserverrc
+ newexe "${FILESDIR}"/xserverrc.1 xserverrc
exeinto /etc/X11/xinit/xinitrc.d/
- doexe "${FILESDIR}/00-xhost"
-
+ doexe "${FILESDIR}"/00-xhost
}
pkg_postinst() {