diff options
Diffstat (limited to 'nixpkgs/pkgs/desktops/lxqt')
37 files changed, 1922 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 000000000000..4a9a878d31c7 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/compton-conf/default.nix @@ -0,0 +1,52 @@ +{ stdenv +, lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, qtbase +, qttools +, lxqt +, libconfig +, gitUpdater +}: + +mkDerivation rec { + pname = "compton-conf"; + version = "0.16.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-GNS0GdkQOEFQHCeXFVNDdT35KCRhfwmkL78tpY71mz0="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt.lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + libconfig + ]; + + preConfigure = '' + substituteInPlace autostart/CMakeLists.txt \ + --replace "DESTINATION \"\''${LXQT_ETC_XDG_DIR}" "DESTINATION \"etc/xdg" \ + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + broken = stdenv.isDarwin; + homepage = "https://github.com/lxqt/compton-conf"; + description = "GUI configuration tool for compton X composite manager"; + license = licenses.lgpl21Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/default.nix b/nixpkgs/pkgs/desktops/lxqt/default.nix new file mode 100644 index 000000000000..eacdac554136 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/default.nix @@ -0,0 +1,108 @@ +{ pkgs, makeScope, libsForQt5, qt5 }: +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 {}; + qtxdg-tools = callPackage ./qtxdg-tools {}; + + ### 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-menu-data = callPackage ./lxqt-menu-data {}; + 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 = 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 = 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 {}; + xdg-desktop-portal-lxqt = callPackage ./xdg-desktop-portal-lxqt {}; + + preRequisitePackages = [ + libsForQt5.kwindowsystem # provides some QT5 plugins needed by lxqt-panel + libsForQt5.libkscreen # provides plugins for screen management software + pkgs.libfm + pkgs.libfm-extra + pkgs.menu-cache + pkgs.openbox # default window manager + 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-menu-data + 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 + obconf-qt + lximage-qt + lxqt-archiver + + ### QtDesktop project + qps + screengrab + + ### Default icon theme + libsForQt5.breeze-icons + + ### 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 000000000000..c945107aaf3b --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/libfm-qt/default.nix @@ -0,0 +1,57 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, lxqt-build-tools +, lxqt-menu-data +, pcre +, libexif +, xorg +, libfm +, menu-cache +, qtx11extras +, qttools +, gitUpdater +}: + +mkDerivation rec { + pname = "libfm-qt"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = "libfm-qt"; + rev = version; + hash = "sha256-QxPYSA7537K+/dRTxIYyg+Q/kj75rZOdzlUsmSdQcn4="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + lxqt-menu-data + pcre + libexif + xorg.libpthreadstubs + xorg.libxcb + xorg.libXdmcp + qtx11extras + libfm + menu-cache + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/libfm-qt"; + description = "Core library of PCManFM-Qt (Qt binding for libfm)"; + license = licenses.lgpl21Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix b/nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix new file mode 100644 index 000000000000..f7fba687bb86 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/liblxqt/default.nix @@ -0,0 +1,62 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtx11extras +, qttools +, qtsvg +, libqtxdg +, polkit-qt +, kwindowsystem +, xorg +, gitUpdater +}: + +mkDerivation rec { + pname = "liblxqt"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-daD4okYc4J2nRrO6423W0IUK9173zcepCvvMtx7Vho4="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtx11extras + qtsvg + polkit-qt + kwindowsystem + libqtxdg + xorg.libXScrnSaver + ]; + + # convert name of wrapped binary, e.g. .lxqt-whatever-wrapped to the original name, e.g. lxqt-whatever so binaries can find their resources + patches = [ ./fix-application-path.patch ]; + + postPatch = '' + # https://github.com/NixOS/nixpkgs/issues/119766 + substituteInPlace lxqtbacklight/linux_backend/driver/libbacklight_backend.c \ + --replace "pkexec lxqt-backlight_backend" "pkexec $out/bin/lxqt-backlight_backend" + + sed -i "s|\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}|''${out}/share/polkit-1/actions|" CMakeLists.txt + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + description = "Core utility library for all LXQt components"; + homepage = "https://github.com/lxqt/liblxqt"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/liblxqt/fix-application-path.patch b/nixpkgs/pkgs/desktops/lxqt/liblxqt/fix-application-path.patch new file mode 100644 index 000000000000..12ef97db5d82 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/liblxqt/fix-application-path.patch @@ -0,0 +1,23 @@ +--- a/lxqtapplication.cpp ++++ b/lxqtapplication.cpp +@@ -77,7 +77,7 @@ Application::Application(int &argc, char** argv, bool handleQuitSignals) + + void Application::updateTheme() + { +- const QString styleSheetKey = QFileInfo(applicationFilePath()).fileName(); ++ const QString styleSheetKey = QFileInfo(applicationFilePath()).fileName().mid(1).chopped(8); + setStyleSheet(lxqtTheme.qss(styleSheetKey)); + Q_EMIT themeChanged(); + } + +--- a/lxqttranslator.cpp ++++ b/lxqttranslator.cpp +@@ -147,7 +147,7 @@ bool Translator::translateApplication(const QString &applicationName) + if (!applicationName.isEmpty()) + return translate(applicationName); + else +- return translate(QFileInfo(QCoreApplication::applicationFilePath()).baseName()); ++ return translate(QFileInfo(QCoreApplication::applicationFilePath()).baseName().mid(1).chopped(8)); + } + + diff --git a/nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix b/nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix new file mode 100644 index 000000000000..f2c42ccca592 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/libqtxdg/default.nix @@ -0,0 +1,49 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, qtbase +, qtsvg +, lxqt-build-tools +, gitUpdater +}: + +mkDerivation rec { + pname = "libqtxdg"; + version = "3.12.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-y+3noaHubZnwUUs8vbMVvZPk+6Fhv37QXUb//reedCU="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + ]; + + buildInputs = [ + qtbase + qtsvg + ]; + + preConfigure = '' + cmakeFlagsArray+=( + "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=$out/$qtPluginPrefix/iconengines" + "-DCMAKE_INSTALL_INCLUDEDIR=include" + "-DCMAKE_INSTALL_LIBDIR=lib" + ) + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/libqtxdg"; + description = "Qt implementation of freedesktop.org xdg specs"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix b/nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix new file mode 100644 index 000000000000..5e3514310c3d --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/libsysstat/default.nix @@ -0,0 +1,41 @@ +{ stdenv +, lib +, mkDerivation +, fetchFromGitHub +, cmake +, qtbase +, lxqt-build-tools +, gitUpdater +}: + +mkDerivation rec { + pname = "libsysstat"; + version = "0.4.6"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-dk3I+bkU2ztqIe33rTYneSUd8VFzrElTqVrjHQhAWXw="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + ]; + + buildInputs = [ + qtbase + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + broken = stdenv.isDarwin; + description = "Library used to query system info and statistics"; + homepage = "https://github.com/lxqt/libsysstat"; + license = licenses.lgpl21Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..ec95c19b0c5a --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lximage-qt/default.nix @@ -0,0 +1,58 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, qtbase +, qttools +, qtx11extras +, qtsvg +, qtimageformats +, xorg +, lxqt-build-tools +, libfm-qt +, libexif +, menu-cache +, gitUpdater +}: + +mkDerivation rec { + pname = "lximage-qt"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-Igfd8lhKDjdseQeARiirj+tEoJdcaeHuyd4mfQHOVg0="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + qtimageformats # add-on module to support more image file formats + libfm-qt + xorg.libpthreadstubs + xorg.libXdmcp + libexif + menu-cache + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lximage-qt"; + description = "The image viewer and screenshot tool for lxqt"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..fd20c68ba863 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-about/default.nix @@ -0,0 +1,49 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtx11extras +, qttools +, qtsvg +, kwindowsystem +, liblxqt +, libqtxdg +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-about"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-FA9xvIi45qpD6iGxiiNKNlcLKzJtb0cWmvDBJRnJFwA="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtx11extras + qtsvg + kwindowsystem + liblxqt + libqtxdg + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-about"; + description = "Dialogue window providing information about LXQt and the system it's running on"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..fc911cf27ea5 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-admin/default.nix @@ -0,0 +1,59 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtx11extras +, qttools +, qtsvg +, kwindowsystem +, liblxqt +, libqtxdg +, polkit-qt +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-admin"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-wPK3TMBC359GnisjpdY2zU+Jnvr7Hdzb6r+HuUQC3mo="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtx11extras + qtsvg + kwindowsystem + liblxqt + libqtxdg + polkit-qt + ]; + + postPatch = '' + for f in lxqt-admin-{time,user}/CMakeLists.txt; do + substituteInPlace $f --replace \ + "\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR}" \ + "$out/share/polkit-1/actions" + done + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-admin"; + description = "LXQt system administration tool"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..40cad3cb6082 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-archiver/default.nix @@ -0,0 +1,55 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, lxqt-build-tools +, json-glib +, libexif +, libfm-qt +, menu-cache +, qtbase +, qttools +, qtx11extras +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-archiver"; + version = "0.9.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = "lxqt-archiver"; + rev = version; + hash = "sha256-8pfUpyjn01D8CL+2PjGkZqyHu+lpHZIXlXn67rZoxMY="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + json-glib + libexif + libfm-qt + menu-cache + qtbase + qtx11extras + ]; + + hardeningDisable = [ "format" ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-archiver/"; + description = "Archive tool for the LXQt desktop environment"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = with maintainers; [ jchw ] ++ teams.lxqt.members; + }; +} 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 000000000000..fd7ef927f8b3 --- /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 000000000000..b3874abfa576 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-build-tools/default.nix @@ -0,0 +1,70 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, pcre +, qtbase +, glib +, perl +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-build-tools"; + version = "0.13.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-4/hVlEdqqqd6CNitCRkIzsS1R941vPJdirIklp4acXA="; + }; + + postPatch = '' + # Nix clang on darwin identifies as 'Clang', not 'AppleClang' + # Without this, dependants fail to link. + substituteInPlace cmake/modules/LXQtCompilerSettings.cmake \ + --replace AppleClang Clang + + # GLib 2.72 moved the file from gio-unix-2.0 to gio-2.0. + # https://github.com/lxqt/lxqt-build-tools/pull/74 + substituteInPlace cmake/find-modules/FindGLIB.cmake \ + --replace gio/gunixconnection.h gio/gunixfdlist.h + ''; + + nativeBuildInputs = [ + cmake + pkg-config + setupHook + ]; + + buildInputs = [ + qtbase + glib + pcre + ]; + + propagatedBuildInputs = [ + perl # needed by LXQtTranslateDesktop.cmake + ]; + + 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 + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-build-tools"; + description = "Various packaging tools and scripts for LXQt applications"; + license = licenses.lgpl21Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..e40765116e9c --- /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 000000000000..64b54b3e6bc3 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-config/default.nix @@ -0,0 +1,79 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, glib +, lxqt-build-tools +, lxqt-menu-data +, qtbase +, qtx11extras +, qttools +, qtsvg +, kwindowsystem +, libkscreen +, liblxqt +, libqtxdg +, xkeyboard_config +, xorg +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-config"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-ypHjUYRtrWx1Cp9KGSqsWpRHg7zoV0YDW6P4amJKapI="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + glib.bin + qtbase + qtx11extras + qtsvg + kwindowsystem + libkscreen + liblxqt + libqtxdg + lxqt-menu-data + xorg.libpthreadstubs + xorg.libXdmcp + xorg.libXScrnSaver + xorg.libxcb + xorg.libXcursor + xorg.xf86inputlibinput + xorg.xf86inputlibinput.dev + ]; + + postPatch = '' + substituteInPlace lxqt-config-appearance/configothertoolkits.cpp \ + --replace 'QStringLiteral("gsettings' \ + 'QStringLiteral("${glib.bin}/bin/gsettings' + + substituteInPlace lxqt-config-input/keyboardlayoutconfig.h \ + --replace '/usr/share/X11/xkb/rules/base.lst' \ + '${xkeyboard_config}/share/X11/xkb/rules/base.lst' + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-config"; + description = "Tools to configure LXQt and the underlying operating system"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; + +} 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 000000000000..83235bfdaebd --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-globalkeys/default.nix @@ -0,0 +1,51 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtbase +, qttools +, qtx11extras +, qtsvg +, kwindowsystem +, liblxqt +, libqtxdg +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-globalkeys"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-2S61d7BSuDPU1dNXLENpmpt6BB+CAeCtBVQS+ZGxrtU="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + kwindowsystem + liblxqt + libqtxdg + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-globalkeys"; + description = "LXQt service for global keyboard shortcuts registration"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/lxqt-menu-data/default.nix b/nixpkgs/pkgs/desktops/lxqt/lxqt-menu-data/default.nix new file mode 100644 index 000000000000..5ac4a5b0b714 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-menu-data/default.nix @@ -0,0 +1,36 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qttools +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-menu-data"; + version = "1.4.1"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-I9jb2e57ZBvND27F5C1zMaoFtij5TetmN9zbJSjxiS4="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-menu-data"; + description = "Menu files for LXQt Panel, Configuration Center and PCManFM-Qt/libfm-qt"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..a39c560d48d0 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-notificationd/default.nix @@ -0,0 +1,51 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtbase +, qttools +, qtsvg +, kwindowsystem +, liblxqt +, libqtxdg +, qtx11extras +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-notificationd"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-Y3+ShGb1DKJw4zv3SCwEq2unJesI1q5OaTlSO8fP76A="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtsvg + kwindowsystem + liblxqt + libqtxdg + qtx11extras + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-notificationd"; + description = "The LXQt notification daemon"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..ab23fc36da83 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-openssh-askpass/default.nix @@ -0,0 +1,52 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtbase +, qttools +, qtsvg +, qtx11extras +, kwindowsystem +, liblxqt +, libqtxdg +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-openssh-askpass"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-o/hJdaGtjcJiwjqfvfwfcOUv4YdAeeW+rCxsmZZdJQ0="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + kwindowsystem + liblxqt + libqtxdg + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-openssh-askpass"; + description = "GUI to query passwords on behalf of SSH agents"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + mainProgram = "lxqt-openssh-askpass"; + }; +} 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 000000000000..16895a1aa956 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-panel/default.nix @@ -0,0 +1,83 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, alsa-lib +, kguiaddons +, kwindowsystem +, libXdamage +, libdbusmenu +, liblxqt +, libpulseaudio +, libqtxdg +, libstatgrab +, libsysstat +, lm_sensors +, lxqt-build-tools +, lxqt-globalkeys +, lxqt-menu-data +, gitUpdater +, menu-cache +, pcre +, qtbase +, qtsvg +, qttools +, qtx11extras +, solid +, xorg +}: + +mkDerivation rec { + pname = "lxqt-panel"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-LQq1XOA0dGXXORVr2H/gI+axvCAd4P3nB4zCFYWgagc="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + alsa-lib + kguiaddons + kwindowsystem + libXdamage + libdbusmenu + liblxqt + libpulseaudio + libqtxdg + libstatgrab + libsysstat + lm_sensors + lxqt-globalkeys + lxqt-menu-data + menu-cache + pcre + qtbase + qtsvg + qtx11extras + solid + xorg.libXdmcp + xorg.libXtst + xorg.libpthreadstubs + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-panel"; + description = "The LXQt desktop panel"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..da3480b73e39 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-policykit/default.nix @@ -0,0 +1,60 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, lxqt-build-tools +, qtbase +, qttools +, qtx11extras +, qtsvg +, polkit +, polkit-qt +, kwindowsystem +, liblxqt +, libqtxdg +, pcre +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-policykit"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-w0o76oBFNy3syQqyFZdAbFUu8yX+uA6cMOHf3WfKPEU="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + polkit + polkit-qt + kwindowsystem + liblxqt + libqtxdg + pcre + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-policykit"; + description = "The LXQt PolicyKit agent"; + mainProgram = "lxqt-policykit-agent"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..1823e7fb5d0d --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-powermanagement/default.nix @@ -0,0 +1,57 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtbase +, qttools +, qtx11extras +, qtsvg +, kwindowsystem +, solid +, kidletime +, liblxqt +, libqtxdg +, lxqt-globalkeys +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-powermanagement"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-1koP+ElW5e85TJqToaErnGkTn3uRHk45bDDrXG6Oy68="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + kwindowsystem + solid + kidletime + liblxqt + libqtxdg + lxqt-globalkeys + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-powermanagement"; + description = "Power management module for LXQt"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..264575b019d8 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-qtplugin/default.nix @@ -0,0 +1,56 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, libdbusmenu +, libfm-qt +, libqtxdg +, lxqt-build-tools +, gitUpdater +, qtbase +, qtsvg +, qttools +, qtx11extras +}: + +mkDerivation rec { + pname = "lxqt-qtplugin"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-0shNkM1AGAjzMQDGLOIP2DFx6goJGoD0U0Gr+rRRFrk="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + libdbusmenu + libfm-qt + libqtxdg + qtbase + qtsvg + qtx11extras + ]; + + postPatch = '' + substituteInPlace src/CMakeLists.txt \ + --replace "DESTINATION \"\''${QT_PLUGINS_DIR}" "DESTINATION \"$qtPluginPrefix" + ''; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-qtplugin"; + description = "LXQt Qt platform integration plugin"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..3d5bdf0a01b8 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-runner/default.nix @@ -0,0 +1,61 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, lxqt-build-tools +, qtbase +, qttools +, qtsvg +, kwindowsystem +, liblxqt +, libqtxdg +, lxqt-globalkeys +, qtx11extras +, menu-cache +, muparser +, pcre +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-runner"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-NGytLQ2D5t1UdMGZoeHxHaXPwbRFDx+11ocjImXqZBU="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtsvg + qtx11extras + kwindowsystem + liblxqt + libqtxdg + lxqt-globalkeys + menu-cache + muparser + pcre + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-runner"; + description = "Tool used to launch programs quickly by typing their names"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..421d166734f1 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-session/default.nix @@ -0,0 +1,62 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, lxqt-build-tools +, qtbase +, qttools +, qtsvg +, qtx11extras +, kwindowsystem +, liblxqt +, libqtxdg +, qtxdg-tools +, procps +, xorg +, xdg-user-dirs +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-session"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-kVDPJPYBwK7aXCIWGClwfM9J3067U8lPVWt0jFfqooY="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtsvg + qtx11extras + kwindowsystem + liblxqt + libqtxdg + qtxdg-tools + procps + xorg.libpthreadstubs + xorg.libXdmcp + xdg-user-dirs + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-session"; + description = "An alternative session manager ported from the original razor-session"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..73794bad7a1f --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-sudo/default.nix @@ -0,0 +1,53 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtbase +, qttools +, qtx11extras +, qtsvg +, kwindowsystem +, liblxqt +, libqtxdg +, sudo +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-sudo"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-J7jiap3qZD+P0kGzt+b3wa16pxbS2fr3OmalhV5O9ro="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + kwindowsystem + liblxqt + libqtxdg + sudo + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-sudo"; + description = "GUI frontend for sudo/su"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..a9a957091df4 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/lxqt-themes/default.nix @@ -0,0 +1,34 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, gitUpdater +}: + +mkDerivation rec { + pname = "lxqt-themes"; + version = "1.3.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-bmkvg62lNFRhSerKFSo2POP8MWa1ZrdSi2E9nWDQSRQ="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/lxqt-themes"; + description = "Themes, graphics and icons for LXQt"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..4ebd052a5ef4 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/obconf-qt/default.nix @@ -0,0 +1,53 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, pcre +, qtbase +, qttools +, qtx11extras +, xorg +, lxqt-build-tools +, openbox +, gitUpdater +}: + +mkDerivation rec { + pname = "obconf-qt"; + version = "0.16.3"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-ExBcP+j1uf9Y8f6YfZsqyD6YTx1PriS3w8I6qdqQGeE="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + pcre + qtbase + qtx11extras + xorg.libpthreadstubs + xorg.libXdmcp + xorg.libSM + openbox + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/obconf-qt"; + description = "The Qt port of obconf, the Openbox configuration tool"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..f5b69b2e85fa --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/pavucontrol-qt/default.nix @@ -0,0 +1,45 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, lxqt-build-tools +, libpulseaudio +, qtbase +, qttools +, gitUpdater +}: + +mkDerivation rec { + pname = "pavucontrol-qt"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-eNhoqY1pak96x0xCypvgHmgCYjw4CYH8ABtWjIZrD3w="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + libpulseaudio + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/pavucontrol-qt"; + description = "A Pulseaudio mixer in Qt (port of pavucontrol)"; + license = licenses.gpl2Plus; + platforms = with platforms; linux; + maintainers = teams.lxqt.members; + }; +} 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 000000000000..ea2f60474574 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/pcmanfm-qt/default.nix @@ -0,0 +1,59 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, libexif +, lxqt-build-tools +, lxqt-menu-data +, qtbase +, qttools +, qtx11extras +, qtimageformats +, libfm-qt +, menu-cache +, gitUpdater +}: + +mkDerivation rec { + pname = "pcmanfm-qt"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-+U8eV6oDpaJfTzejsVtbcaQrfSjWUnVpnIDbkvVCY/c="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + lxqt-build-tools + qttools + ]; + + buildInputs = [ + libexif + lxqt-menu-data + qtbase + qtx11extras + qtimageformats # add-on module to support more image file formats + libfm-qt + menu-cache + ]; + + passthru.updateScript = gitUpdater { }; + + postPatch = '' + substituteInPlace config/pcmanfm-qt/lxqt/settings.conf.in --replace @LXQT_SHARE_DIR@ /run/current-system/sw/share/lxqt + ''; + + meta = with lib; { + homepage = "https://github.com/lxqt/pcmanfm-qt"; + description = "File manager and desktop icon manager (Qt port of PCManFM and libfm)"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix b/nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix new file mode 100644 index 000000000000..91f11e8d1374 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/qlipper/default.nix @@ -0,0 +1,39 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, qtbase +, qttools +, gitUpdater +}: + +mkDerivation rec { + pname = "qlipper"; + version = "5.1.2"; + + src = fetchFromGitHub { + owner = "pvanek"; + repo = pname; + rev = version; + hash = "sha256-wHhaRtNiNCk5dtO2dVjRFDVicmYtrnCb2twx6h1m834="; + }; + + nativeBuildInputs = [ + cmake + qttools + ]; + + buildInputs = [ + qtbase + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + description = "Cross-platform clipboard history applet"; + homepage = "https://github.com/pvanek/qlipper"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/qps/default.nix b/nixpkgs/pkgs/desktops/lxqt/qps/default.nix new file mode 100644 index 000000000000..0b6b81a4e39f --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/qps/default.nix @@ -0,0 +1,49 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, kwindowsystem +, liblxqt +, libqtxdg +, lxqt-build-tools +, gitUpdater +, qtbase +, qttools +, qtx11extras +}: + +mkDerivation rec { + pname = "qps"; + version = "2.8.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-Xr+61t6LzoXASHuXrE5ro3eWGxMSDCVnck49dCtiaww="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + kwindowsystem + liblxqt + libqtxdg + qtbase + qtx11extras + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/qps"; + description = "Qt based process manager"; + license = licenses.gpl2Plus; + platforms = with platforms; linux; # does not build on darwin + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix b/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix new file mode 100644 index 000000000000..0a1bf1f82d12 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/qterminal/default.nix @@ -0,0 +1,48 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, lxqt-build-tools +, qtermwidget +, qtbase +, qttools +, qtx11extras +, gitUpdater +, nixosTests +}: + +mkDerivation rec { + pname = "qterminal"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-nojNx351lYw0jVKEvzAIDP1WrZWcCAlfYMxNG95GcEo="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + qtx11extras + qtermwidget + ]; + + passthru.updateScript = gitUpdater { }; + + passthru.tests.test = nixosTests.terminal-emulators.qterminal; + + meta = with lib; { + homepage = "https://github.com/lxqt/qterminal"; + description = "A lightweight Qt-based terminal emulator"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = with maintainers; teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix b/nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix new file mode 100644 index 000000000000..e92df23f2d5f --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/qtermwidget/default.nix @@ -0,0 +1,43 @@ +{ stdenv +, lib +, mkDerivation +, fetchFromGitHub +, cmake +, qtbase +, qttools +, lxqt-build-tools +, gitUpdater +}: + +mkDerivation rec { + pname = "qtermwidget"; + version = "1.4.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-wYUOqAiBjnupX1ITbFMw7sAk42V37yDz9SrjVhE4FgU="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + qttools + ]; + + buildInputs = [ + qtbase + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + broken = stdenv.isDarwin; + homepage = "https://github.com/lxqt/qtermwidget"; + description = "A terminal emulator widget for Qt 5"; + license = licenses.gpl2Plus; + platforms = with platforms; unix; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/qtxdg-tools/default.nix b/nixpkgs/pkgs/desktops/lxqt/qtxdg-tools/default.nix new file mode 100644 index 000000000000..10476a00cf73 --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/qtxdg-tools/default.nix @@ -0,0 +1,41 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, qtbase +, libqtxdg +, lxqt-build-tools +, gitUpdater +}: + +mkDerivation rec { + pname = "qtxdg-tools"; + version = "3.12.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-3i5SVhEMHar09xoSfVCxJtPXeR81orcNR7pSIJImipQ="; + }; + + nativeBuildInputs = [ + cmake + lxqt-build-tools + ]; + + buildInputs = [ + qtbase + libqtxdg + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/qtxdg-tools"; + description = "libqtxdg user tools"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix b/nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix new file mode 100644 index 000000000000..59513dfebfda --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/screengrab/default.nix @@ -0,0 +1,56 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, pkg-config +, qtbase +, qttools +, qtx11extras +, qtsvg +, kwindowsystem +, libqtxdg +, perl +, xorg +, autoPatchelfHook +, gitUpdater +}: + +mkDerivation rec { + pname = "screengrab"; + version = "2.7.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-mmN3BQum7X0GWTUYauEN2mAo3GWdmtkIl2i84g5cp78="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + perl # needed by LXQtTranslateDesktop.cmake + qttools + autoPatchelfHook # fix libuploader.so and libextedit.so not found + ]; + + buildInputs = [ + qtbase + qtx11extras + qtsvg + kwindowsystem + libqtxdg + xorg.libpthreadstubs + xorg.libXdmcp + ]; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/screengrab"; + description = "Crossplatform tool for fast making screenshots"; + license = licenses.gpl2Plus; + platforms = platforms.linux; + maintainers = teams.lxqt.members; + }; +} diff --git a/nixpkgs/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix b/nixpkgs/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix new file mode 100644 index 000000000000..622a445bb9fd --- /dev/null +++ b/nixpkgs/pkgs/desktops/lxqt/xdg-desktop-portal-lxqt/default.nix @@ -0,0 +1,49 @@ +{ lib +, mkDerivation +, fetchFromGitHub +, cmake +, kwindowsystem +, libexif +, libfm-qt +, lxqt-qtplugin +, menu-cache +, qtx11extras +, gitUpdater +, extraQtStyles ? [] +}: + +mkDerivation rec { + pname = "xdg-desktop-portal-lxqt"; + version = "0.5.0"; + + src = fetchFromGitHub { + owner = "lxqt"; + repo = pname; + rev = version; + hash = "sha256-6yfLjDK8g8cpeeyuFUEjERTLLn6h3meKjD2Eb7Cj9qY="; + }; + + nativeBuildInputs = [ + cmake + ]; + + buildInputs = [ + kwindowsystem + libexif + libfm-qt + lxqt-qtplugin + menu-cache + qtx11extras + ] + ++ extraQtStyles; + + passthru.updateScript = gitUpdater { }; + + meta = with lib; { + homepage = "https://github.com/lxqt/xdg-desktop-portal-lxqt"; + description = "Backend implementation for xdg-desktop-portal that is using Qt/KF5/libfm-qt"; + license = licenses.lgpl21Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ romildo ]; + }; +} |