LXDE
| LXDE | |
|---|---|
| LXDE Logo | |
| File:LXDE desktop full.png Default LXDE desktop | |
| Original author | Hong Jen Yee ("PCMan") |
| Developer | The LXDE Team |
| Initial release | 2006 |
| Repository |
|
| Written in | C (GTK 2, GTK 3) |
| Engine | |
| Operating system | Unix-like |
| Platform | Linux, BSD |
| Type | Desktop environment |
| License | GPL, LGPL |
LXDE (abbreviation for Lightweight X11 Desktop Environment) is a free desktop environment with comparatively low resource requirements. This makes it especially suitable for use on older or resource-constrained personal computers[1] such as netbooks or system on a chip computers.
LXDE was written in the C programming language, using the GTK 2 toolkit, and runs on Unix and other POSIX-compliant platforms, such as Linux and BSDs. The LXDE project aims to provide a fast and energy-efficient desktop environment.[2][3]
LXDE uses rolling releases for its individual components (or for groups of components with coupled dependencies).[4] The default window manager used is Openbox, but one can configure a third-party window manager for use with LXDE, such as Fluxbox, IceWM or Xfwm.[3] LXDE includes GPL-licensed code as well as LGPL-licensed code.[2]
History
[edit | edit source]The project was started in 2006 by Taiwanese programmer Hong Jen Yee (Chinese: 洪任諭; pinyin: Hóng Rènyù), also known as PCMan, when he published PCManFM, a new file manager and the first module of LXDE.
In 2010, tests suggested that LXDE 0.5 had the lowest memory-usage of the four most-popular desktop environments of the time (the others being GNOME 2.29, KDE Plasma Desktop 4.4, and Xfce 4.6),[5] and that it consumed less energy,[6] which suggested mobile computers with Linux distributions running LXDE 0.5 drained their batteries at a slower pace than those with other desktop environments.
Qt port
[edit | edit source]Dissatisfied with GTK 3,[7] Hong Jen Yee experimented with Qt in early 2013[8] and released the first version of a Qt-based PCManFM on 26 March 2013.[7]
On 3 July 2013 Hong announced a Qt port of the full LXDE suite,[9] and on 21 July Razor-qt and LXDE announced that they would merge the two projects.[10][11][12] This merger meant that the GTK and the Qt versions would coexist for some time but, eventually, all original team efforts focused on the Qt port, LXQt.[13]
GTK 3 port
[edit | edit source]As of May 2020, there is an experimental GTK 3 port developed by the Arch Linux community.[14] GTK 3 versions have already been developed for the following components: LXAppearance, LXAppearance-ObConf, LXDE-common, LXDE-icon-theme, LXDM, LXhotkey, LXInput, LXLauncher, LXPanel, LXRandR, LXSession, LXTask, LXTerminal, Openbox, PCManFM.[15] One advantage of using GTK 3 is that GTK 3 programs run natively on Wayland. PCManFM is a popular file manager for use with tiling window managers and hence, having a Wayland-native PCManFM is useful for people that use Sway.[citation needed]
Current development
[edit | edit source]Despite the original team moving to LXQt development, some other developers continued to maintain LXDE on GitHub and, as of March 2021, there are fresh commits to keep the GTK 2 version updated. As of July 2019, the LXTerminal release is based on GTK 3 to avoid dependencies on the old VTE lib.[16][17]
Availability
[edit | edit source]Default desktop
Alternative desktop
- Arch Linux[22]
- Artix Linux[23][24]
- Debian[25]
- Devuan[26]
- Fedora[27]
- Raspberry Pi OS[28][29] (later models use a heavily modified fork of LXDE called PIXEL which eventually added Wayland support, using Wayfire or labwc compositors)[30]
Former default desktop
- Lubuntu (replaced by LXQt in 2018)[31]
- Artix Linux[23][24] (now available as an alternative desktop)
- Peppermint OS (replaced by Xfce in 2022)[32]
Software components of LXDE
[edit | edit source]Unlike other major desktop environments such as GNOME, the components of LXDE have few dependencies and are not tightly integrated.[33] Instead, they can be installed independently of each other or LXDE itself.[34]
| Components | Descriptions | Notes |
|---|---|---|
| PCMan File Manager | File manager and Desktop metaphor provider | |
| LXInput | Mouse and keyboard configuration tool | |
| LXLauncher | Easy-mode application launcher | |
| LXPanel | Desktop panel | |
| LXSession | X session manager | |
| LXAppearance | GTK theme switcher | |
| GPicView | Image viewer | |
| LXMusic | A frontend for the XMMS2 audio player | |
| LXTerminal | Terminal emulator | LXTerminal can be configured to hide the menu bar and the scrolling bar |
| LXTask | Task manager | |
| LXRandR | A GUI to RandR | |
| LXDM | X display manager | |
| LXNM | Lightweight network connection helper daemon. Supports wireless connections (Linux only). | Discontinued |
| Leafpad | Text editor | Not developed by the LXDE project |
| Openbox (Fluxbox, IceWM and Xfwm are also supported) | Window manager | Not developed by the LXDE project |
| ObConf | A GUI tool to configure Openbox | Not developed by the LXDE project |
| Xarchiver | File archiver | Not developed by the LXDE project |
-
GPicView
-
LXAppearance
-
LXPanel
-
LXPanel Preferences
-
LXTask
-
PCManFM
-
Autocompletion of Panel tasks
See also
[edit | edit source]Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
- LXQt – A lightweight desktop environment and spiritual successor to LXDE
- Xfce – Another lightweight desktop environment built using GTK
- Comparison of X Window System desktop environments
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).