☆SLiMのデフォルトを前回と同じにする

SLiMを使っていて一番不便に感じるのはGDMのように前回選択したデスクトップ環境をデフォルトで起動してくれないところです。

GDMがどうやって ユーザが前回選択したWMを記憶しているか調べてみると、 ~/.dmrc に書き込んでいるようです。

SLiMでも ~/.dmrc を読み書きして、ログイン画面でF1を押さない場合(とdefaultを選択した場合)に前回選択したWMを起動するようにします。

●作成するディレクトリ、スクリプト

下記リンクのファイルをダウンロードして"/"の直下で展開します。
https://sites.google.com/site/midspeclowload/files/etc_slim_d.tar.gz?attredirects=0&d=1

ちなみに中身は下記のとおり

drwxr-xr-x root/root         0 2010-01-23 21:32 etc/slim/
-rwxr-xr-x root/root        41 2010-01-21 02:21 etc/slim/Xsession
-rwxr-xr-x root/root      2561 2010-01-23 21:32 etc/slim/SLiMXsessionrc.pl
/etc/slim/Xsessionrcは受け取った引数をそのまま/etc/slim/SLiMXsessionrc.pl
に渡して起動しているだけです。(/bin/bash -login の後ろはシェルスクリプトでないとダメなようで直接perlのスクリプトを渡すとエラーになります。)
/etc/slim/SLiMXsessionrc.pl は引数と.dmrcから /etc/X11/Xsession への引数を決定します。
(引数の指定と.dmrcに保存しているセッションの指定が異なる場合は.dmrcを書き換えます。)

●設定ファイル(/etc/slim.conf)の編集

初期状態では

login_cmd           exec /bin/bash -login /etc/X11/Xsession %session
となっている行を
login_cmd           exec /bin/bash -login /etc/slim/Xsession %session
に変更します。


2010/01/24 追記
手順が洩れていました。
上記に加えて

sessions         default,gnome,startxfce4,startlxde
となっているところを
sessions         default,gnome,xfce,LXDE
のように変更します。

使える文字列は /usr/share/xsessions ディレクトリ以下のファイル名から ".desktop"を
取り除いた文字です。



相変わらずguest-restrictedなどは起動に失敗します。
gnome-failsafeを使いたい場合は /usr/share/xsessions/gnome-failsafe.desktop の

Exec=gnome-session -f

#Exec=gnome-session -f
Exec=gnome-session-f
のように修正して(-fの前のスペースをとっています。) /usr/bin/gnome-session-f を作成し、
中身に
#/bin/bash
exec gnome-session -f
と記述します。(実行権限をつけてください)

0 件のコメント:

コメントを投稿