{ config, lib, stdenv, fetchurl, zlib, pkg-config, mpg123, libogg, libvorbis, portaudio, libsndfile, flac , usePulseAudio ? config.pulseaudio or false, libpulseaudio }: stdenv.mkDerivation rec { pname = "openmpt123"; version = "0.5.10"; src = fetchurl { url = "https://lib.openmpt.org/files/libopenmpt/src/libopenmpt-${version}+release.autotools.tar.gz"; sha256 = "sha256-Waj6KNi432nLf6WXK9+TEIHatOHhFWxpoaU7ZcK+n/o="; }; enableParallelBuilding = true; nativeBuildInputs = [ pkg-config ]; buildInputs = [ zlib mpg123 libogg libvorbis portaudio libsndfile flac ] ++ lib.optional usePulseAudio libpulseaudio; configureFlags = lib.optional (!usePulseAudio) "--without-pulseaudio"; doCheck = true; meta = with lib; { description = "A cross-platform command-line based module file player"; homepage = "https://lib.openmpt.org/libopenmpt/"; license = licenses.bsd3; maintainers = with maintainers; [ OPNA2608 ]; platforms = platforms.unix; }; }