2018-10-28 01:31:04 +01:00
|
|
|
{ stdenv, lib, fetchFromGitHub, qtbase, qtquickcontrols, cmake
|
2019-04-10 08:07:01 +01:00
|
|
|
, qttools, qtmultimedia
|
|
|
|
, libqmatrixclient_0_4, libqmatrixclient_0_5 }:
|
2017-11-26 15:32:18 +00:00
|
|
|
|
2019-04-10 08:07:01 +01:00
|
|
|
let
|
|
|
|
generic = version: sha256: prefix: library: stdenv.mkDerivation rec {
|
|
|
|
name = "quaternion-${version}";
|
2017-11-26 15:32:18 +00:00
|
|
|
|
2019-04-10 08:07:01 +01:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "QMatrixClient";
|
|
|
|
repo = "Quaternion";
|
|
|
|
rev = "${prefix}${version}";
|
|
|
|
inherit sha256;
|
|
|
|
};
|
2017-04-16 09:52:51 +01:00
|
|
|
|
2019-04-10 08:07:01 +01:00
|
|
|
buildInputs = [ qtbase qtmultimedia qtquickcontrols qttools library ];
|
2017-11-26 15:32:18 +00:00
|
|
|
|
2019-04-10 08:07:01 +01:00
|
|
|
nativeBuildInputs = [ cmake ];
|
2017-04-16 09:52:51 +01:00
|
|
|
|
2019-04-10 08:07:01 +01:00
|
|
|
postInstall = if stdenv.isDarwin then ''
|
|
|
|
mkdir -p $out/Applications
|
|
|
|
mv $out/bin/quaternion.app $out/Applications
|
|
|
|
rmdir $out/bin || :
|
|
|
|
'' else ''
|
|
|
|
substituteInPlace $out/share/applications/quaternion.desktop \
|
|
|
|
--replace 'Exec=quaternion' "Exec=$out/bin/quaternion"
|
|
|
|
'';
|
2017-04-16 09:52:51 +01:00
|
|
|
|
2019-04-10 08:07:01 +01:00
|
|
|
meta = with lib; {
|
|
|
|
description = "Cross-platform desktop IM client for the Matrix protocol";
|
|
|
|
homepage = https://matrix.org/docs/projects/client/quaternion.html;
|
|
|
|
license = licenses.gpl3;
|
|
|
|
maintainers = with maintainers; [ peterhoeg ];
|
|
|
|
inherit (qtbase.meta) platforms;
|
|
|
|
inherit version;
|
|
|
|
};
|
2017-04-16 09:52:51 +01:00
|
|
|
};
|
2019-04-10 08:07:01 +01:00
|
|
|
|
|
|
|
in rec {
|
|
|
|
quaternion = generic "0.0.9.3" "1hr9zqf301rg583n9jv256vzj7y57d8qgayk7c723bfknf1s6hh3" "v" libqmatrixclient_0_4;
|
|
|
|
quaternion-git = generic "0.0.9.4-rc3" "1fc3ya9fr3zw1cx7565s2rswzry98avslrryvdi0qa9yn0m3sw7p" "" libqmatrixclient_0_5;
|
2017-04-16 09:52:51 +01:00
|
|
|
}
|