70 lines
1.4 KiB
Nix
70 lines
1.4 KiB
Nix
|
{ lib
|
||
|
, stdenv
|
||
|
, fetchFromGitHub
|
||
|
, fetchpatch
|
||
|
, alsa-lib
|
||
|
, cmake
|
||
|
, fluidsynth
|
||
|
, libsndfile
|
||
|
, mpg123
|
||
|
, ninja
|
||
|
, pkg-config
|
||
|
, soundfont-fluid
|
||
|
, zlib
|
||
|
}:
|
||
|
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "zmusic";
|
||
|
version = "1.1.11";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "ZDoom";
|
||
|
repo = "ZMusic";
|
||
|
rev = version;
|
||
|
hash = "sha256-QvP8ranwBs8VupBie4vrHdm517OOpCuV3Rbjeb/L9PY=";
|
||
|
};
|
||
|
|
||
|
outputs = [ "out" "dev" ];
|
||
|
|
||
|
patches = [
|
||
|
(fetchpatch {
|
||
|
name = "system-fluidsynth.patch";
|
||
|
url = "https://git.alpinelinux.org/aports/plain/testing/zmusic/system-fluidsynth.patch?id=59bac94da374cb01bc2a0e49d9e9287812fa1ac0";
|
||
|
hash = "sha256-xKaqiNk1Kt9yNLB22IVmSEtGeOtxrCi7YtFCmhNr0MI=";
|
||
|
})
|
||
|
];
|
||
|
|
||
|
postPatch = ''
|
||
|
substituteInPlace source/mididevices/music_fluidsynth_mididevice.cpp \
|
||
|
--replace "/usr/share/sounds/sf2" "${soundfont-fluid}/share/soundfonts" \
|
||
|
--replace "FluidR3_GM.sf2" "FluidR3_GM2-2.sf2"
|
||
|
'';
|
||
|
|
||
|
nativeBuildInputs = [
|
||
|
cmake
|
||
|
ninja
|
||
|
pkg-config
|
||
|
];
|
||
|
|
||
|
buildInputs = [
|
||
|
alsa-lib
|
||
|
fluidsynth
|
||
|
libsndfile
|
||
|
mpg123
|
||
|
zlib
|
||
|
];
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "GZDoom's music system as a standalone library";
|
||
|
homepage = "https://github.com/ZDoom/ZMusic";
|
||
|
license = with licenses; [
|
||
|
free
|
||
|
gpl3Plus
|
||
|
lgpl21Plus
|
||
|
lgpl3Plus
|
||
|
];
|
||
|
platforms = platforms.linux;
|
||
|
maintainers = with maintainers; [ azahi lassulus ];
|
||
|
};
|
||
|
}
|