• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.ci/H05-Nov-2021-105

autostart/H03-May-2022-8746

cmake/H05-Nov-2021-6150

menu/H03-May-2022-368260

panel/H03-May-2022-32,29828,319

plugin-backlight/H03-May-2022-435241

plugin-colorpicker/H03-May-2022-310179

plugin-cpuload/H03-May-2022-3,9223,560

plugin-customcommand/H03-May-2022-5,1084,771

plugin-desktopswitch/H03-May-2022-4,7664,382

plugin-directorymenu/H03-May-2022-3,5853,316

plugin-dom/H03-May-2022-2,2211,893

plugin-kbindicator/H03-May-2022-6,3025,512

plugin-mainmenu/H03-May-2022-10,93910,234

plugin-mount/H03-May-2022-8,3927,371

plugin-networkmonitor/H03-May-2022-4,6824,332

plugin-quicklaunch/H03-May-2022-3,4092,908

plugin-sensors/H03-May-2022-5,0694,347

plugin-showdesktop/H03-May-2022-1,3671,199

plugin-spacer/H03-May-2022-2,1561,915

plugin-statusnotifier/H03-May-2022-3,9023,109

plugin-sysstat/H03-May-2022-15,87815,289

plugin-taskbar/H03-May-2022-17,16715,913

plugin-tray/H03-May-2022-2,9512,139

plugin-volume/H03-May-2022-8,2107,103

plugin-worldclock/H03-May-2022-15,30714,674

.translation-updateH A D05-Nov-2021663 2322

AUTHORSH A D05-Nov-2021270 118

CHANGELOGH A D05-Nov-202189.4 KiB1,6841,654

LICENSEH A D05-Nov-202123.9 KiB459386

README.mdH A D05-Nov-20217 KiB7040

README.md

1# lxqt-panel
2
3## Overview
4
5`lxqt-panel` represents the taskbar of LXQt.
6
7The elements available in lxqt-panel are called "plugin" technically. This applies e. g. to the source code where they reside in directories `./plugin-<plugin>` like `plugin-mainmenu`. In contrast to this they are called "widgets" by the configuration GUI so far. Also, a more descriptive term is used to refer to distinct plugins within the GUI. E. g. the aforementioned `plugin-mainmenu` is called "Application menu" that way.
8Configuration dialogue "Add Plugins", see [below](https://github.com/lxqt/lxqt-panel#customizing), is listing all available plugins plus a short description and hence provides an overview of the available ones.
9Notes on some of the plugins, sorted by terms used within the GUI in alphabetical order, technical term in parenthesis:
10
11#### Date & time / World clock (plugin-worldclock)
12
13Provides clock and calendar functionality and can display various time zones in addition.
14
15#### Quick launch (plugin-quicklaunch)
16
17A plugin to launch applications from the panel. By default it is empty and displays a message "Drop application icons here". Applications need to be available in panel's main menu and can be included into plugin-quicklaunch by drag & drop.
18
19#### Status Notifier Plugin (plugin-statusnotifier) / System Tray (plugin-tray)
20
21Both provide a notification area within the panel, that is an area where arbitrary applications can place informational icons. This is frequently used e. g. by chat or mail clients to inform about incoming messages or tools configuring the network to inform about connections. (So it's some kind of counterpart to the desktop notifications displayed by [lxqt-notificationd](https://github.com/lxqt/lxqt-notificationd)).
22The difference between the two plugins is a technical one. **plugin-tray** is implementing the so-called [System Tray Protocol](https://www.freedesktop.org/wiki/Specifications/systemtray-spec). It's a specification that has been around for years but has some serious technical limitations and in particular won't work under Wayland. **plugin-statusnotifier** on the other hand is implementing the so-called [StatusNotifierItem (SNI)](https://www.freedesktop.org/wiki/Specifications/StatusNotifierItem) specification which can be considered a successor of the System Tray Protocol.
23Both plugins are maintained in parallel as not all relevant applications are compatible with SNI so far. In particular both Qt 4 and all GTK applications need some kind of wrapper to deal with it. Both plugins can be used in parallel without any issue, applications supporting both specifications will normally chose to display their icons in plugin-statusnotifier.
24
25#### Volume control (plugin-volume)
26
27As indicated by the name, a volume control. Technically Alsa, OSS and PulseAudio can be used as backend. The plugin itself is providing a control to adjust the main volume only but it allows for launching specific UIs of the backend in use like e. g. [pavucontrol-qt](https://github.com/lxqt/pavucontrol-qt) to adjust PulseAudio.
28
29## Installation
30
31### Compiling source code
32
33The runtime dependencies are libxcomposite, libdbusmenu-qt5, KGuiAddons, KWindowSystem, Solid, menu-cache, lxmenu-data, [liblxqt](https://github.com/lxqt/liblxqt) and [lxqt-globalkeys](https://github.com/lxqt/lxqt-globalkeys).
34Several plugins or features thereof are optional and need additional runtime dependencies. Namely these are (plugin / feature in parenthesis) Alsa library (Alsa support in plugin-volume), PulseAudio client library (PulseAudio support in plugin-volume), lm-sensors (plugin-sensors), libstatgrab (plugin-cpuload, plugin-networkmonitor), [libsysstat](https://github.com/lxqt/libsysstat) (plugin-sysstat). All of them are enabled by default and have to be disabled by CMake variables as required, see below.
35In addition CMake is a mandatory build dependency. Git is optionally needed to pull latest VCS checkouts.
36
37Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` has to be set to `/usr` on most operating systems, depending on the way library paths are dealt with on 64bit systems variables like CMAKE_INSTALL_LIBDIR may have to be set as well.
38By default all available plugins and features thereof are built and CMake fails when dependencies aren't met. Building particular plugins can be disabled by boolean CMake variables `<plugin>_PLUGIN` where the plugin is referred by its technical term like e. g. in `SYSSTAT_PLUGIN`. Alsa and PulseAudio support in plugin-volume can be disabled by boolean CMake variables `VOLUME_USE_ALSA` and `VOLUME_USE_PULSEAUDIO`.
39
40To build run `make`, to install `make install` which accepts variable `DESTDIR` as usual.
41
42### Binary packages
43
44Official binary packages are provided by all major Linux distributions like Arch Linux, Debian (as of Debian stretch only), Fedora and openSUSE. Just use your package manager to search for string `lxqt-panel`.
45
46## Configuration, Usage
47
48### Launching
49
50The panel is run as a daemon-like [LXQt Module](https://github.com/lxqt/lxqt-session#lxqt-modules) the launch of which can be adjusted in section "Basic Settings" of configuration dialogue [LXQt Session Settings](https://github.com/lx/lxqt-session#lxqt-session-settings) of [lxqt-session](https://github.com/lxqt/lxqt-session).
51
52### Customizing
53
54To customize the panel itself there's a context menu, that is a menu opened by right-clicking the pointer device. It is comprising sections "\<plugin\>" and "Panel" which allow for configuring the plugin the pointer is currently over and the panel as a whole respectively.
55
56In section "Panel" topics "Configure Panel" and "Manage Widgets" open different panes of a dialogue "Configure Panel" which allow for configuring the panel as a whole and the various plugins respectively.
57Pane "Widgets" allows for configuring and removing all plugins currently included in lxqt-panel. The plus sign opens another dialogue "Add plugins" which is used to add plugins. It comes with a list of all plugins plus some short descriptions and can hence serve as overview what plugins are available.
58
59Sometimes right-clicking over particular plugins may bring up a context menu dealing with the respective plugin's functionality *only* which means the plugin in question cannot be configured the usual way. This affects e. g. plugin-quicklaunch as soon as items were added (the context menu is limited to topics dealing with the items included in plugin-quicklaunch).
60Currently there are two ways to deal with this. Some themes like e. g. `Frost` come with handles at the plugins' left end providing the regular context menu. Also, it can be assumed at least one plugin is included in the panel that's always featuring the regular context menu like e. g. plugin-mainmenu. Either way pane "Widgets" of "Configure Panel" can be accessed and used to configure the particular plugin.
61
62### Translation
63
64Translations can be done in [LXQt-Weblate](https://translate.lxqt-project.org/projects/lxqt-panel/)
65
66<a href="https://translate.lxqt-project.org/projects/lxqt-panel/">
67<img src="https://translate.lxqt-project.org/widgets/lxqt-panel/-/panel/multi-auto.svg" alt="Translation status" />
68</a>
69
70