Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at gcc-offload 67 lines 1.7 kB view raw
1{ 2 lib, 3 stdenv, 4 buildPythonPackage, 5 fetchFromGitHub, 6 setuptools, 7 miniaudio, 8 cffi, 9 pytestCheckHook, 10 AudioToolbox, 11 CoreAudio, 12}: 13 14let 15 # TODO: recheck after 1.59 16 miniaudio' = miniaudio.overrideAttrs (oldAttrs: rec { 17 version = "0.11.16"; # cffi breakage with 0.11.17 18 src = fetchFromGitHub { 19 inherit (oldAttrs.src) owner repo; 20 rev = "refs/tags/${version}"; 21 hash = "sha256-POe/dYPJ25RKNGIhaLoqxm9JJ08MrTyHVN4NmaGOdwM="; 22 }; 23 }); 24in 25buildPythonPackage rec { 26 pname = "miniaudio"; 27 version = "1.61"; 28 pyproject = true; 29 30 src = fetchFromGitHub { 31 owner = "irmen"; 32 repo = "pyminiaudio"; 33 rev = "refs/tags/v${version}"; 34 hash = "sha256-H3o2IWGuMqLrJTzQ7w636Ito6f57WBtMXpXXzrZ7UD8="; 35 }; 36 37 postPatch = '' 38 rm -r miniaudio 39 ln -s ${miniaudio'} miniaudio 40 substituteInPlace build_ffi_module.py \ 41 --replace-fail "miniaudio/stb_vorbis.c" "miniaudio/extras/stb_vorbis.c"; 42 substituteInPlace miniaudio.c \ 43 --replace-fail "miniaudio/stb_vorbis.c" "miniaudio/extras/stb_vorbis.c"; 44 ''; 45 46 build-system = [ setuptools ]; 47 48 buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ 49 AudioToolbox 50 CoreAudio 51 ]; 52 53 propagatedNativeBuildInputs = [ cffi ]; 54 dependencies = [ cffi ]; 55 56 nativeCheckInputs = [ pytestCheckHook ]; 57 58 pythonImportsCheck = [ "miniaudio" ]; 59 60 meta = with lib; { 61 changelog = "https://github.com/irmen/pyminiaudio/releases/tag/v${version}"; 62 description = "Python bindings for the miniaudio library and its decoders"; 63 homepage = "https://github.com/irmen/pyminiaudio"; 64 license = licenses.mit; 65 maintainers = with maintainers; [ dotlambda ]; 66 }; 67}