Установка LXDE на Open SUSE 11.2
Раздел : Программное обеспечение
Опубликовано DrStrip [29/05/2010]
Установка LXDE+Openbox на Open SUSE 11.2
Маленькое вступление
Разбирая старые "железки" я обнаружил, что можно собрать рабочий компьютер.
В результате появилась такая конфигурация:
Intel Celeron 2000, MB ASUS S478 P4S800D-X, RAM 384 MB, HDD 2х40 GB, VIDEO RADEON 9200 PRO, туда же был добавлен TV-Tuner LifeView FlyTV Platinum на SAA7135.
Осталось поставить ОС. Сначала был установлен Open SUSE 11.2 KDE4, после загрузки системы стало грустно, система откровенно тормозила, периодически уходя в SWAP. KDE4 был заменен на XFCE стало намного лучше, но памяти все равно было маловато. Попробовал "легкий" дистрибутив Simply Linux (на основе ALT Linux) с XFCE, по сравнению с SUSE+XFCE разница небольшая, да и сам дистрибутив после SUSE не очень понравился. И тут просматривая наш форум на натолкнулся на топик "LXDE как установить ?" и решил попробовать посмотреть что это за "LXDE".

Был установлен c DVD Open SUSE 11.2 в конфигурации "Минимальная X-Windows", Язык "Русский", Клавиатура "Английский (США) (при установке был полностью выкинут apparmor. Через консольный YAST была настроена сеть и подключен репозиторий
Далее были установлены следующие пакеты
desktop-file-utils             | Utilities for Manipulating Desktop Files | 0.15-86.2                 |  167,0 KiB
gamin-server | Server for the Library providing the ... | 0.1.10-10.2 | 87,0 KiB
gnome-keyring | GNOME Keyring Password Manager | 2.28.2-1.1.3 | 2,4 MiB
gnome-keyring-lang | Languages for package gnome-keyring | 2.28.2-10.13 | 2,0 MiB
libfm | A glib/gio-based lib used to develop ... | 0.1.11beta+git20100516-50.1 | 281,0 KiB
libfm-gtk0 | GTK libfm libraries | 0.1.11beta+git20100516-50.1 | 327,0 KiB
libfm0 | Libfm libraries | 0.1.11beta+git20100516-50.1 | 121,0 KiB
libmenu-cache1 | Menu-cache libraries | 0.3.2-17.1 | 22,0 KiB
lxappearance | It's a desktop-independent theme swit... | 0.4.0-19.1 | 172,0 KiB
lxcc | LXDE Control Center | 0.1.0+svn730-4.2 | 10,0 KiB
lxde-common | This package provides a set of defaul... | 0.5.0-33.1 | 5,1 MiB
lxde-common-branding-openSUSE | OpenSUSE branding | 11.3-35.1 | 121,0 KiB
lxdm | LXDE Display Manager | 0.2.0-68.1 | 186,0 KiB
lxdm-conf | LXDM configuration tool | 0.2.0+svn727-14.1 | 24,0 KiB
lxinput | Keyboard and mouse configuration tool | 0.1.1-10.1 | 82,0 KiB
lxmenu-data | A tool to build desktop menu for LXDE | 0.1.1-15.1 | 164,0 KiB
lxpanel | Lightweight X11 desktop panel based o... | 0.5.5-38.1 | 587,0 KiB
lxpanel-lang | Languages for package lxpanel | 0.5.5-38.1 | 767,0 KiB
lxrandr | Lightweight Monitor Config Tool | 0.1.1-13.1 | 123,0 KiB
lxsession | LXDE Session Manager, required for ru... | 0.4.4-22.1 | 146,0 KiB
lxsession-edit | A tool manage lxsession-lite | 0.1.1-15.1 | 72,0 KiB
lxshortcut | Creat shortcuts for lxde | 0.1.1-9.1 | 124,0 KiB
lxtask | Lightweight Task Manager | 0.1.3-15.1 | 184,0 KiB
lxterminal | Lightweight LXDE Terminal | 0.1.7-19.1 | 235,0 KiB
menu-cache | A tool speed up menus | 0.3.2-17.1 | 129,0 KiB
obconf | Openbox Configuration Tool | 2.0.3-21.3 | 491,0 KiB
openbox | ICCCM and EWMH Compliant Window Manag... | 3.4.11.2-39.1 | 963,0 KiB
pcmanfm | The next generation LXDE file manager | 0.9.5beta+git20100516-60.1 | 158,0 KiB
pcmanfm-lang | Languages for package pcmanfm | 0.9.5beta+git20100516-60.1 | 263,0 KiB
python-ctypes | Create and manipulate C data types fr... | 1.0.2-8.1 | 648,0 KiB
python-unipath | Object-oriented alternative to os/os.... | 0.2.1-11.1 | 738,0 KiB
trash-cli | Command line interface to the freedes... | 0.11.2-1.3 | 83,0 KiB
xdg-utils | Utilities to uniformly interface desk... | 1.0.2-84.2 | 185,0 KiB
для того чтобы настроить запуск lxdm в Open SUSE 11.2 надо править править /etc/init.d/xdm по ссылке был найден патч, который правит xdm, но при попытке проптчить patch у меня ругнулся и я поправил xdm руками, ниже уже патченный xdm, который у меня работает
#! /bin/bash
# Copyright (c) 1996-2002 SuSE Linux AG, Nuernberg, Germany.
# All rights reserved.
#
# Author: Florian La Roche, 1996
# Werner Fink , 1996,98,99
# Martin Scherbaum, 1997
# Reinhard Max , 1997
#
# Please send feedback to http://www.suse.de/feedback
#
# /etc/init.d/xdm
#
### BEGIN INIT INFO
# Provides: xdm
# Required-Start: $remote_fs
# Required-Stop: $remote_fs
# Should-Start: ypbind $syslog gpm firstboot kbd resmgr earlyxdm winbind acpid
# Should-Stop: ypbind $syslog gpm firstboot kbd resmgr earlyxdm winbind acpid
# Default-Start: 5
# Default-Stop:
# Description: X Display Manager
### END INIT INFO

. /etc/rc.status
. /etc/sysconfig/displaymanager
. /etc/sysconfig/language
. /etc/sysconfig/windowmanager
test -e /etc/SuSEconfig/profile && . /etc/SuSEconfig/profile
test -r /etc/profile.d/desktop-data.sh && . /etc/profile.d/desktop-data.sh

locale_vars="
LANG
LC_CTYPE
LC_NUMERIC
LC_TIME
LC_COLLATE
LC_MONETARY
LC_MESSAGES
LC_PAPER
LC_NAME
LC_ADDRESS
LC_TELEPHONE
LC_MEASUREMENT
LC_IDENTIFICATION
LC_ALL"

unset LC_ALL
for lc in $locale_vars
do
eval val="$RC_$lc"
if test -n "$val"; then
eval $lc="$RC_$lc"
export $lc
fi
done
unset lc val

test -z "$DEFAULT_WM" && DEFAULT_WM=twm
SAVEPATH=$PATH
PATH=$PATH:/usr/X11R6/bin:/opt/gnome/bin:/usr/openwin/bin
WINDOWMANAGER="`type -p ${DEFAULT_WM##*/}`"
PATH=$SAVEPATH
export WINDOWMANAGER
unset DEFAULT_WM SAVEPATH

XDM_PIDFILE="/var/run/xdm.pid"
KDM_PIDFILE="/var/run/kdm.pid"
GDM_PIDFILE="/var/run/gdm.pid"
SLIM_PIDFILE="/var/run/slim.lock"
LXDM_PIDFILE="/var/run/lxdm.pid"
PIDFILE=$XDM_PIDFILE
KDEROOTHOME=/root/.kdm
export KDEROOTHOME
XDMDIR=/etc/X11/xdm
if [ -x /usr/bin/xdm ]; then
XDM_BIN=/usr/bin/xdm
else
XDM_BIN=/usr/X11R6/bin/xdm
fi
if [ -x /usr/sbin/gdm ]; then
GDM_BIN=/usr/sbin/gdm
else
GDM_BIN=/opt/gnome/sbin/gdm
fi
KDM_BIN=/opt/kde3/bin/kdm
KDM4_BIN=/usr/bin/kdm
WDM_BIN=/usr/bin/wdm
SLIM_BIN=/usr/bin/slim
LXDM_BIN=/usr/bin/lxdm
RELOADSIGNAL="-HUP"

DM=${DISPLAYMANAGER##*/}

case "${DM}" in
kdm3) DISPLAYMANAGER=$KDM_BIN
PIDFILE=$KDM_PIDFILE
;;
kdm|kde|KDM|KDE) DISPLAYMANAGER=$KDM_BIN
if [ ! -r "$DISPLAYMANAGER" ]; then
DISPLAYMANAGER=$KDM4_BIN
fi
PIDFILE=$KDM_PIDFILE
;;
kdm4) DISPLAYMANAGER=$KDM4_BIN
PIDFILE=$KDM_PIDFILE
;;
xdm) DISPLAYMANAGER=$XDM_BIN
;;
gdm|GDM|Gnome|GNOME) DISPLAYMANAGER=$GDM_BIN
PIDFILE=$GDM_PIDFILE
RELOADSIGNAL="-USR1"
;;
wdm|WDM) DISPLAYMANAGER=$WDM_BIN
;;
slim|SLIM) DISPLAYMANAGER=$SLIM_BIN
XDMOPTIONS=-d
PIDFILE=$SLIM_PIDFILE
;;
lxdm|LXDM) DISPLAYMANAGER=$LXDM_BIN
XDMOPTIONS=-d
PIDFILE=$LXDM_PIDFILE
;;
console) exit 0
;;
*) DISPLAYMANAGER=$XDM_BIN
if test -x $KDM_BIN; then
DISPLAYMANAGER=$KDM_BIN
PIDFILE=$KDM_PIDFILE
elif test -x $KDM4_BIN; then
DISPLAYMANAGER=$KDM4_BIN
PIDFILE=$KDM_PIDFILE
fi
;;
esac
test ! -x "$DISPLAYMANAGER" && DISPLAYMANAGER=$XDM_BIN

rc_reset
case "$1" in
start)
# Avoid duplicated messages when earlyxdm is in use
if [ "$DISPLAYMANAGER" = "$KDM_BIN" -a -s $KDM_PIDFILE ]; then
/sbin/checkproc -p $KDM_PIDFILE $KDM_BIN && rc_exit 0
elif [ "$DISPLAYMANAGER" = "$KDM4_BIN" -a -s $KDM_PIDFILE ]; then
/sbin/checkproc -p $KDM_PIDFILE $KDM4_BIN && rc_exit 0
elif [ "$DISPLAYMANAGER" = "$GDM_BIN" -a -s $GDM_PIDFILE ]; then
/sbin/checkproc -p $GDM_PIDFILE $GDM_BIN && rc_exit 0
fi

if [ "$DISPLAYMANAGER" != "$KDM_BIN" -a
"$DISPLAYMANAGER" != "$KDM4_BIN" -a
"$DISPLAYMANAGER" != "$GDM_BIN" ]; then
test -x /etc/X11/xdm/SuSEconfig.xdm &&
MD5DIR="/var/adm/SuSEconfig/md5"
/etc/X11/xdm/SuSEconfig.xdm |
sed 's+(.*)+/etc/init.d/xdm: +g' |
/bin/logger
fi

# use system keyboard as global X keyboard configuration
if [ -x /etc/X11/xdm/keytable4hal ]; then
if /etc/X11/xdm/keytable4hal; then
/etc/init.d/haldaemon stop &&
rm -f /var/cache/hald/fdi-cache &&
/etc/init.d/haldaemon start
fi
fi

echo -n "Starting service $DM"
# Don't start xdm if no Xserver is configured and xdm is not
# configured for remote access
if [ ! -x /usr/bin/X -a ! -x /usr/X11R6/bin/X -a
"$DISPLAYMANAGER_REMOTE_ACCESS" = "no" ]; then
rc_status -u
rc_exit
fi
if [ "$DISPLAYMANAGER" = "$GDM_BIN" -a
"$DISPLAYMANAGER_REMOTE_ACCESS" = "yes" -a
"$DISPLAYMANAGER_STARTS_XSERVER" = "no" ]; then
XDMOPTIONS="--no-console"
fi
# Graphical failsafe mode (Bug #246158).
#
# Needs changes in kernel commandline of "Failsafe" entry in
# /boot/grub/menu.lst.
#
# * use the same "vga" option value as in the non-"Failsafe" entry
# * remove "3" option (runlevel)
# * add "x11failsafe" option
if cat /proc/cmdline | grep -q x11failsafe; then
if [ -f /etc/X11/xorg.conf.install ]; then
export XORGCONFIG=xorg.conf.install
echo
echo "Using failsafe X.Org configuration /etc/X11/xorg.conf.install"
else
echo
echo "The failsafe X.Org configuration /etc/X11/xorg.conf.install no longer exists."
echo "Either move it back (if still available) or copy /etc/X11/xorg.conf to"
echo "/etc/X11/xorg.conf.install to use the native graphics driver instead of the"
echo "failsafe graphics driver. Of course the latter option no longer can be called"
echo "failsafe."
rc_status -u
rc_exit
fi
fi
startproc -p $PIDFILE $DISPLAYMANAGER $XDMOPTIONS || rc_failed
# After a crash or a kill signal we may have
# a wrong owner ship of /dev/xconsole
if rc_status ; then
if test -x $XDMDIR/TakeDevices ; then
$XDMDIR/TakeDevices
else
chown root:tty /dev/xconsole /dev/tty0
chmod 622 /dev/xconsole /dev/tty0
fi
else
case "${DM}" in
slim|SLIM)
test -s $PIDFILE || pgrep -f $DISPLAYMANAGER > $PIDFILE
esac
fi
rc_status -v
;;
stop)
# make sure to stop the running one (Bug #306035)
if test -s "$KDM_PIDFILE"; then
PIDFILE=$KDM_PIDFILE
elif test -s "$GDM_PIDFILE"; then
PIDFILE=$GDM_PIDFILE
elif test -s "$XDM_PIDFILE"; then
PIDFILE=$XDM_PIDFILE
elif test -s "$SLIM_PIDFILE"; then
PIDFILE=$SLIM_PIDFILE
elif test -s "$LXDM_PIDFILE"; then
PIDFILE=$LXDM_PIDFILE
fi
if test -s $PIDFILE; then
read -t 1 PID < $PIDFILE
if CHECKDM=$(ps ho command= -p $PID) ; then
DISPLAYMANAGER=${CHECKDM%%[[:blank:]]*}
DM=${DISPLAYMANAGER##*/}
fi
unset CHECKDM
else
rm -f $PIDFILE
unset PIDFILE
fi
echo -n "Shutting down service $DM"

#
# killproc(8) sleep upto five seconds and sends
# SIGKILL if xdm does not terminate within
#

killproc ${PIDFILE:+-p ${PIDFILE}} -TERM $DISPLAYMANAGER
rc_status -v
;;
restart)
$0 stop
$0 start
rc_status
;;
reload|force-reload)
test -x /etc/X11/xdm/SuSEconfig.xdm &&
MD5DIR="/var/adm/SuSEconfig/md5"
/etc/X11/xdm/SuSEconfig.xdm |
sed 's+(.*)+/etc/init.d/xdm: +g' |
/bin/logger
echo -n "Reload service $DM"
killproc -p $PIDFILE $RELOADSIGNAL $DISPLAYMANAGER
rc_status -v
;;
status|check)
echo -n "Checking for service ${DM}: "
checkproc -p $PIDFILE $DISPLAYMANAGER
rc_status -v
;;
probe)
if test $XDMDIR/xdm-config -nt $PIDFILE -o
$XDMDIR/Xservers -nt $PIDFILE
then
echo reload
fi
;;
try-restart|condrestart)
$0 status
if test $? = 0; then
$0 restart
else
rc_reset
fi
rc_status
;;
*)
echo "Usage: $0 {start|stop|status|restart|reload|force-reload|probe|try-restart}"
exit 1
esac
rc_exit
Теперь установим в файле /etc/sysconfig/displaymanager параметр
DISPLAYMANAGER="lxdm"

Все можно перегружать X (я делал через init 3 и init 5). Если все нормально то, мы получим приглашение lxdm, выбираем "СЕАНС=LXDE" и "ЯЗЫК=ru_RU" вводим "логин"/"пароль" и заходим в систему.
Русский язык я добавлял через YAST-Язык, установив галочку "Адаптировать раскладку клавиатуры к Русский" после чего Ctrl+Shift переключает языки. На панель был установлен апплет "Индикатор раскладок клавиатуры", для отображения текущей раскладки. После загрузки команда
free -m
показывает
             total       used       free     shared    buffers     cached
Mem: 372 170 201 0 16 100
-/+ buffers/cache: 53 318
Swap: 564 0 564
красота .
По умолчанию в системе отсутствует плеер, браузер и редактор, я пока поставил google-chrome и mousepad.
TV-Tuner завелся из коробки система установила MoTV (интерфейс только английский) и все заработало.
Ну вот пожалуй и все.
Буду дальше разбираться с LXDE и подбирать "легкий" софт.