What is LXDE?
LXDE is the abbreviation for Lightweight X11 Desktop Environment. LX also stands for LinuX. You will find it different from other desktop environments, due to its discrete components, which can be used independently and with few dependencies.
The LXDE project aims to provide a desktop environment which is intuitive, lightweight and useful, while also keeping system resource demands low. Development focuses on a balance of usability, speed, and memory usage.
Why should I use LXDE?
LXDE has number of advantages and excellent features:
- Lightweight, runs with reasonable memory usage (After X11 and LXDE are started, the total memory usage is about 45 MB on i386 machines.)
- Fast, runs well even on older machines produced in 1999 (The hardware requirements of LXDE is similar to Windows 98)
- Good-looking, gtk+ 2 internationalized user interface
- Easy-to-use, the user interface is simple, intuitive and functional.
- Desktop independent (Yes! Every component can be used without LXDE)
- Standards compliant, follows the specs on freedesktop.org
- Suitable for old machines ( Though LXDE itself has low hardware requirements, other X applications have higher resource demands. For example, Firefox and OpenOffice.org 2 are quite memory-hungry. It is therefore recommended that you have more than 128 MB RAM.)
What components does it contain?
- PCManFM: File manager, provides desktop icon
- LXPanel: Feature-rich desktop panel
- LXSession: Standard-compliant X11 session manager with shutdown/reboot/suspend supports via HAL and gdm
- (There are some bugs in lxsession related to session management. lxsession-lite is a version of lxsession which does not have the session management capability. The stability of lxsession-lite is better than lxsession, however it can not save and restore sessions. Thus it is recommended to use lxsession-lite till the problems in lxsession are fixed.)
- LXAppearance: LXAppearance is a new feature-rich GTK+ theme switcher able to change GTK+ themes, icon themes, and fonts used by applications
- Openbox: Lightweight, standard-compliant, and highly-configurable window manager (This is not developed by LXDE Project, but it's used as default window manager). This can be replaced by any other window manager like icewm, fluxbox, metacity, ...etc.
- GPicView: A very simple, fast, and lightweight image viewer featuring immediate startup.
- Leafpad: Lightweight and simple text editor(This is not developed by us, but we suggest using this as default text editor).
- XArchiver: Lightweight, fast, and desktop-independent gtk+-based file archiver (This is not developed by LXDE Project, but you are suggested to use this as default archiver).
- LXNM (still under development): Lightweight network manager for LXDE supporting wireless connections (Linux-only)
How to Install LXDE
LXDE is modular. You can pick and choose packages listed above, all of which can be grabbed via Pacman. (Ensure the [extra] and [community] repositories are enabled). To install packages such as LXAppearance and LXNM, you must utilize the AUR repository.
The minimal obligatory packages which you have to install to run LXDE are Lxde-common, Lxsession, Openbox, and desktop-file-utils. The Openbox package can be replaced by any Window Manager you prefer.
Install LXDE base packages:
# pacman -Sy lxde gamin
This will install the following packages:
# pacman -Sg lxde lxde gpicview lxde lxappearance lxde lxde-common lxde lxlauncher lxde lxpanel lxde lxrandr lxde lxsession-lite lxde lxtask lxde lxterminal lxde pcmanfm gamin
Gamin is a file and directory monitoring system defined to be a subset of the FAM. However, it doesn't require a system-wide daemon running with root. It runs as general users on demand, so no manual configuration is needed. Don't add it to the DAEMON list in /etc/rc.conf. Template:Box Note
It is also recommended to install leafpad as a default text-editor.
- If you are using display managers like GDM or KDM, you should be able to select LXDE directly.
- If you don't have display manager, and want to start lxde from the shell using startx or xinit, add this line at the end of ~/.xinitrc:
If your removable disk has an NTFS filesystem, you should install NTFS-3G as well. Generally, PCManFM works well with HAL. Currently, there is one bug affecting NTFS users; If you have files or folders on an NTFS filesystem, the names of which contain non-latin characters (ie: Chinese Characters), the files or folders may disappear when opening (or automounting) the NTFS volume. This happens because the lxsession (or lxsession-lite) mounthelper is not correctly parsing the policies and locale option. There is a workaround for this:
1) Remove the "/sbin/mount.ntfs-3g" which is a symlink.
2) Create a new "/sbin/mount.ntfs-3g" with a new bash script containing:
#!/bin/bash /bin/ntfs-3g $1 $2 -o locale=en_US.UTF-8
3) Make it executable:
chmod +x /sbin/mount.ntfs-3g
4) Add "NoUpgrade = sbin/mount.ntfs-3g" to pacman.conf under the "[options]"
Replace Window Manager
OpenBox, the default window manager of LXDE, can be easily replaced by any one you like, such as fvwm, icewm, dwm and awesome... etc..
The window manager you want to execute lies in this file:
For example, somebody's /etc/xdg/lxsession/LXDE/default looks like this:
smproxy openbox lxpanel
smproxy is a program provided in xorg. It provides session management support for programs which don't know X11 R6 session management protocol. It is highly recommended you include this line in your desktop.
Shutdown and Reboot from LXDE
To be able to shutdown, reboot, suspend and so on from lxde make sure that DBus and HAL are running. Then add your user to the power group.
# gpasswd -a <USERNAME> power
Using KDEmod3 applications under LXDE
As older versions of KDEmod[-legacy] are still installed under /opt/kde/bin, they are not automatically recognized by LXDE. To use them, you can either edit your PATH with the following command:
echo 'PATH=$PATH:/opt/kde/bin' >> /etc/rc.local
or you can add the following script to /etc/profile.d:
Save it as "kde3path.sh" and make it executable:
chmod +x /etc/profile.d/kde3path.sh