LXQt: Difference between revisions

From Alpine Linux
(first pass, needs structuring and perhaps images)
 
(54 intermediate revisions by 6 users not shown)
Line 1: Line 1:
'''[https://lxqt-project.org/ LXQt]''' is a lightweight QT based desktop environment, LXQt was originally a port of LXDE to QT (called LXDE-Qt), it was created due to LXDE maintainer Hong Jen Yee being dissatisfied with GTK 3, on 21 July 2013 the LXDE(-Qt) and [https://en.wikipedia.org/wiki/Razor-qt Razor-qt] projects merged creating LXQt.
{{TOC right}}


= Prerequisites =
[[File:LXQt Minimal Installation.png | thumb | LXQt 1.3.0 Basic Install with Papirus icons]]


* [[Installation|Install]] Alpine Linux
'''[https://lxqt-project.org/ LXQt]''' is a lightweight QT based desktop environment.
* [[Setting_up_a_new_user#Creating_a_new_user|Create a user account]] (optional but recommended)
 
* [[Repositories#Enabling_the_community_repository|Enable the Community repository]]
== Prerequisites ==
{{:Include:Desktop prerequisites}}
* Enable [[Elogind]] service for handling privilege escalation and for shutting down
* [[Alpine_setup_scripts#setup-xorg-base|Install Xorg]]
* [[Alpine_setup_scripts#setup-xorg-base|Install Xorg]]
{{Tip|Except for the first two [[#Prerequisites|Prerequisites]], all the others are automatically handled, if desktop is [[#Installation using setup-desktop|installed using setup-desktop]] script.}}
== Installation using setup-desktop ==
{{:Include:Setup-desktop}}


= Basic LXQt Desktop Installation =
When lxqt is chosen, the {{ic|Setup-desktop}} script installs [[SDDM]] as display manager and completes all the steps listed in the [[#Manual installation|Manual installation]] and some of the steps in the [[#Configuration|Configuration]] section.


{{Cmd|# apk add lxqt-desktop lxqt-core lxqt-panel lxqt-admin lxqt-config lxqt-notificationd lxqt-powermanagement lxqt-themes lximage-qt openbox obconf-qt arandr dbus sddm sddm-openrc}}
== Manual installation ==


{{Note|By default LXQt usually uses [[Openbox]] as its window manager, but LXQt supports many different window managers, See: [https://github.com/lxqt/lxqt/wiki/ConfigWindowManagers ConfigWindowManagers - LXQt Github wiki]}}
Add the following basic packages for LXQt installation:{{Cmd|# apk add {{Pkg|lxqt-desktop}} {{Pkg|lximage-qt}} {{Pkg|pavucontrol-qt}} {{Pkg|font-dejavu}}}}


Starting dbus (desktop bus) service:
If using Xorg, the following packages are also suggested: {{Cmd|# apk add {{Pkg|arandr}} {{Pkg|obconf-qt}} {{Pkg|screengrab}} {{Pkg|sddm}}}}
{{Cmd|# rc-service dbus start}}
{{Note|By default LXQt on Xorg uses [[Openbox]] as its window manager (it is a dependency of the {{Pkg|lxqt-desktop}} package). 
LXQt supports many different window managers and wayland compositors. Openbox has not been maintained for 9 years. Similar window managers are JWM and PeKWM. For additional Window Manager options see: [https://github.com/lxqt/lxqt/wiki/ConfigWindowManagers Window Managers Configuration on the LXQt GitHub wiki]}}


Enabling dbus to start on boot:
If using wayland, the following packages are suggested: {{cmd|# apk add {{Pkg|lxqt-wayland-session}} {{Pkg|swayidle}} {{Pkg|swaybg}} {{Pkg|wlopm}} {{Pkg|labwc}}}}  
{{Cmd|# rc-update add dbus}}


If dbus is not running it leads to issues like missing icons and keyboard shortcuts.
{{Note|labwc is used for the initial configuration (e.g. picking compositor and screen locker) on wayland, but can safely be uninstalled afterwards if a different compositor is installed and selected. For additional compositor options see: [https://github.com/lxqt/lxqt/wiki/ConfigWaylandSettings LXQt Wayland Session on the LXQt GitHub wiki]}}


<br>
== Starting LXQt ==


Enabling udev service:
===  With a display manager ===
{{Cmd|# setup-devd udev}}


<br>
If the package {{Pkg|sddm}} has been installed, SDDM may be started to log in graphically with your new user.
 
= Starting LXQt =
 
== With a display manager (DM) ==
 
If the package <code>sddm</code> has been installed, the sddm display manager may be started to log in graphically with your new user.
{{Cmd|# rc-service sddm start}}
{{Cmd|# rc-service sddm start}}


Line 39: Line 37:
{{Cmd|# rc-update add sddm}}
{{Cmd|# rc-update add sddm}}


== From the command line ==
=== From the command line ===


LXQt may be started with:
LXQt for X11 may be started with:
{{cmd|# startlxqt}}
{{cmd|$ startlxqt}}
 
LXQt for Wayland may be started with:
{{cmd|$ startlxqtwayland}}


== Localized keyboard layout ==
== Localized keyboard layout ==


Preferences->LXQt Settings->Keyboard and Mouse->"Keyboard layout"
Preferences LXQt Settings Keyboard and Mouse Keyboard Layout


== Allowing shut down and reboot ==
== Configuration ==  


To enable users to shut down the machine or reboot, the packages {{Pkg|elogind}} and {{Pkg|polkit-elogind}} need to be installed.
=== File management ===


{{Cmd|# apk add elogind polkit-elogind}}
Install the necessary [[File management]] packages for automounting of removable storage and browsing of network shares within LXQt that works seamlessly with file associations.


A reboot is required to let it take effect.
If the LXQt sessions are already in progress, they need to be restarted for the changes to take effect, i.e. log out and log in again.


== Auto-mounting USB drives ==
=== Enabling privilege escalation GUI ===


To enable automatic mounting of USB drives, install these packages:
To enable the privilege escalation GUI for a doas/sudo user, along with the [[#Prerequisites|Prerequisites]], you need to start LXQt session using [[#With a display manager|sddm]] and ensure that {{Pkg|lxqt-policykit}} package is installed.
{{Cmd|# apk add gvfs udisks2}}
Depending on what devices you intend to mount, some additional packages may be needed:
{{Cmd|ntfs-3g        Stable, full-featured, read-write NTFS (driver)
gvfs-cdda      CDDA support for gvfs
gvfs-afp      AFP support for gvfs
gvfs-goa      GNOME Online Accounts support for gvfs
gvfs-mtp      MTP support for gvfs
gvfs-smb      Windows fileshare support for gvfs
gvfs-lang      Languages for package gvfs
gvfs-afc      Apple mobile devices support for gvfs
gvfs-nfs      NFS support for gvfs
gvfs-dev      Backends for the gio framework in GLib (development files)
gvfs-archive  Archiving support for gvfs
gvfs-dav      WebDAV support for gvfs
gvfs-fuse      FUSE support for gvfs
gvfs-gphoto2  gphoto2 support for gvfs
gvfs-avahi    DNS-SD support for gvfs}}


To list descriptions of all gvfs- packages:
=== Screen Compositor ===
{{cmd|apk info -d gvfs-*
}}


== Network browsing ==
To enable different effects (transparency, for example) {{Pkg|picom}} can be used.


For browsing of network shares within LXQt that works with file associations, you can install the gvfs packages for the network protocols you use.
After installation, add it to the ''Autostart'' section of the '''LXQt Session Settings'''.


For example, to browse in a SMB/cifs windows network:
The default configuration is available in {{Path|/etc/xdg/picom.conf.example}}. For modifications, it can be copied to {{Path|~/.config/picom/picom.conf}} or {{Path|~/.config/picom.conf}}.
{{Cmd|# apk add gvfs-smb}}


(Check: If the above may already be sufficient for gvfs to initiate the fuse kernel module. Else, try to identify if there are necessary steps in:)
Either modify the config file to your taste, or change the Autostart command line options. For example, <code>picom --vsync -r 12 --no-fading-openclose -b</code>.


{{Cmd|# apk add gvfs-fuse}}
=== Panel Widgets ===


The OpenRC script for fuse is in a separate package.
If you cannot add the CPU and System Statistics widgets to the panel, make sure {{Pkg|libstatgrab}} and {{Pkg|libsysstat}} are installed.
{{Cmd|# apk add fuse-openrc}}


Then the fuse service can be started manually.
=== Appearance Tweaking ===
{{Cmd|# rc-service fuse start}}


If it works, the fuse service can be added to start up automatically at boot time:
==== Location of appearance-related configuration files ====
{{Cmd|# rc-update add fuse}}


== Enabling privilege escalation GUI ==
User-specific configuration is stored in {{Path|~/.config/lxqt/}}.


To enable the privilege escalation GUI for a doas/sudo user, you need to install <code>elogind</code>, <code>polkit-elogind</code>, and <code>sddm</code>.
LXQt themes are [https://doc.qt.io/qt-6/stylesheet.html qss stylesheets]. They are located in {{Path|/usr/share/lxqt/themes/}} or {{Path|~/.local/share/lxqt/themes}}.


To have elogind run, either make them start automatically at system start:
Qt Palette colors can be modified in lxqt-config-appearence > Widget Style > Qt Palette. Custom palettes are saved in {{Path|~/.local/share/lxqt/palettes/}}.


{{Cmd|doas rc-update add elogind}}
==== Additional QT Styles ====


or start them manually for this time only:
Several packages provide additional QT Styles:
{{Cmd|# apk add {{Pkg|adwaita-qt}} {{Pkg|breeze}} {{Pkg|oxygen}}}}


{{Cmd|doas rc-service elogind start }}
They also provide additional cursors.


= Troubleshooting =
==== Consistant Theming ====


== Missing Icons ==
Adding the KEY=VAL <code>QT_QPA_PLATFORMTHEME=lxqt</code> to the Environment section of the Session Settings [https://github.com/lxqt/lxqt-qtplugin#configuration-usage is suggested by the LXQt developers]. Then every Qt5 program can load the theme plugin.


By default a Desktop Environments needs icons. {{Pkg|adwaita-icon-theme}} is a good start.
Another option, however, is to to install the package {{Pkg|qt5ct}} (from [[Repositories | Testing]]) and appending the line <code>QT_QPA_PLATFORMTHEME=qt5ct</code> to the environmental settings in the Environment section of the Session Settings will allow you to achieve a unified appearance between apps. Then, in the LXQt Appearance Configuration, under Widget Style, set Qt Style to <code>qt5ct-style</code>.


{{Cmd|# apk add adwaita-icon-theme}}
==== Additional Packages ====
 
<br>


= Optional packages =
When using themes found around the web, it is possible that they are dependant on different packages. Consider using {{Pkg|qt5-qtgraphicaleffects}}, {{Pkg|qt5-qtquickcontrols}}, and {{Pkg|qt5-qtquickcontrols2}}.


== Documentation ==
== Documentation packages ==


* {{Pkg|lxqt-config-doc}}  
* {{Pkg|lxqt-config-doc}}  
Line 135: Line 111:
* {{Pkg|lxqt-session-doc}}
* {{Pkg|lxqt-session-doc}}
* {{Pkg|lxqt-sudo-doc}}
* {{Pkg|lxqt-sudo-doc}}
* {{Pkg|lxqt-wayland-session-doc}}


== Development files ==
== Development files ==


* {{Pkg|libdbusmenu-lxqt-dev}}
* {{Pkg|liblxqt-dev}}
* {{Pkg|lxqt-globalkeys-dev}}  
* {{Pkg|lxqt-globalkeys-dev}}  
* {{Pkg|lxqt-panel-dev}}
* {{Pkg|lxqt-panel-dev}}
* {{Pkg|lxqt-build-tools}}
== Help wanted ==
The following LXQt components are not yet packaged in Alpine Linux:
* lxqt_wallet


== Misc ==
The following LXQt components are out-of-date:
* obconf-qt (need an X11+openbox user to build the latest version and test it)


* {{Pkg|lxqt-build-tools}}
== Troubleshooting ==
 
=== Unable to shut down and reboot ===
 
If users are unable to shut down the machine or reboot, ensure that [[elogind]] service is enabled.
 
=== Missing Icons and Fonts ===
 
By default a Desktop Environment needs icons. {{Pkg|adwaita-icon-theme}} is a good start.
{{Cmd|# apk add adwaita-icon-theme}}
 
See [[Fonts]] for more information on fonts.


= See Also =
== See also ==


* [[Installation#Post-Install|Post Install]]
* [[Installation#Post-Installation|Post Install]]
* [[Desktop environments and Window managers]]
* [[Desktop environments and Window managers]]
* [https://lxqt.github.io/ LXQt Homepage]
* [https://github.com/lxqt/lxqt LXQt on GitHub]
* [https://wiki.archlinux.org/title/LXQt LXQt entry on ArchWiki]
* [https://github.com/sddm/sddm SDDM Project on GitHub]


[[Category:Desktop]]
[[Category:Desktop Environments]]

Latest revision as of 15:27, 25 May 2025

LXQt 1.3.0 Basic Install with Papirus icons

LXQt is a lightweight QT based desktop environment.

Prerequisites

Tip: Except for the first two Prerequisites, all the others are automatically handled, if desktop is installed using setup-desktop script.

Installation using setup-desktop

The Alpine Linux script for quickly setting up a desktop is:

# setup-desktop

On running the above command, you will be prompted to select a desktop environment.

Which desktop environment? ('gnome', 'plasma', 'xfce', 'mate', 'sway', 'lxqt' or 'none') [none]

Once you have chosen a desktop environment, this script installs the chosen desktop along with necessary packages, firefox browser and adds necessary services to run on startup. You can reboot when complete, and the system will boot into a graphical login screen with the chosen desktop environment, except for sway. To view the packages installed by the script: $ cat /usr/sbin/setup-desktop

When lxqt is chosen, the Setup-desktop script installs SDDM as display manager and completes all the steps listed in the Manual installation and some of the steps in the Configuration section.

Manual installation

Add the following basic packages for LXQt installation:

# apk add lxqt-desktop lximage-qt pavucontrol-qt font-dejavu

If using Xorg, the following packages are also suggested:

# apk add arandr obconf-qt screengrab sddm

Note: By default LXQt on Xorg uses Openbox as its window manager (it is a dependency of the lxqt-desktop package). LXQt supports many different window managers and wayland compositors. Openbox has not been maintained for 9 years. Similar window managers are JWM and PeKWM. For additional Window Manager options see: Window Managers Configuration on the LXQt GitHub wiki

If using wayland, the following packages are suggested:

# apk add lxqt-wayland-session swayidle swaybg wlopm labwc

Note: labwc is used for the initial configuration (e.g. picking compositor and screen locker) on wayland, but can safely be uninstalled afterwards if a different compositor is installed and selected. For additional compositor options see: LXQt Wayland Session on the LXQt GitHub wiki

Starting LXQt

With a display manager

If the package sddm has been installed, SDDM may be started to log in graphically with your new user.

# rc-service sddm start

After correct operation is verified, sddm can be enabled to start up during boot:

# rc-update add sddm

From the command line

LXQt for X11 may be started with:

$ startlxqt

LXQt for Wayland may be started with:

$ startlxqtwayland

Localized keyboard layout

Preferences → LXQt Settings → Keyboard and Mouse → Keyboard Layout

Configuration

File management

Install the necessary File management packages for automounting of removable storage and browsing of network shares within LXQt that works seamlessly with file associations.

If the LXQt sessions are already in progress, they need to be restarted for the changes to take effect, i.e. log out and log in again.

Enabling privilege escalation GUI

To enable the privilege escalation GUI for a doas/sudo user, along with the Prerequisites, you need to start LXQt session using sddm and ensure that lxqt-policykit package is installed.

Screen Compositor

To enable different effects (transparency, for example) picom can be used.

After installation, add it to the Autostart section of the LXQt Session Settings.

The default configuration is available in /etc/xdg/picom.conf.example. For modifications, it can be copied to ~/.config/picom/picom.conf or ~/.config/picom.conf.

Either modify the config file to your taste, or change the Autostart command line options. For example, picom --vsync -r 12 --no-fading-openclose -b.

Panel Widgets

If you cannot add the CPU and System Statistics widgets to the panel, make sure libstatgrab and libsysstat are installed.

Appearance Tweaking

Location of appearance-related configuration files

User-specific configuration is stored in ~/.config/lxqt/.

LXQt themes are qss stylesheets. They are located in /usr/share/lxqt/themes/ or ~/.local/share/lxqt/themes.

Qt Palette colors can be modified in lxqt-config-appearence > Widget Style > Qt Palette. Custom palettes are saved in ~/.local/share/lxqt/palettes/.

Additional QT Styles

Several packages provide additional QT Styles:

# apk add adwaita-qt breeze oxygen

They also provide additional cursors.

Consistant Theming

Adding the KEY=VAL QT_QPA_PLATFORMTHEME=lxqt to the Environment section of the Session Settings is suggested by the LXQt developers. Then every Qt5 program can load the theme plugin.

Another option, however, is to to install the package qt5ct (from Testing) and appending the line QT_QPA_PLATFORMTHEME=qt5ct to the environmental settings in the Environment section of the Session Settings will allow you to achieve a unified appearance between apps. Then, in the LXQt Appearance Configuration, under Widget Style, set Qt Style to qt5ct-style.

Additional Packages

When using themes found around the web, it is possible that they are dependant on different packages. Consider using qt5-qtgraphicaleffects, qt5-qtquickcontrols, and qt5-qtquickcontrols2.

Documentation packages

Development files

Help wanted

The following LXQt components are not yet packaged in Alpine Linux:

  • lxqt_wallet

The following LXQt components are out-of-date:

  • obconf-qt (need an X11+openbox user to build the latest version and test it)

Troubleshooting

Unable to shut down and reboot

If users are unable to shut down the machine or reboot, ensure that elogind service is enabled.

Missing Icons and Fonts

By default a Desktop Environment needs icons. adwaita-icon-theme is a good start.

# apk add adwaita-icon-theme

See Fonts for more information on fonts.

See also