My personal project and infrastructure archive
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
nomicon/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix/default.nix

59 lines
1.4 KiB

{ buildPythonPackage, stdenv, python, fetchFromGitHub,
pyopenssl, webcolors, future, atomicwrites,
attrs, Logbook, pygments, cachetools, matrix-nio }:
let
matrixUploadPython = python.withPackages (ps: with ps; [
magic
]);
in buildPythonPackage {
pname = "weechat-matrix";
version = "unstable-2019-11-10";
src = fetchFromGitHub {
owner = "poljar";
repo = "weechat-matrix";
rev = "69ad2a9c03d516c212d3d0700dbb2bfe654f6365";
sha256 = "1mfbkag5np2lgv6f31nyfnvavyh67jrrx6gxhzb8m99dd43lgs8c";
};
propagatedBuildInputs = [
pyopenssl
webcolors
future
atomicwrites
attrs
Logbook
pygments
cachetools
matrix-nio
];
passthru.scripts = [ "matrix.py" ];
dontBuild = true;
doCheck = false;
installPhase = ''
mkdir -p $out/share $out/bin
cp $src/main.py $out/share/matrix.py
cp $src/contrib/matrix_upload $out/bin/
substituteInPlace $out/bin/matrix_upload \
--replace '/usr/bin/env -S python3 -u' '${matrixUploadPython}/bin/python -u'
mkdir -p $out/${python.sitePackages}
cp -r $src/matrix $out/${python.sitePackages}/matrix
'';
dontPatchShebangs = true;
meta = with stdenv.lib; {
description = "A Python plugin for Weechat that lets Weechat communicate over the Matrix protocol";
homepage = "https://github.com/poljar/weechat-matrix";
license = licenses.isc;
platforms = platforms.linux;
maintainers = [ maintainers.tilpner ];
};
}