diff --git a/pkgs/applications/audio/linuxsampler/default.nix b/pkgs/applications/audio/linuxsampler/default.nix index 4dad6e58fee9..440f81c53c3c 100644 --- a/pkgs/applications/audio/linuxsampler/default.nix +++ b/pkgs/applications/audio/linuxsampler/default.nix @@ -1,31 +1,28 @@ -{ stdenv, fetchsvn, alsaLib, asio, autoconf, automake, bison -, libjack2, libgig, libsndfile, libtool, lv2, pkgconfig }: +{ stdenv, fetchurl, autoconf, automake, bison, libtool, pkgconfig, which +, alsaLib, asio, libjack2, libgig, libsndfile, lv2 }: stdenv.mkDerivation rec { - name = "linuxsampler-svn-${version}"; - version = "2340"; + name = "linuxsampler-${version}"; + version = "2.1.0"; - src = fetchsvn { - url = "https://svn.linuxsampler.org/svn/linuxsampler/trunk"; - rev = "${version}"; - sha256 = "0zsrvs9dwwhjx733m45vfi11yjkqv33z8qxn2i9qriq5zs1f0kd7"; + src = fetchurl { + url = "http://download.linuxsampler.org/packages/${name}.tar.bz2"; + sha256 = "0fdxpw7jjfi058l95131d6d8538h05z7n94l60i6mhp9xbplj2jf"; }; - patches = ./linuxsampler_lv2_sfz_fix.diff; - # It fails to compile without this option. I'm not sure what the bug # is, but everything works OK for me (goibhniu). configureFlags = [ "--disable-nptl-bug-check" ]; preConfigure = '' - sed -e 's/which/type -P/g' -i scripts/generate_parser.sh - make -f Makefile.cvs + make -f Makefile.svn ''; - buildInputs = [ - alsaLib asio autoconf automake bison libjack2 libgig libsndfile - libtool lv2 pkgconfig - ]; + nativeBuildInputs = [ autoconf automake bison libtool pkgconfig which ]; + + buildInputs = [ alsaLib asio libjack2 libgig libsndfile lv2 ]; + + enableParallelBuilding = true; meta = with stdenv.lib; { homepage = http://www.linuxsampler.org; @@ -40,7 +37,7 @@ stdenv.mkDerivation rec { prior written permission by the LinuxSampler authors. If you have questions on the subject, that are not yet covered by the FAQ, please contact us. - ''; + ''; license = licenses.unfree; maintainers = [ maintainers.goibhniu ]; platforms = platforms.linux; diff --git a/pkgs/applications/audio/linuxsampler/linuxsampler_lv2_sfz_fix.diff b/pkgs/applications/audio/linuxsampler/linuxsampler_lv2_sfz_fix.diff deleted file mode 100644 index 114726db19d6..000000000000 --- a/pkgs/applications/audio/linuxsampler/linuxsampler_lv2_sfz_fix.diff +++ /dev/null @@ -1,50 +0,0 @@ -Index: linuxsampler-r2359/src/hostplugins/lv2/PluginLv2.cpp -=================================================================== ---- linuxsampler-r2359/src/hostplugins/lv2/PluginLv2.cpp (revision 2359) -+++ linuxsampler-r2359/src/hostplugins/lv2/PluginLv2.cpp (working copy) -@@ -18,6 +18,8 @@ - * MA 02110-1301 USA * - ***************************************************************************/ - -+#define _BSD_SOURCE 1 /* for realpath() */ -+ - #include - #include - #include -@@ -118,6 +120,23 @@ - dmsg(2, ("linuxsampler: Deactivate\n")); - } - -+ static String RealPath(const String& path) -+ { -+ String out = path; -+ char* cpath = NULL; -+#ifdef _WIN32 -+ cpath = (char*)malloc(MAX_PATH); -+ GetFullPathName(path.c_str(), MAX_PATH, cpath, NULL); -+#else -+ cpath = realpath(path.c_str(), NULL); -+#endif -+ if (cpath) { -+ out = cpath; -+ free(cpath); -+ } -+ return out; -+ } -+ - String PluginLv2::PathToState(const String& path) { - if (MapPath) { - char* cstr = MapPath->abstract_path(MapPath->handle, path.c_str()); -@@ -131,9 +150,10 @@ - String PluginLv2::PathFromState(const String& path) { - if (MapPath) { - char* cstr = MapPath->absolute_path(MapPath->handle, path.c_str()); -- const String abstract_path(cstr); -+ // Resolve symbolic links so SFZ sample paths load correctly -+ const String absolute_path(RealPath(cstr)); - free(cstr); -- return abstract_path; -+ return absolute_path; - } - return path; - } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 301bcfd193d8..dc92b9a8b53d 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15636,9 +15636,7 @@ with pkgs; polarssl = mbedtls_1_3; }; - linuxsampler = callPackage ../applications/audio/linuxsampler { - bison = bison2; - }; + linuxsampler = callPackage ../applications/audio/linuxsampler { }; llpp = ocaml-ng.ocamlPackages.callPackage ../applications/misc/llpp { };