diff options
Diffstat (limited to 'modules/packages/nheko-git.nix')
-rw-r--r-- | modules/packages/nheko-git.nix | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/modules/packages/nheko-git.nix b/modules/packages/nheko-git.nix new file mode 100644 index 0000000..dac42c9 --- /dev/null +++ b/modules/packages/nheko-git.nix @@ -0,0 +1,95 @@ +# This file was copied from NUR: https://github.com/nix-community/nur-combined/blob/master/repos/deeunderscore/pkgs/nheko/default.nix#L93 +# This file is a modified version of nixpkgs/pkgs/applications/networking/instant-messengers/nheko/default.nix (copied at 2e896fce) + +{ lib +, stdenv +, fetchFromGitHub +, cmake +#, wrapQtAppsHook +, asciidoctor +, qt6 +, qt6Packages +#, qtmultimedia +#, qtimageformats +#, qtkeychain +, cmark +, coeurl +, curl +, libevent +, lmdb +, lmdbxx +#, mtxclient +, nlohmann_json +, olm +, pkg-config +, re2 +, spdlog +, httplib +, voipSupport ? true +, gst_all_1 +, libnice +, pkgs +, nhekoSrc +, mtxclientSrc +}: + +stdenv.mkDerivation { + pname = "nheko"; + version = "git+master"; + src = nhekoSrc; + + nativeBuildInputs = [ + lmdbxx + cmake + pkg-config + asciidoctor + qt6.wrapQtAppsHook + ]; + + buildInputs = [ + qt6.qtbase + qt6.qttools + qt6.qtsvg + qt6.qtmultimedia + qt6.qtimageformats + qt6Packages.qtkeychain + cmark + coeurl + curl + libevent + lmdb + (pkgs.callPackage ./mtxclient-git.nix { inherit mtxclientSrc; }) + nlohmann_json + olm + re2 + spdlog + httplib + ] ++ lib.optionals voipSupport (with gst_all_1; [ + gstreamer + gst-plugins-base + (gst-plugins-good.override { qt5Support = true; }) + gst-plugins-bad + libnice + ]); + + LC_ALL = lib.optionalString (!stdenv.isDarwin) "C.UTF-8"; + + cmakeFlags = [ + "-DCOMPILE_QML=ON" # see https://github.com/Nheko-Reborn/nheko/issues/389 + "-DCMAKE_BUILD_TYPE=Release" + "-DBUILD_SHARED_LIBS=OFF" + ]; + + + preFixup = lib.optionalString voipSupport '' + # add gstreamer plugins path to the wrapper + qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0") + ''; + + meta = with lib; { + description = "Desktop client for the Matrix protocol"; + homepage = "https://github.com/Nheko-Reborn/nheko"; + platforms = platforms.all; + license = licenses.gpl3Plus; + }; +} |