ALT Linux Community general discussions
 help / color / mirror / Atom feed
From: Michael Shigorin <mike@osdn.org.ua>
To: community@altlinux.ru
Subject: [Comm] Re: Starting X from .bash_profile failed
Date: Wed, 19 Feb 2003 03:12:03 +0200
Message-ID: <20030219011202.GX75596@osdn.org.ua> (raw)
In-Reply-To: <3E5227CB.7060000@rambler.ru>


[-- Attachment #1.1: Type: text/plain, Size: 435 bytes --]

On Tue, Feb 18, 2003 at 03:32:11PM +0300, Yury Aliaev wrote:
> Ситуация следующая: для некоторых пользователей я хочу устроить запуск 
> иксов автоматом после входа в систему, для чего прописал им startx в 
> .bash_profile.

при этом на :0 уже больается kdm? :)

вписывайте нечто вида startx -- :1 ( :2, ... ) или см. аттач.

-- 
 ---- WBR, Michael Shigorin <mike@altlinux.ru>
  ------ Linux.Kiev http://www.linux.kiev.ua/

[-- Attachment #1.2: startx --]
[-- Type: text/plain, Size: 2069 bytes --]

#!/bin/sh
#
# (c) 1999 Red Hat Software, Inc.
# patched by Michael Shigorin <mike@lic145.kiev.ua>
# to open new displays automagically

bindir=/usr/X11R6/bin

userclientrc=$HOME/.xinitrc
userserverrc=$HOME/.xserverrc
sysclientrc=/etc/X11/xinit/xinitrc
sysserverrc=/etc/X11/xinit/xserverrc
clientargs=""
#serverargs=" -quiet "
serverargs=""

TMPDIR=${TMPDIR:-/tmp}

if [ -f $userclientrc ]; then
    clientargs=$userclientrc
else if [ -f $sysclientrc ]; then
    clientargs=$sysclientrc
  fi
fi

if [ -f $userserverrc ]; then
    serverargs=$userserverrc
else if [ -f $sysserverrc ]; then
    serverargs=$sysserverrc
  fi
fi

# select next free display...
if [ -n "`ls /tmp/.X*-lock 2>/dev/null`" ]; then
	display=:$[1+0$(ls /tmp/.X*-lock | tail -1 | sed -n 's/.*X\([[:digit:]]\+\)-lock$/\1/p')]
else
	display=:0
fi

whoseargs="client"
while [ "x$1" != "x" ]; do
    case "$1" in
	/''*|\.*)	if [ "$whoseargs" = "client" ]; then
		    if [ "x$clientargs" = x ]; then
			clientargs="$1"
		    else
			clientargs="$clientargs $1"
		    fi
		else
		    if [ "x$serverargs" = x ]; then
			serverargs="$1"
		    else
			serverargs="$serverargs $1"
		    fi
		fi ;;
	--)	whoseargs="server" ;;
	*)	if [ "$whoseargs" = "client" ]; then
		    clientargs="$clientargs $1"
		else
    		    case "$1" in
		        :[0-9]) display="$1"
		        ;;
                        *) serverargs="$serverargs $1"
			;;
		    esac
		fi ;;
    esac
    shift
done

# set up default Xauth info for this machine
mcookie=`mcookie`
serverargs="$serverargs -auth $HOME/.Xauthority"
xauth add $display . $mcookie
xauth add `hostname -f`$display . $mcookie

# remember which VC will be occupied by X to deallocvt it later
XINITLOG="$TMPDIR"/.startx-$HOSTNAME$display
while [ -e "$XINITLOG" ]; do
	XINITLOG="$TMPDIR"/.startx-$HOSTNAME$display-$RANDOM
done

# protect logfile
>"$XINITLOG"
chmod 600 "$XINITLOG"

xinit $clientargs -- $display $serverargs  2>&1 | tee -a "$XINITLOG"

# clean up
deallocvt $(sed -n -e 's/^(using VT number \([[:digit:]]\+\))/\1/p' "$XINITLOG") 2>/dev/null
rm -f "$XINITLOG"

[-- Attachment #2: Type: application/pgp-signature, Size: 187 bytes --]

  reply	other threads:[~2003-02-19  1:12 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-02-18 12:32 [Comm] " Yury Aliaev
2003-02-19  1:12 ` Michael Shigorin [this message]
2003-02-20 12:38   ` Yury Aliaev
2003-02-24  1:59     ` [Comm] " Michael Shigorin
2003-02-25  9:25       ` Yury Aliaev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030219011202.GX75596@osdn.org.ua \
    --to=mike@osdn.org.ua \
    --cc=community@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git