aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix')
-rw-r--r--nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix57
1 files changed, 57 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix b/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix
new file mode 100644
index 00000000000..1101d6f9b06
--- /dev/null
+++ b/nixpkgs/pkgs/applications/networking/instant-messengers/mirage/default.nix
@@ -0,0 +1,57 @@
+{ lib, mkDerivation, fetchFromGitHub
+, qmake, pkgconfig, olm, wrapQtAppsHook
+, qtbase, qtquickcontrols2, qtkeychain, qtmultimedia, qttools, qtgraphicaleffects
+, python3Packages, pyotherside
+}:
+
+let
+ pypkgs = with python3Packages; [
+ aiofiles filetype matrix-nio appdirs cairosvg
+ pymediainfo setuptools html-sanitizer mistune blist
+ pyotherside
+ ];
+in
+mkDerivation rec {
+ pname = "mirage";
+ version = "0.5.2";
+
+ src = fetchFromGitHub {
+ owner = "mirukana";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0i891fafdncdz1xg6nji80jb86agsrbdvai9nwf1yy126q7piryv";
+ fetchSubmodules = true;
+ };
+
+ nativeBuildInputs = [ pkgconfig qmake wrapQtAppsHook python3Packages.wrapPython ];
+
+ buildInputs = [
+ qtbase qtmultimedia
+ qtquickcontrols2
+ qtkeychain qtgraphicaleffects
+ olm pyotherside
+ ];
+
+ propagatedBuildInputs = pypkgs;
+
+ pythonPath = pypkgs;
+
+ qmakeFlags = [ "PREFIX=${placeholder "out"}" ];
+
+ dontWrapQtApps = true;
+ postInstall = ''
+ buildPythonPath "$out $pythonPath"
+ wrapProgram $out/bin/mirage \
+ --prefix PYTHONPATH : "$PYTHONPATH" \
+ "''${qtWrapperArgs[@]}"
+ '';
+
+ meta = with lib; {
+ description = "A fancy, customizable, keyboard-operable Qt/QML+Python Matrix chat client for encrypted and decentralized communication.";
+ homepage = "https://github.com/mirukana/mirage";
+ license = licenses.lgpl3;
+ maintainers = with maintainers; [ colemickens ];
+ inherit (qtbase.meta) platforms;
+ inherit version;
+ };
+}