[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:20428] Re: X の(フォントの)セットアップ



日置です。

> たけ@阪大です。
> うーん、フォントは関係ないような。
>
> ~/.xsession の最後のコマンドにも & がついちゃってるとかの
> ような気が。
>
> ~/.xsession を見せていただけます?

# find -name .xsession っとやってみましたが見つかりませんでした。
(自動的に作られるファイルではないのかもしれませんね?)
代わりに、xsession-errors っというファイルが見つかりました。内容は
 Xsession: unable to start X session: no /root/.xsession found,
 no registered window managers, twm not found, and xterm not found.

過去のメールを検索してみると、
~/.xsession
ではなく
/etc/X11/Xsession
が使用されてしまい、困っていた人がいましたが、自分の環境にも
/etc/X11/Xsession
はありましたので、それを貼り付けてみました。
(これはシェルスクリプトと言うものですね? man bashで勉強してみます)
何か気になる点があれば教えてください。おねがいします。
ーーーーーーーーーーここからXsessionーーーーーーーーーーーーー
#!/bin/sh
#
# /etc/X11/Xsession
#
# global Xsession file -- used by both xdm and xinit (startx)

# If /etc/environment is present, source it. It's useful to put default
# environment settings in this file, and then source it both here and in
# /etc/profile.
if [ -f /etc/environment ]; then
  . /etc/environment
fi

optionfile=/etc/X11/Xsession.options

sysmodmap=/etc/X11/Xmodmap
usrmodmap=$HOME/.Xmodmap
sysresources=/etc/X11/Xresources
usrresources=$HOME/.Xresources

startup=$HOME/.xsession

startssh=
sshagent=/usr/bin/ssh-agent

if [ -x $sshagent -a -z "$SSH_AUTH_SOCK" ]; then
  startssh=yes
fi

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

case $# in
  0)
    ;;
  1)
    case "$1" in
      failsafe)
        if grep -qs ^allow-failsafe $optionfile; then
          if [ -x /usr/bin/X11/xterm ]; then
            exec xterm -geometry +1+1
          else
            echo "Xsession: unable to launch failsafe X session: xterm not
found."
            exit
          fi
        fi
        ;;
      default)
        ;;
      *)
        program=$(which $1)
        if [ -x $program ]; then
          startup=$program
        else
          echo "Xsession: unable to launch $1 X session: $1 not found."
        fi
        ;;
    esac
    ;;
  *)
    echo "Xsession: unsupported number of arguments ($#)."
    ;;
esac

if [ -d $sysresources ]; then
  xrdb -load /dev/null # work around wdm brain damage
  if [ "$(echo $sysresources/*)" != "$sysresources/*" ]; then
    for resourcefile in $(ls $sysresources/* 2> /dev/null | egrep
'^[-/_[:alnum:]]*$'); do
      xrdb -merge $resourcefile
    done
  fi
fi

if [ -x /usr/bin/X11/xmodmap ]; then
  if [ -f $sysmodmap ]; then
    xmodmap $sysmodmap
  fi
fi

if grep -qs ^allow-user-resources $optionfile; then
  if [ -f $usrresources ]; then
    xrdb -merge $usrresources
  fi
fi

if [ -x /usr/bin/X11/xmodmap ]; then
  if grep -qs ^allow-user-modmap $optionfile; then
    if [ -f $usrmodmap ]; then
      xmodmap $usrmodmap
    fi
  fi
fi

if [ -e $startup ] && grep -qs ^allow-user-xsession $optionfile; then
  if [ -x $startup ]; then
    realstartup=$startup
  else
    realstartup="sh $startup"
  fi
elif [ -e /etc/X11/window-managers ]; then
  for i in `sed 's/#.*//' /etc/X11/window-managers`; do
    if [ -x $i ]; then
      realstartup=$i
      break
    fi
  done
fi

if [ -z "$realstartup" ]; then
  if [ -x /usr/bin/X11/twm ]; then
    realstartup=twm
  elif [ -x /usr/bin/X11/xterm ]; then
    realstartup=xterm
  else
    echo -n "Xsession: unable to start X session: "
    if grep -qs ^allow-user-xsession $optionfile; then
      echo -n "no $startup found, "
    fi
    echo "no registered window managers, twm not found, and xterm not
found."
  fi
fi

if [ "$startssh" ]; then
  exec $sshagent $realstartup
else
  exec $realstartup
fi
ーーーーーーーーXsessionここまでーーーーーーーーーーーーーーーーー