nixpkgs-overlay/playgsf/default.nix

59 lines
1.7 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ lib, stdenv, fetchzip, fetchpatch, libao, libresample, zlib }:
stdenv.mkDerivation rec {
pname = "playgsf";
version = "0.7.1";
src = fetchzip {
url = "http://projects.raphnet.net/${pname}/${pname}-${version}.tar.gz";
sha256 = "1y7qs2fnmlf2z8abb6190ga958vak33s3n4xrndg9zakdahi03ff";
};
patches = [
./no-bundled-libresample.patch
# Make compile with newer GCC that does not allow invalid code
(fetchpatch {
name = "fixes.patch";
url = "https://aur.archlinux.org/cgit/aur.git/plain/fixes.patch?h=playgsf&id=1d613d3923987b39ca81636650038e670b712b29";
sha256 = "sha256-0sWvb/qF6LLtd2LfpLGwH/MKAjDKuElfXRGBlDrwYoU=";
})
];
nativeBuildInputs = [ ];
buildInputs = [ libao libresample zlib ];
# nixpkgs version of libresample is used
postPatch = ''
rm -r libresample-0.1.3
'';
# remove libresample
postConfigure = ''
substituteInPlace Makefile \
--replace "-I./libresample-0.1.3/include" "" \
--replace "-L./libresample-0.1.3" ""
'';
# if optimisations are on, a segfault in VBA/Util.o:585 (fread) occurs
# !!! HACK: re-compile that object without optimisations and link the main
# binary again
postBuild = ''
g++ -DLINUX -O0 -c VBA/Util.cpp -o VBA/Util.o
make
'';
installPhase = ''
runHook preInstall
install -D playgsf $out/bin/playgsf
runHook postInstall
'';
meta = with lib; {
description = "A simple command line player for gsf files based on the winamp plugin Highly Advanced";
homepage = "http://projects.raphnet.net/#playgsf";
license = with licenses; [ gpl2Plus mit unfree ]; # some files do not have license header and no global license
maintainers = with maintainers; [ sbruder ];
platforms = platforms.unix;
};
}