aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/desktops/lxqt
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/desktops/lxqt')
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/compton-conf/default.nix39
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/default.nix111
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/libfm-qt/default.nix43
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix41
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix33
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix25
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lximage-qt/default.nix39
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-about/default.nix35
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-admin/default.nix41
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-archiver/default.nix39
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake7
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix34
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh15
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-config/default.nix52
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-notificationd/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-panel/default.nix59
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-policykit/default.nix43
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix38
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix45
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-runner/default.nix42
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-session/default.nix40
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-sudo/default.nix37
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/lxqt-themes/default.nix26
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix40
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/pavucontrol-qt/default.nix36
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/pcmanfm-qt/default.nix38
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix25
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/qps/default.nix26
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix34
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix25
-rw-r--r--nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix38
-rwxr-xr-xnixpkgs/pkgs/desktops/lxqt/update.sh39
34 files changed, 1293 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/desktops/lxqt/compton-conf/default.nix b/nixpkgs/pkgs/desktops/lxqt/compton-conf/default.nix
new file mode 100644
index 00000000000..e639996f7c6
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/compton-conf/default.nix
@@ -0,0 +1,39 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools, lxqt,
+ libconfig }:
+
+mkDerivation rec {
+ pname = "compton-conf";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0bx21r83ahmsqf7bm1h17pi4y9js1iqsv7nwnlq58rc0ddkkhcdb";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt.lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ libconfig
+ ];
+
+ preConfigure = ''
+ substituteInPlace autostart/CMakeLists.txt \
+ --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg" \
+ '';
+
+ meta = with lib; {
+ description = "GUI configuration tool for compton X composite manager";
+ homepage = https://github.com/lxqt/compton-conf;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/default.nix b/nixpkgs/pkgs/desktops/lxqt/default.nix
new file mode 100644
index 00000000000..6b03c2a6c9e
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/default.nix
@@ -0,0 +1,111 @@
+{ pkgs, makeScope, libsForQt5 }:
+
+let
+ packages = self: with self; {
+
+ # For compiling information, see:
+ # - https://github.com/lxqt/lxqt/wiki/Building-from-source
+
+ ### BASE
+ libqtxdg = callPackage ./libqtxdg { };
+ lxqt-build-tools = callPackage ./lxqt-build-tools { };
+ libsysstat = callPackage ./libsysstat { };
+ liblxqt = callPackage ./liblxqt { };
+
+ ### CORE 1
+ libfm-qt = callPackage ./libfm-qt { };
+ lxqt-about = callPackage ./lxqt-about { };
+ lxqt-admin = callPackage ./lxqt-admin { };
+ lxqt-config = callPackage ./lxqt-config { };
+ lxqt-globalkeys = callPackage ./lxqt-globalkeys { };
+ lxqt-notificationd = callPackage ./lxqt-notificationd { };
+ lxqt-openssh-askpass = callPackage ./lxqt-openssh-askpass { };
+ lxqt-policykit = callPackage ./lxqt-policykit { };
+ lxqt-powermanagement = callPackage ./lxqt-powermanagement { };
+ lxqt-qtplugin = callPackage ./lxqt-qtplugin { };
+ lxqt-session = callPackage ./lxqt-session { };
+ lxqt-sudo = callPackage ./lxqt-sudo { };
+ lxqt-themes = callPackage ./lxqt-themes { };
+ pavucontrol-qt = libsForQt5.callPackage ./pavucontrol-qt { };
+ qtermwidget = callPackage ./qtermwidget { };
+
+ ### CORE 2
+ lxqt-panel = callPackage ./lxqt-panel { };
+ lxqt-runner = callPackage ./lxqt-runner { };
+ pcmanfm-qt = callPackage ./pcmanfm-qt { };
+
+ ### OPTIONAL
+ qterminal = callPackage ./qterminal { };
+ compton-conf = pkgs.qt5.callPackage ./compton-conf { };
+ obconf-qt = callPackage ./obconf-qt { };
+ lximage-qt = callPackage ./lximage-qt { };
+ qps = callPackage ./qps { };
+ screengrab = callPackage ./screengrab { };
+ qlipper = callPackage ./qlipper { };
+ lxqt-archiver = callPackage ./lxqt-archiver { };
+
+ preRequisitePackages = [
+ pkgs.gvfs # virtual file systems support for PCManFM-QT
+ pkgs.libsForQt5.kwindowsystem # provides some QT5 plugins needed by lxqt-panel
+ pkgs.libsForQt5.libkscreen # provides plugins for screen management software
+ pkgs.libfm
+ pkgs.libfm-extra
+ pkgs.lxmenu-data
+ pkgs.menu-cache
+ pkgs.openbox # default window manager
+ pkgs.qt5.qtsvg # provides QT5 plugins for svg icons
+ ];
+
+ corePackages = [
+ ### BASE
+ libqtxdg
+ libsysstat
+ liblxqt
+
+ ### CORE 1
+ libfm-qt
+ lxqt-about
+ lxqt-admin
+ lxqt-config
+ lxqt-globalkeys
+ lxqt-notificationd
+ lxqt-openssh-askpass
+ lxqt-policykit
+ lxqt-powermanagement
+ lxqt-qtplugin
+ lxqt-session
+ lxqt-sudo
+ lxqt-themes
+ pavucontrol-qt
+
+ ### CORE 2
+ lxqt-panel
+ lxqt-runner
+ pcmanfm-qt
+ ];
+
+ optionalPackages = [
+ ### LXQt project
+ qterminal
+ compton-conf
+ obconf-qt
+ lximage-qt
+ lxqt-archiver
+
+ ### QtDesktop project
+ qps
+ screengrab
+
+ ### Qlipper
+ qlipper
+
+ ### Default icon theme
+ pkgs.oxygen-icons5
+
+ ### Screen saver
+ pkgs.xscreensaver
+ ];
+
+ };
+
+in makeScope libsForQt5.newScope packages
diff --git a/nixpkgs/pkgs/desktops/lxqt/libfm-qt/default.nix b/nixpkgs/pkgs/desktops/lxqt/libfm-qt/default.nix
new file mode 100644
index 00000000000..c214f0b3dcd
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/libfm-qt/default.nix
@@ -0,0 +1,43 @@
+{
+ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools,
+ pcre, libexif, xorg, libfm, menu-cache,
+ qtx11extras, qttools
+}:
+
+mkDerivation rec {
+ pname = "libfm-qt";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "00rn5i16h659zyp1dx213nc3jz7rx9phiw71zf6nspxzxsb8w2sc";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ pcre
+ libexif
+ xorg.libpthreadstubs
+ xorg.libxcb
+ xorg.libXdmcp
+ qtx11extras
+ qttools
+ libfm
+ menu-cache
+ ];
+
+ meta = with lib; {
+ description = "Core library of PCManFM-Qt (Qt binding for libfm)";
+ homepage = https://github.com/lxqt/libfm-qt;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix b/nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix
new file mode 100644
index 00000000000..d94b1ac0d03
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix
@@ -0,0 +1,41 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtx11extras,
+ qttools, qtsvg, libqtxdg, polkit-qt, kwindowsystem, xorg }:
+
+mkDerivation rec {
+ pname = "liblxqt";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0g2502lcws5j74p82qhfryz9n51cvi85hb50r5s227xhkv91q65k";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtx11extras
+ qttools
+ qtsvg
+ polkit-qt
+ kwindowsystem
+ libqtxdg
+ xorg.libXScrnSaver
+ ];
+
+ postPatch = ''
+ sed -i "s|\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}|''${out}/share/polkit-1/actions|" CMakeLists.txt
+ '';
+
+ meta = with lib; {
+ description = "Core utility library for all LXQt components";
+ homepage = https://github.com/lxqt/liblxqt;
+ license = licenses.lgpl21Plus;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix b/nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix
new file mode 100644
index 00000000000..799e4286803
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix
@@ -0,0 +1,33 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase, qtsvg, lxqt-build-tools }:
+
+mkDerivation rec {
+ pname = "libqtxdg";
+ version = "3.3.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0y3s0hva64m64j9lqgnja1li8zhlywqzv8xwjg8pyd2nr9h918db";
+ };
+
+ nativeBuildInputs = [ cmake lxqt-build-tools ];
+
+ buildInputs = [ qtbase qtsvg ];
+
+ preConfigure = ''
+ cmakeFlagsArray+=(
+ "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=$out/$qtPluginPrefix"
+ "-DCMAKE_INSTALL_INCLUDEDIR=include"
+ "-DCMAKE_INSTALL_LIBDIR=lib"
+ )
+ '';
+
+ meta = with lib; {
+ description = "Qt implementation of freedesktop.org xdg specs";
+ homepage = https://github.com/lxqt/libqtxdg;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix b/nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix
new file mode 100644
index 00000000000..dc2ce54d6ae
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix
@@ -0,0 +1,25 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase, lxqt-build-tools }:
+
+mkDerivation rec {
+ pname = "libsysstat";
+ version = "0.4.2";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "10h9n7km7yx8bnmzxi4nn1yqq03hizjkrx4745j0mczy7niiffsz";
+ };
+
+ nativeBuildInputs = [ cmake lxqt-build-tools ];
+
+ buildInputs = [ qtbase ];
+
+ meta = with lib; {
+ description = "Library used to query system info and statistics";
+ homepage = https://github.com/lxqt/libsysstat;
+ license = licenses.lgpl21Plus;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lximage-qt/default.nix b/nixpkgs/pkgs/desktops/lxqt/lximage-qt/default.nix
new file mode 100644
index 00000000000..33e6a1f99e5
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lximage-qt/default.nix
@@ -0,0 +1,39 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools,
+ qtx11extras, qtsvg, xorg, lxqt-build-tools, libfm-qt, libexif }:
+
+mkDerivation rec {
+ pname = "lximage-qt";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "175l2w5w6iag01v05jq90pxx0al24wpw3mgsbcgqhl4z6h860r32";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ libfm-qt
+ xorg.libpthreadstubs
+ xorg.libXdmcp
+ libexif
+ ];
+
+ meta = with lib; {
+ description = "The image viewer and screenshot tool for lxqt";
+ homepage = https://github.com/lxqt/lximage-qt;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-about/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-about/default.nix
new file mode 100644
index 00000000000..595141daffc
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-about/default.nix
@@ -0,0 +1,35 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtx11extras, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg }:
+
+mkDerivation rec {
+ pname = "lxqt-about";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0dj2rhbhnkzmv1iqqyq0bcp03imwnvxdr7rnpqnrs9kkjacm8zvr";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtx11extras
+ qttools
+ qtsvg
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ ];
+
+ meta = with lib; {
+ description = "Dialogue window providing information about LXQt and the system it's running on";
+ homepage = https://github.com/lxqt/lxqt-about;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-admin/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-admin/default.nix
new file mode 100644
index 00000000000..a49bb120791
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-admin/default.nix
@@ -0,0 +1,41 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtx11extras, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg, polkit-qt }:
+
+mkDerivation rec {
+ pname = "lxqt-admin";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "121qj46app2bqdr24g5sz2mdjfd9w86wpgkwap46s0zgxm4li44i";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtx11extras
+ qttools
+ qtsvg
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ polkit-qt
+ ];
+
+ postPatch = ''
+ sed "s|\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}|''${out}/share/polkit-1/actions|" \
+ -i lxqt-admin-user/CMakeLists.txt
+ '';
+
+ meta = with lib; {
+ description = "LXQt system administration tool";
+ homepage = https://github.com/lxqt/lxqt-admin;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-archiver/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-archiver/default.nix
new file mode 100644
index 00000000000..da90826116f
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-archiver/default.nix
@@ -0,0 +1,39 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, json-glib, libfm-qt, qtbase, qttools, qtx11extras }:
+
+mkDerivation rec {
+ pname = "lxqt-archiver";
+ version = "0.0.96";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1vc9pzxrhznp65gdkzj3fzzivfqy712mwcxp3r25ar59d54alfpj";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ json-glib
+ libfm-qt
+ qtbase
+ qttools
+ qtx11extras
+ ];
+
+ cmakeFlags = [ "-DPULL_TRANSLATIONS=NO" ];
+
+ hardeningDisable = [ "format" ];
+
+ meta = with lib; {
+ description = "Archive tool for the LXQt desktop environment";
+ homepage = https://github.com/lxqt/lxqt-archiver/;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ jchw ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake
new file mode 100644
index 00000000000..fd7ef927f8b
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/LXQtConfigVars.cmake
@@ -0,0 +1,7 @@
+add_definitions("-DLXQT_RELATIVE_SHARE_DIR=\"${LXQT_RELATIVE_SHARE_DIR}\"")
+add_definitions("-DLXQT_SHARE_DIR=\"${LXQT_SHARE_DIR}\"")
+add_definitions("-DLXQT_RELATIVE_SHARE_TRANSLATIONS_DIR=\"${LXQT_RELATIVE_TRANSLATIONS_DIR}\"")
+add_definitions("-DLXQT_SHARE_TRANSLATIONS_DIR=\"${LXQT_TRANSLATIONS_DIR}\"")
+add_definitions("-DLXQT_GRAPHICS_DIR=\"${LXQT_GRAPHICS_DIR}\"")
+add_definitions("-DLXQT_ETC_XDG_DIR=\"${LXQT_ETC_XDG_DIR}\"")
+add_definitions("-DLXQT_DATA_DIR=\"${LXQT_DATA_DIR}\"")
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
new file mode 100644
index 00000000000..626c99fcf9c
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix
@@ -0,0 +1,34 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, glib }:
+
+mkDerivation rec {
+ pname = "lxqt-build-tools";
+ version = "0.6.0";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0i7m9s4g5rsw28vclc9nh0zcapx85cqfwxkx7rrw7wa12svy7pm2";
+ };
+
+ nativeBuildInputs = [ cmake pkgconfig setupHook ];
+
+ buildInputs = [ qtbase glib pcre ];
+
+ setupHook = ./setup-hook.sh;
+
+ # We're dependent on this macro doing add_definitions in most places
+ # But we have the setup-hook to set the values.
+ postInstall = ''
+ rm $out/share/cmake/lxqt-build-tools/modules/LXQtConfigVars.cmake
+ cp ${./LXQtConfigVars.cmake} $out/share/cmake/lxqt-build-tools/modules/LXQtConfigVars.cmake
+ '';
+
+ meta = with lib; {
+ description = "Various packaging tools and scripts for LXQt applications";
+ homepage = https://github.com/lxqt/lxqt-build-tools;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh
new file mode 100644
index 00000000000..e40765116e9
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/setup-hook.sh
@@ -0,0 +1,15 @@
+LXQtCMakePostHook() {
+ cmakeFlagsArray+=(
+ -DLXQT_LIBRARY_NAME=lxqt
+ -DLXQT_SHARE_DIR=$out/share/lxqt
+ -DLXQT_TRANSLATIONS_DIR=$out/share/lxqt/translations
+ -DLXQT_GRAPHICS_DIR=$out/share/lxqt/graphics
+ -DLXQT_ETC_XDG_DIR=$out/etc/xdg
+ -DLXQT_DATA_DIR=$out/share
+ -DLXQT_RELATIVE_SHARE_DIR=lxqt
+ -DLXQT_RELATIVE_SHARE_TRANSLATIONS_DIR=lxqt/translations
+ )
+
+}
+
+postHooks+=(LXQtCMakePostHook)
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-config/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-config/default.nix
new file mode 100644
index 00000000000..d775a93fff4
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-config/default.nix
@@ -0,0 +1,52 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qtbase,
+ qtx11extras, qttools, qtsvg, kwindowsystem, libkscreen, liblxqt,
+ libqtxdg, xorg }:
+
+mkDerivation rec {
+ pname = "lxqt-config";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0x1k08587i2pakxlrj2n0l82r179sfywnzn2cphxiy89r5zpn7vi";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qtx11extras
+ qttools
+ qtsvg
+ kwindowsystem
+ libkscreen
+ liblxqt
+ libqtxdg
+ xorg.libpthreadstubs
+ xorg.libXdmcp
+ xorg.libXScrnSaver
+ xorg.libxcb
+ xorg.libXcursor
+ xorg.xf86inputlibinput
+ xorg.xf86inputlibinput.dev
+ ];
+
+ postPatch = ''
+ sed -i "/\''${XORG_LIBINPUT_INCLUDE_DIRS}/a ${xorg.xf86inputlibinput.dev}/include/xorg" lxqt-config-input/CMakeLists.txt
+ '';
+
+ meta = with lib; {
+ description = "Tools to configure LXQt and the underlying operating system";
+ homepage = https://github.com/lxqt/lxqt-config;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
new file mode 100644
index 00000000000..d836ddeea38
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix
@@ -0,0 +1,36 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, liblxqt, libqtxdg }:
+
+mkDerivation rec {
+ pname = "lxqt-globalkeys";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0q7hfbs4dhsgyzch2msq2hsfzzfgbc611ki9x1x132n7zqk76pmp";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ ];
+
+ meta = with lib; {
+ description = "Daemon used to register global keyboard shortcuts";
+ homepage = https://github.com/lxqt/lxqt-globalkeys;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-notificationd/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
new file mode 100644
index 00000000000..81a6a423a21
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-notificationd/default.nix
@@ -0,0 +1,36 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg, qtx11extras }:
+
+mkDerivation rec {
+ pname = "lxqt-notificationd";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1ihaf2i361j2snyy6kg8ccpfnc8hppvacmxjqzb1lpyaf1ajd139";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtsvg
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ qtx11extras
+ ];
+
+ meta = with lib; {
+ description = "The LXQt notification daemon";
+ homepage = https://github.com/lxqt/lxqt-notificationd;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
new file mode 100644
index 00000000000..83048ed7d57
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix
@@ -0,0 +1,36 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtsvg, qtx11extras, kwindowsystem, liblxqt, libqtxdg }:
+
+mkDerivation rec {
+ pname = "lxqt-openssh-askpass";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "04jmvhhlhhspwzj4hfq7fnaa3h7h02z3rlq8p55hzlzkvshqqh1q";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ ];
+
+ meta = with lib; {
+ description = "GUI to query passwords on behalf of SSH agents";
+ homepage = https://github.com/lxqt/lxqt-openssh-askpass;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-panel/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-panel/default.nix
new file mode 100644
index 00000000000..4558d36e554
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-panel/default.nix
@@ -0,0 +1,59 @@
+{
+ lib, mkDerivation, fetchFromGitHub,
+ cmake, pkgconfig, lxqt-build-tools,
+ qtbase, qttools, qtx11extras, qtsvg, libdbusmenu, kwindowsystem, solid,
+ kguiaddons, liblxqt, libqtxdg, lxqt-globalkeys, libsysstat,
+ xorg, libstatgrab, lm_sensors, libpulseaudio, alsaLib, menu-cache,
+ lxmenu-data, pcre, libXdamage
+}:
+
+mkDerivation rec {
+ pname = "lxqt-panel";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1py3i7qgm6h2iwjwqfjml1rp06s7ls1d7z5i9iizsmfshdzkaq86";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ libdbusmenu
+ kwindowsystem
+ solid
+ kguiaddons
+ liblxqt
+ libqtxdg
+ lxqt-globalkeys
+ libsysstat
+ xorg.libpthreadstubs
+ xorg.libXdmcp
+ libstatgrab
+ lm_sensors
+ libpulseaudio
+ alsaLib
+ menu-cache
+ lxmenu-data
+ pcre
+ libXdamage
+ ];
+
+ meta = with lib; {
+ description = "The LXQt desktop panel";
+ homepage = https://github.com/lxqt/lxqt-panel;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-policykit/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-policykit/default.nix
new file mode 100644
index 00000000000..d501d83947e
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-policykit/default.nix
@@ -0,0 +1,43 @@
+{
+ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools,
+ qtbase, qttools, qtx11extras, qtsvg, polkit-qt, kwindowsystem, liblxqt,
+ libqtxdg, pcre
+}:
+
+mkDerivation rec {
+ pname = "lxqt-policykit";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0mh9jw09r0mk8xmgvmzk3yyfix0pzqya28rcx71fqjpbdv1sc44l";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ polkit-qt
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ pcre
+ ];
+
+ meta = with lib; {
+ description = "The LXQt PolicyKit agent";
+ homepage = https://github.com/lxqt/lxqt-policykit;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
new file mode 100644
index 00000000000..9f8c66d826c
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix
@@ -0,0 +1,38 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, solid, kidletime, liblxqt, libqtxdg }:
+
+mkDerivation rec {
+ pname = "lxqt-powermanagement";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1nhp4a28bpczhwz8b8da355zsxr1qwmkrm3bwllwp39liw947clx";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ kwindowsystem
+ solid
+ kidletime
+ liblxqt
+ libqtxdg
+ ];
+
+ meta = with lib; {
+ description = "Power management module for LXQt";
+ homepage = https://github.com/lxqt/lxqt-powermanagement;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
new file mode 100644
index 00000000000..604fc570e1f
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix
@@ -0,0 +1,45 @@
+{
+ lib, mkDerivation, fetchFromGitHub,
+ cmake, lxqt-build-tools,
+ qtbase, qtx11extras, qttools, qtsvg, libdbusmenu, libqtxdg, libfm-qt
+}:
+
+mkDerivation rec {
+ pname = "lxqt-qtplugin";
+ version = "0.14.0";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "16n50lxnya03zcviw65sy5dyg9dsrn64k91mrqfvraf6d90md4al";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qtx11extras
+ qttools
+ qtsvg
+ libdbusmenu
+ libqtxdg
+ libfm-qt
+ ];
+
+ postPatch = ''
+ substituteInPlace src/CMakeLists.txt \
+ --replace "DESTINATION \"\''${QT_PLUGINS_DIR}" "DESTINATION \"$qtPluginPrefix"
+ '';
+
+ meta = with lib; {
+ description = "LXQt Qt platform integration plugin";
+ homepage = https://github.com/lxqt/lxqt-qtplugin;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-runner/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-runner/default.nix
new file mode 100644
index 00000000000..d737bd91c91
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-runner/default.nix
@@ -0,0 +1,42 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qtbase, qttools, qtsvg, kwindowsystem, liblxqt, libqtxdg, lxqt-globalkeys, qtx11extras,
+menu-cache, muparser, pcre }:
+
+mkDerivation rec {
+ pname = "lxqt-runner";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "01a8ycpkzcbh85y4025pd3nbpnzxh98ll1xwz4ykz13yvm0l2n1w";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtsvg
+ qtx11extras
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ lxqt-globalkeys
+ menu-cache
+ muparser
+ pcre
+ ];
+
+ meta = with lib; {
+ description = "Tool used to launch programs quickly by typing their names";
+ homepage = https://github.com/lxqt/lxqt-runner;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-session/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-session/default.nix
new file mode 100644
index 00000000000..fbf2c7ddde7
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-session/default.nix
@@ -0,0 +1,40 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt-build-tools, qtbase, qttools, qtsvg, qtx11extras, kwindowsystem, liblxqt, libqtxdg, xorg, xdg-user-dirs }:
+
+mkDerivation rec {
+ pname = "lxqt-session";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0s6b0lblb795zz1p7sy677c1iznhmdzc4vw3jkc2agmsrhm7if7s";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtsvg
+ qtx11extras
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ xorg.libpthreadstubs
+ xorg.libXdmcp
+ xdg-user-dirs
+ ];
+
+ meta = with lib; {
+ description = "An alternative session manager ported from the original razor-session";
+ homepage = https://github.com/lxqt/lxqt-session;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-sudo/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-sudo/default.nix
new file mode 100644
index 00000000000..91159398b8f
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-sudo/default.nix
@@ -0,0 +1,37 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, liblxqt, libqtxdg, sudo }:
+
+mkDerivation rec {
+ pname = "lxqt-sudo";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1my0wpic20493rdlabp9ghag1g3nhwafk2yklkgczlajmarakgpc";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ kwindowsystem
+ liblxqt
+ libqtxdg
+ sudo
+ ];
+
+ meta = with lib; {
+ description = "GUI frontend for sudo/su";
+ homepage = https://github.com/lxqt/lxqt-sudo;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-themes/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-themes/default.nix
new file mode 100644
index 00000000000..9d8da87fd5d
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-themes/default.nix
@@ -0,0 +1,26 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools }:
+
+mkDerivation rec {
+ pname = "lxqt-themes";
+ version = "0.14.0";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "09dkcgnf3lmfly8v90p6wjlj5rin83pbailvvpx2jr8a48a8zb9f";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ meta = with lib; {
+ description = "Themes, graphics and icons for LXQt";
+ homepage = https://github.com/lxqt/lxqt-themes;
+ license = licenses.lgpl21;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix b/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix
new file mode 100644
index 00000000000..a5be8f41967
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix
@@ -0,0 +1,40 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, pcre, qtbase, qttools,
+ qtx11extras, xorg, lxqt-build-tools, openbox, hicolor-icon-theme }:
+
+mkDerivation rec {
+ pname = "obconf-qt";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "15dizs072ylmld1lxwgqkvybqy8ms8zki5586xm305jnlmrkb4lq";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ pcre
+ qtbase
+ qttools
+ qtx11extras
+ xorg.libpthreadstubs
+ xorg.libXdmcp
+ xorg.libSM
+ openbox
+ hicolor-icon-theme
+ ];
+
+ meta = with lib; {
+ description = "The Qt port of obconf, the Openbox configuration tool";
+ homepage = https://github.com/lxqt/obconf-qt;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/pavucontrol-qt/default.nix b/nixpkgs/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
new file mode 100644
index 00000000000..7b7d7290320
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/pavucontrol-qt/default.nix
@@ -0,0 +1,36 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt, libpulseaudio,
+ pcre, qtbase, qttools, qtx11extras }:
+
+mkDerivation rec {
+ pname = "pavucontrol-qt";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "124dk41v8l5pv7afi1h7fgbhm8zj605yfd8b769sn7id2bqj7bis";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt.lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ libpulseaudio
+ pcre
+ ];
+
+ meta = with lib; {
+ description = "A Pulseaudio mixer in Qt (port of pavucontrol)";
+ homepage = https://github.com/lxqt/pavucontrol-qt;
+ license = licenses.gpl2;
+ platforms = with platforms; linux;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/pcmanfm-qt/default.nix b/nixpkgs/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
new file mode 100644
index 00000000000..168b7f35ad2
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/pcmanfm-qt/default.nix
@@ -0,0 +1,38 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, lxqt, qtbase, qttools,
+ qtx11extras, libfm-qt, menu-cache, lxmenu-data }:
+
+mkDerivation rec {
+ pname = "pcmanfm-qt";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1zchxlbyiifing94mqwh45pp7z3ihldknqiaz0kanq1cnma1jj6k";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ lxqt.lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ libfm-qt
+ libfm-qt
+ menu-cache
+ lxmenu-data
+ ];
+
+ meta = with lib; {
+ description = "File manager and desktop icon manager (Qt port of PCManFM and libfm)";
+ homepage = https://github.com/lxqt/pcmanfm-qt;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix b/nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix
new file mode 100644
index 00000000000..df717debbae
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix
@@ -0,0 +1,25 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase, qttools }:
+
+mkDerivation rec {
+ pname = "qlipper";
+ version = "5.1.1";
+
+ src = fetchFromGitHub {
+ owner = "pvanek";
+ repo = pname;
+ rev = version;
+ sha256 = "0vlm4ab9isi7i2bimnyrk6083j2dfdrs14qj59vjcjri7mcwmf76";
+ };
+
+ nativeBuildInputs = [ cmake ];
+
+ buildInputs = [ qtbase qttools ];
+
+ meta = with lib; {
+ description = "Cross-platform clipboard history applet";
+ homepage = https://github.com/pvanek/qlipper;
+ license = licenses.gpl2Plus;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/qps/default.nix b/nixpkgs/pkgs/desktops/lxqt/qps/default.nix
new file mode 100644
index 00000000000..942c9257c25
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/qps/default.nix
@@ -0,0 +1,26 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase, qtx11extras, qttools,
+ lxqt-build-tools }:
+
+mkDerivation rec {
+ pname = "qps";
+ version = "1.10.20";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1g8j4cjy5x33jzjkx6vwyl5qbf9i2z2w01ipgk7nrik5drf9crbf";
+ };
+
+ nativeBuildInputs = [ cmake lxqt-build-tools ];
+
+ buildInputs = [ qtbase qtx11extras qttools ];
+
+ meta = with lib; {
+ description = "The Qt process manager";
+ homepage = https://github.com/lxqt/qps;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ romildo ];
+ platforms = with platforms; unix;
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix b/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix
new file mode 100644
index 00000000000..10f525eb9e6
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix
@@ -0,0 +1,34 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, lxqt-build-tools, qtermwidget,
+ qtbase, qttools, qtx11extras }:
+
+mkDerivation rec {
+ pname = "qterminal";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "0bq6lvns56caijdmjm05nsj9vg69v9x5vid24bfxasck6q8nw24w";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ lxqt-build-tools
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtermwidget
+ ];
+
+ meta = with lib; {
+ description = "A lightweight Qt-based terminal emulator";
+ homepage = https://github.com/lxqt/qterminal;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo globin ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix b/nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix
new file mode 100644
index 00000000000..e61360f6a3b
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix
@@ -0,0 +1,25 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, qtbase, qttools, lxqt-build-tools }:
+
+mkDerivation rec {
+ pname = "qtermwidget";
+ version = "0.14.1";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "1pz8dwb86jpga4vfyn5v9n2s6dx3zh74yfp1kjsmsmhf878zs6lv";
+ };
+
+ nativeBuildInputs = [ cmake lxqt-build-tools ];
+
+ buildInputs = [ qtbase qttools ];
+
+ meta = with lib; {
+ description = "A terminal emulator widget for Qt 5";
+ homepage = https://github.com/lxqt/qtermwidget;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix b/nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix
new file mode 100644
index 00000000000..bac68f7166c
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix
@@ -0,0 +1,38 @@
+{ lib, mkDerivation, fetchFromGitHub, cmake, pkgconfig, qtbase, qttools, qtx11extras, qtsvg, kwindowsystem, libqtxdg, xorg, autoPatchelfHook }:
+
+mkDerivation rec {
+ pname = "screengrab";
+ version = "1.101";
+
+ src = fetchFromGitHub {
+ owner = "lxqt";
+ repo = pname;
+ rev = version;
+ sha256 = "111gnkhp77qkch7xqr7k3h8zrg4871gapyd4vvlpaj0gjhirjg6h";
+ };
+
+ nativeBuildInputs = [
+ cmake
+ pkgconfig
+ autoPatchelfHook # fix libuploader.so and libextedit.so not found
+ ];
+
+ buildInputs = [
+ qtbase
+ qttools
+ qtx11extras
+ qtsvg
+ kwindowsystem
+ libqtxdg
+ xorg.libpthreadstubs
+ xorg.libXdmcp
+ ];
+
+ meta = with lib; {
+ description = "Crossplatform tool for fast making screenshots";
+ homepage = https://github.com/lxqt/screengrab;
+ license = licenses.gpl2;
+ platforms = with platforms; unix;
+ maintainers = with maintainers; [ romildo ];
+ };
+}
diff --git a/nixpkgs/pkgs/desktops/lxqt/update.sh b/nixpkgs/pkgs/desktops/lxqt/update.sh
new file mode 100755
index 00000000000..47d3dfb3d5f
--- /dev/null
+++ b/nixpkgs/pkgs/desktops/lxqt/update.sh
@@ -0,0 +1,39 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p libarchive curl common-updater-scripts
+
+set -eu -o pipefail
+
+cd "$(dirname "${BASH_SOURCE[0]}")"
+root=../../..
+export NIXPKGS_ALLOW_UNFREE=1
+
+lxqt_version=0.14.1
+lxqtrepo=https://downloads.lxqt.org/${lxqt_version}.html
+
+version() {
+ (cd "$root" && nix-instantiate --eval --strict -A "$1.version" 2>/dev/null | tr -d '"')
+}
+
+update_lxqt() {
+ local pname
+ local pversion
+ curl -sS ${lxqtrepo} | sed -rne 's|.*<a href=.*>(.+) (.+)</a><br>|\1 \2|p' |
+ while read pname pversion; do
+ local pversionold=$(version lxqt.$pname)
+ if [[ "$pversion" = "$pversionold" ]]; then
+ echo "nothing to do, $pname $pversion is current"
+ else
+ echo "$pname: $pversionold -> $pversion"
+ (cd "$root"
+ local pfile=$(EDITOR=echo nix edit -f. lxqt.$pname 2>/dev/null)
+ update-source-version lxqt.$pname "$pversion"
+ git add $pfile
+ git commit -m "lxqt.$pname: $pversionold -> $pversion"
+ )
+ fi
+ echo
+ done
+ echo DONE
+}
+
+update_lxqt