diff options
Diffstat (limited to 'nixpkgs/pkgs/desktops/lxqt')
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 |