60 lines
1.6 KiB
Nix
60 lines
1.6 KiB
Nix
{ lib, stdenv, mkDerivation, fetchFromGitHub
|
|
, qmake, pkg-config, olm, wrapQtAppsHook
|
|
, qtbase, qtquickcontrols2, qtkeychain, qtmultimedia, qtgraphicaleffects
|
|
, python3Packages, pyotherside, libXScrnSaver
|
|
}:
|
|
|
|
let
|
|
pypkgs = with python3Packages; [
|
|
aiofiles filetype matrix-nio appdirs cairosvg
|
|
pymediainfo setuptools html-sanitizer mistune blist
|
|
pyotherside
|
|
];
|
|
in
|
|
mkDerivation rec {
|
|
pname = "mirage";
|
|
version = "0.6.4";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "mirukana";
|
|
repo = pname;
|
|
rev = "v${version}";
|
|
sha256 = "15x0x2rf4fzsd0zr84fq3j3ddzkgc5il8s54jpxk8wl4ah03g4nv";
|
|
fetchSubmodules = true;
|
|
};
|
|
|
|
nativeBuildInputs = [ pkg-config qmake wrapQtAppsHook python3Packages.wrapPython ];
|
|
|
|
buildInputs = [
|
|
qtbase qtmultimedia
|
|
qtquickcontrols2
|
|
qtkeychain qtgraphicaleffects
|
|
olm pyotherside
|
|
libXScrnSaver
|
|
];
|
|
|
|
propagatedBuildInputs = pypkgs;
|
|
|
|
pythonPath = pypkgs;
|
|
|
|
qmakeFlags = [ "PREFIX=${placeholder "out"}" "CONFIG+=qtquickcompiler" ];
|
|
|
|
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 ];
|
|
broken = stdenv.isDarwin;
|
|
inherit (qtbase.meta) platforms;
|
|
inherit version;
|
|
};
|
|
}
|