Fixed snapshot SRC_URI and added xdm init script.
authorJoshua Baergen <joshuabaergen@gentoo.org>
Tue, 6 Sep 2005 19:33:51 +0000 (19:33 +0000)
committerJoshua Baergen <joshuabaergen@gentoo.org>
Tue, 6 Sep 2005 19:33:51 +0000 (19:33 +0000)
Package-Manager: portage-2.0.51.22-r2

x11-apps/xdm/Manifest
x11-apps/xinit/ChangeLog
x11-apps/xinit/files/digest-xinit-0.99.1_pre20050905-r1 [new file with mode: 0644]
x11-apps/xinit/files/xdm.start [new file with mode: 0755]
x11-apps/xinit/xinit-0.99.1_pre20050905-r1.ebuild [new file with mode: 0644]

index 665f7e57304552b690cd48778ac3b950b93cffa5..de91ab60c7cb9ffe996962c6086858a2bf1b63c1 100644 (file)
@@ -1,8 +1,10 @@
-MD5 c9b7abcab15b3adab9acfb6ef2df8837 ChangeLog 1982
+MD5 8ce65951d97aa795bb388f663c6f3738 ChangeLog 2243
 MD5 3697f66bdc1dcb15452af130e67c021d xdm-0.99.0-r2.ebuild 875
 MD5 a394318f9dab7f9842408a624e0f04f9 xdm-0.99.1_pre20050905.ebuild 1003
+MD5 3ffbef09e8fd51ee1bccafea10652025 xdm-0.99.1_pre20050905-r1.ebuild 1103
 MD5 c6dd3e9a9e557b9cba51ff77cb6108a4 files/Xsession 1521
 MD5 d73361c3f6f0e02b6250ec10fc75339b files/digest-xdm-0.99.0-r2 63
 MD5 4a17967449d093f6430fbee47a24afba files/xdm.pamd 169
 MD5 584252c9909d51023ea18799151cf12e files/xdm.start 3415
 MD5 d9fffaee0823717bfcbd1a092eea8947 files/digest-xdm-0.99.1_pre20050905 75
+MD5 d9fffaee0823717bfcbd1a092eea8947 files/digest-xdm-0.99.1_pre20050905-r1 75
index 559c1806b5ef3082d6eff44ed52a08c67d5d3d4c..d2540e07ef64ff77126c4c0ce70bba798d68517d 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for x11-apps/xinit
 # Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/ChangeLog,v 1.11 2005/09/06 16:01:01 joshuabaergen Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/ChangeLog,v 1.12 2005/09/06 19:33:51 joshuabaergen Exp $
+
+*xinit-0.99.1_pre20050905-r1 (06 Sep 2005)
+
+  06 Sep 2005; Joshua Baergen <joshuabaergen@gentoo.org> +files/xdm.start,
+  +xinit-0.99.1_pre20050905-r1.ebuild:
+  Fixed snapshot SRC_URI and added xdm init script.
 
 *xinit-0.99.1_pre20050905 (06 Sep 2005)
 
diff --git a/x11-apps/xinit/files/digest-xinit-0.99.1_pre20050905-r1 b/x11-apps/xinit/files/digest-xinit-0.99.1_pre20050905-r1
new file mode 100644 (file)
index 0000000..0cff338
--- /dev/null
@@ -0,0 +1 @@
+MD5 820b78198ac1c9c554870e7322e3ba7a xinit-0.99.1_pre20050905.tar.bz2 91623
diff --git a/x11-apps/xinit/files/xdm.start b/x11-apps/xinit/files/xdm.start
new file mode 100755 (executable)
index 0000000..fe4b191
--- /dev/null
@@ -0,0 +1,147 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License, v2
+# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/files/xdm.start,v 1.1 2005/09/06 19:33:51 joshuabaergen Exp $
+
+# This is here to serve as a note to myself, and future developers.
+#
+# Any Display manager (gdm,kdm,xdm) have the following problem:  if
+# it is started before any getty, and no vt is specified, it will
+# usually run on vt2.  When the getty on vt2 then starts, and the
+# DM is already started, the getty will take control of the keyboard,
+# leaving us with a "dead" keyboard.
+#
+# Resolution: add the following line to /etc/inittab
+#
+#  x:a:once:/etc/X11/startDM.sh
+#
+# and have /etc/X11/startDM.sh start the DM in daemon mode if
+# a lock is present (with the info of what DM should be started),
+# else just fall through.
+#
+# How this basically works, is the "a" runlevel is a additional
+# runlevel that you can use to fork processes with init, but the
+# runlevel never gets changed to this runlevel.  Along with the "a"
+# runlevel, the "once" key word means that startDM.sh will only be
+# run when we specify it to run, thus eliminating respawning
+# startDM.sh when "xdm" is not added to the default runlevel, as was
+# done previously.
+#
+# This script then just calls "telinit a", and init will run
+# /etc/X11/startDM.sh after the current runlevel completes (this
+# script should only be added to the actual runlevel the user is
+# using).
+#
+# Martin Schlemmer
+# aka Azarah
+# 04 March 2002
+
+
+# Start X Font Server before X
+depend() {
+       use xfs hotplug
+}
+
+setup_dm() {
+       source /etc/profile.env
+       export PATH="/bin:/sbin:/usr/bin:/usr/sbin:${ROOTPATH}"
+
+       local MY_XDM="$(echo ${DISPLAYMANAGER} | awk '{ print tolower($1) }')"
+       case "${MY_XDM}" in
+               kdm|kde|kde2|kde3)
+                       EXE="$(which kdm)"
+                       ;;
+               entrance*)
+                       EXE="$(which entranced)"
+                       ;;
+               gdm|gnome)
+                       EXE=/usr/bin/gdm
+                       ;;
+               wdm)
+                       EXE=/usr/bin/wdm
+                       ;;
+               *)
+                       EXE=
+                       # Fix #65586, where MY_XDM is empty so EXE=somedir
+                       [ -x "/usr/bin/${MY_XDM}" -a -f "/usr/bin/${MY_XDM}" ] \
+                               && EXE="/usr/bin/${MY_XDM}"
+                       [ -z "${EXE}" ] && EXE="/usr/bin/xdm"
+                       ;;
+       esac
+
+       test ! -x "${EXE}" && EXE=/usr/bin/xdm
+
+       SERVICE="${EXE##*/}"
+}
+
+cmdline_opt() {
+       if [[ "$#" -ne 1 ]]; then
+               return 1
+       fi
+
+       for opt in $(</proc/cmdline); do
+               case ${opt} in
+                       ${1}) eval ${1}="true" ;;
+               esac
+       done
+}
+
+nox() {
+       # Don't start X if we were passed 'nox' at boot (#83680)
+       cmdline_opt nox
+
+       if [[ "$?" -ne 0 ]]; then
+               return 1
+       fi
+
+       if [[ -n "${nox}" ]]; then
+               return 0
+       else
+               return 1
+       fi
+}
+
+start() {
+       setup_dm
+       
+       if nox; then
+               einfo "Skipping ${EXE}, received 'nox'"
+       else
+               ebegin "Setting up ${SERVICE}"
+               #save the prefered DM
+               save_options "service" "${EXE}"
+               #tell init to run /etc/X11/startDM.sh after current
+               #runlevel is finished (should *not* be in the "boot"
+               #                      runlevel).
+               /sbin/telinit a &>/dev/null
+               eend 0
+       fi
+
+}
+
+stop() {
+       local retval=0
+       local curvt="$(fgconsole)"
+       local myexe="$(get_options "service")"
+       local myservice="${myexe##*/}"
+       
+       ebegin "Stopping ${myservice}"
+       rm -f ${svcdir}/options/xdm/service
+       
+       if [ "$(ps -A | grep -e "${myservice}")" ]
+       then
+               start-stop-daemon --stop --quiet \
+                       --exec ${myexe} &>/dev/null
+               
+               retval=$?
+       fi
+       
+       #switch back to original vt
+       chvt "${curvt}" &>/dev/null
+       eend ${retval} "Error stopping ${myservice}."
+       
+       return ${retval}
+}
+
+
+# vim:ts=4
diff --git a/x11-apps/xinit/xinit-0.99.1_pre20050905-r1.ebuild b/x11-apps/xinit/xinit-0.99.1_pre20050905-r1.ebuild
new file mode 100644 (file)
index 0000000..9a6d9ac
--- /dev/null
@@ -0,0 +1,45 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-apps/xinit/xinit-0.99.1_pre20050905-r1.ebuild,v 1.1 2005/09/06 19:33:51 joshuabaergen Exp $
+
+inherit versionator
+
+# Must be before x-modular eclass is inherited
+SNAPSHOT="yes"
+
+# Fix ${S} in x-modular for pre ebuilds
+MY_P="${PN}-$(get_version_component_range 1-3)"
+S="${WORKDIR}/${MY_P}"
+
+inherit x-modular
+
+DESCRIPTION="X.Org xinit application"
+KEYWORDS="~amd64 ~arm ~s390 ~sh ~sparc ~x86"
+RDEPEND="x11-libs/libX11"
+DEPEND="${RDEPEND}"
+
+# Snapshots don't reside on fdo servers
+SRC_URI="mirror://gentoo/${P}.tar.bz2"
+
+PATCHES="${FILESDIR}/nolisten-tcp-and-black-background.patch
+       ${FILESDIR}/gentoo-startx-customization.patch"
+
+src_unpack() {
+       x-modular_unpack_source
+       x-modular_patch_source
+
+       sed -i -e "s:^XINITDIR.*:XINITDIR = \$(sysconfdir)/X11/xinit:g" ${S}/Makefile.am
+
+       x-modular_reconf_source
+}
+
+src_install() {
+       x-modular_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}/xinitrc
+       newinitd ${FILESDIR}/xdm.start xdm
+}