LXQt
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 Razor-qt projects merged creating LXQt.
Prerequisites
- Install Alpine Linux
- Create a user account (optional but recommended)
- Enable the Community repository
- Install Xorg
Basic LXQt Desktop Installation
# 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
Starting dbus (desktop bus) service:
# rc-service dbus start
Enabling dbus to start on boot:
# rc-update add dbus
If dbus is not running it leads to issues like missing icons and keyboard shortcuts.
Enabling udev service:
# setup-devd udev
Starting LXQt
With a display manager (DM)
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 may be started with:
# startlxqt
Localized keyboard layout
Preferences → LXQt Settings → Keyboard and Mouse → Keyboard Layout
Allowing shut down and reboot
To enable users to shut down the machine or reboot, the packages elogind and polkit-elogind need to be installed.
# apk add elogind polkit-elogind
A reboot is required to let it take effect.
Auto-mounting USB drives
To enable automatic mounting of USB drives, install these packages:
# apk add gvfs udisks2
Depending on what devices you intend to mount, some additional packages may be needed:
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:
# apk info -d gvfs-*
Network browsing
For browsing of network shares within LXQt that works with file associations, you can install the gvfs packages for the network protocols you use.
For example, to browse in a SMB/cifs windows network:
# 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:)
# apk add gvfs-fuse
The OpenRC script for fuse is in a separate package.
# apk add fuse-openrc
Then the fuse service can be started manually.
# rc-service fuse start
If it works, the fuse service can be added to start up automatically at boot time:
# rc-update add fuse
Enabling privilege escalation GUI
To enable the privilege escalation GUI for a doas/sudo user, you need to install elogind, polkit-elogind, and sddm.
To have elogind run, either make them start automatically at system start:
# rc-update add elogind
or start them manually for this time only:
# rc-service elogind start
Panel Widgets
If you cannot add the CPU and System Statistics widgets to the panel, make sure libstatgrab and libsysstat are installed.
Troubleshooting
Missing Icons and Fonts
By default a Desktop Environments needs icons. adwaita-icon-theme is a good start.
# apk add adwaita-icon-theme
See Fonts for more information on fonts.
Optional packages
Appearance Tweaking
Adding the KEY=VAL QT_QPA_PLATFORMTHEME=lxqt
to the Environment section of the Session Settings is suggested by the LXQt developers.
Another option is to to isntall the package qt5ct (from testing) and appending the line QT_QPA_PLATFORMTHEME=qt5ct
to /etc/environment
or adding the same KEY=VAL to the environmental settings in the Environment section of the Session Settings will allow you to achieve a unified appearance between apps.
Documentation
- lxqt-config-doc
- lxqt-openssh-askpass-doc
- lxqt-panel-doc
- lxqt-policykit-doc
- lxqt-runner-doc
- lxqt-session-doc
- lxqt-sudo-doc