about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/libcommuni
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/libcommuni')
-rw-r--r--nixpkgs/pkgs/development/libraries/libcommuni/default.nix48
1 files changed, 48 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/libcommuni/default.nix b/nixpkgs/pkgs/development/libraries/libcommuni/default.nix
new file mode 100644
index 000000000000..f7d064e0de38
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/libcommuni/default.nix
@@ -0,0 +1,48 @@
+{ lib, stdenv, fetchFromGitHub
+, qtbase, qtdeclarative, qmake, which
+}:
+
+stdenv.mkDerivation rec {
+  pname = "libcommuni";
+  version = "3.7.0";
+
+  src = fetchFromGitHub {
+    owner = "communi";
+    repo = "libcommuni";
+    rev = "v${version}";
+    sha256 = "sha256-9eYJpmjW1J48RD6wVJOHmsAgTbauNeeCrXe076ufq1I=";
+  };
+
+  buildInputs = [ qtbase qtdeclarative ];
+  nativeBuildInputs = [ qmake which ];
+
+  enableParallelBuilding = true;
+
+  dontUseQmakeConfigure = true;
+  configureFlags = [ "-config" "release" ]
+    # Build mixes up dylibs/frameworks if one is not explicitly specified.
+    ++ lib.optionals stdenv.isDarwin [ "-config" "qt_framework" ];
+
+  dontWrapQtApps = true;
+
+  preConfigure = ''
+    sed -i -e 's|/bin/pwd|pwd|g' configure
+  '';
+
+  # The tests fail on darwin because of install_name if they run
+  # before the frameworks are installed.
+  doCheck = false;
+  doInstallCheck = true;
+  installCheckTarget = "check";
+
+  # Hack to avoid TMPDIR in RPATHs.
+  preFixup = "rm -rf lib";
+
+  meta = with lib; {
+    description = "A cross-platform IRC framework written with Qt";
+    homepage = "https://communi.github.io";
+    license = licenses.bsd3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ hrdinka ];
+  };
+}