about summary refs log tree commit diff
path: root/pkgs/by-name/qa
diff options
context:
space:
mode:
authorSamLukeYes <samlukeyes123@gmail.com>2023-11-26 15:33:27 +0800
committerSamLukeYes <samlukeyes123@gmail.com>2023-11-26 15:33:27 +0800
commit70b618f72ea19a7f2e5fbbcac69757ecf74b0270 (patch)
treeec5abf53b30f941160c3ac67c957fef14c51a31d /pkgs/by-name/qa
parentc68343355218d521859abcfb5f6deb88838974cc (diff)
qadwaitadecorations: init at 0.1.3
Diffstat (limited to 'pkgs/by-name/qa')
-rw-r--r--pkgs/by-name/qa/qadwaitadecorations/package.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/by-name/qa/qadwaitadecorations/package.nix b/pkgs/by-name/qa/qadwaitadecorations/package.nix
new file mode 100644
index 0000000000000..74ba857f03b0c
--- /dev/null
+++ b/pkgs/by-name/qa/qadwaitadecorations/package.nix
@@ -0,0 +1,58 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+, qt5
+, qt6
+, wayland
+, nix-update-script
+, useQt6 ? false
+
+# Shadows support on Qt5 requires the feature backported from Qt6:
+# https://src.fedoraproject.org/rpms/qt5-qtwayland/blob/rawhide/f/qtwayland-decoration-support-backports-from-qt6.patch
+, qt5ShadowsSupport ? false
+}:
+
+let
+  qt = if useQt6 then qt6 else qt5;
+  qtVersion = if useQt6 then "6" else "5";
+
+in stdenv.mkDerivation (finalAttrs: {
+  pname = "qadwaitadecorations";
+  version = "0.1.3";
+
+  src = fetchFromGitHub {
+    owner = "FedoraQt";
+    repo = "QAdwaitaDecorations";
+    rev = finalAttrs.version;
+    hash = "sha256-9uK2ojukuwzOz/genWiCch4c3pL5qEfyy8ERpFxS8/8=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  buildInputs = with qt; [
+    qtbase
+    qtsvg
+    qtwayland
+    wayland
+  ];
+
+  dontWrapQtApps = true;
+
+  cmakeFlags = [
+    "-DQT_PLUGINS_DIR=${placeholder "out"}/${qt.qtbase.qtPluginPrefix}"
+  ] ++ lib.optional useQt6 "-DUSE_QT6=true"
+    ++ lib.optional qt5ShadowsSupport "-DHAS_QT6_SUPPORT=true";
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = {
+    description = "Qt${qtVersion} Wayland decoration plugin using libadwaita style";
+    homepage = "https://github.com/FedoraQt/QAdwaitaDecorations";
+    license = lib.licenses.lgpl21Plus;
+    maintainers = with lib.maintainers; [ samlukeyes123 ];
+    platforms = lib.platforms.linux;
+  };
+})