nixpkgs/pkgs/development/python-modules/discordpy/default.nix
2017-08-25 19:36:14 +02:00

40 lines
968 B
Nix

{ lib
, fetchurl
, buildPythonPackage
, pythonOlder
, withVoice ? true, libopus
, asyncio
, aiohttp
, websockets
, pynacl
}:
let
pname = "discord.py";
version = "0.16.10";
in buildPythonPackage rec {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.tar.gz";
sha256 = "cb0b9ad5f5edf2d5afd5f5ce07381a0a089eb036004938126a5582fc8fa0cc88";
};
propagatedBuildInputs = [ asyncio aiohttp websockets pynacl ];
patchPhase = ''
substituteInPlace "requirements.txt" \
--replace "aiohttp>=1.0.0,<1.1.0" "aiohttp"
'' + lib.optionalString withVoice ''
substituteInPlace "discord/opus.py" \
--replace "ctypes.util.find_library('opus')" "'${libopus}/lib/libopus.so.0'"
'';
disabled = pythonOlder "3.5";
meta = {
description = "A python wrapper for the Discord API";
homepage = "https://discordpy.rtfd.org/";
license = lib.licenses.mit;
};
}