81 lines
1.8 KiB
Nix
81 lines
1.8 KiB
Nix
{ stdenv, fetchurl, autoPatchelfHook, makeWrapper
|
|
, alsaLib, xorg
|
|
, fetchFromGitHub, pkgconfig, gnome3
|
|
, gnome2, gdk_pixbuf, cairo, glib, freetype
|
|
, libpulseaudio
|
|
}:
|
|
|
|
let
|
|
libSwell = stdenv.mkDerivation {
|
|
name = "libSwell";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "justinfrankel";
|
|
repo = "WDL";
|
|
rev = "e87f5bdee7327b63398366fde6ec0a3f08bf600d";
|
|
sha256 = "147idjqc6nc23w9krl8a9w571k5jx190z3id6ir6cr8zsx0lakdb";
|
|
};
|
|
|
|
nativeBuildInputs = [ pkgconfig ];
|
|
buildInputs = [ gnome3.gtk ];
|
|
|
|
buildPhase = ''
|
|
cd WDL/swell
|
|
make
|
|
'';
|
|
|
|
installPhase = ''
|
|
mv libSwell.so $out
|
|
'';
|
|
};
|
|
|
|
in stdenv.mkDerivation rec {
|
|
name = "reaper-${version}";
|
|
version = "5.94";
|
|
|
|
src = fetchurl {
|
|
url = "https://www.reaper.fm/files/${stdenv.lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_x86_64.tar.xz";
|
|
sha256 = "16g5q12wh1cfbl9wq03vb7vpsd870k7i7883z0wn492x7y9syz8z";
|
|
};
|
|
|
|
nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
|
|
|
|
buildInputs = [
|
|
alsaLib
|
|
stdenv.cc.cc.lib
|
|
|
|
xorg.libX11
|
|
xorg.libXi
|
|
|
|
gnome3.gtk
|
|
gdk_pixbuf
|
|
gnome2.pango
|
|
cairo
|
|
glib
|
|
freetype
|
|
];
|
|
|
|
dontBuild = true;
|
|
|
|
installPhase = ''
|
|
./install-reaper.sh --install $out/opt
|
|
rm $out/opt/REAPER/uninstall-reaper.sh
|
|
|
|
cp ${libSwell.out} $out/opt/REAPER/libSwell.so
|
|
|
|
wrapProgram $out/opt/REAPER/reaper \
|
|
--prefix LD_LIBRARY_PATH : ${libpulseaudio}/lib
|
|
|
|
mkdir $out/bin
|
|
ln -s $out/opt/REAPER/reaper $out/bin/
|
|
ln -s $out/opt/REAPER/reamote-server $out/bin/
|
|
'';
|
|
|
|
meta = with stdenv.lib; {
|
|
description = "Digital audio workstation";
|
|
homepage = https://www.reaper.fm/;
|
|
license = licenses.unfree;
|
|
platforms = [ "x86_64-linux" ];
|
|
maintainers = with maintainers; [ jfrankenau ];
|
|
};
|
|
}
|