diff --git a/pkgs/development/python-modules/discordpy/default.nix b/pkgs/development/python-modules/discordpy/default.nix new file mode 100644 index 00000000000..cf01ec835a7 --- /dev/null +++ b/pkgs/development/python-modules/discordpy/default.nix @@ -0,0 +1,39 @@ +{ lib +, fetchurl +, buildPythonPackage +, pythonOlder +, withVoice ? true, libopus +, asyncio +, aiohttp +, websockets +, pynacl +}: + +let + pname = "discord.py"; + version = "0.15.1"; +in buildPythonPackage rec { + name = "${pname}-${version}"; + + src = fetchurl { + url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.tar.gz"; + sha256 = "01lgidvnwwva1i65853gaplamllym2nsk0jis2r6f1rzbamgk1yj"; + }; + + 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; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 87cd2970fab..f61d6a896e4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -212,6 +212,8 @@ in { ''; }; + discordpy = callPackage ../development/python-modules/discordpy { }; + h5py = callPackage ../development/python-modules/h5py { hdf5 = pkgs.hdf5; };