overlays-personal/pkgs/reaper/default.nix

61 lines
1.3 KiB
Nix

{ stdenv, fetchurl, autoPatchelfHook, makeWrapper
, alsaLib, xorg
, gnome3, gtk3, pango, gdk_pixbuf, cairo, glib, freetype
, libpulseaudio, libjack2, xdg_utils
}:
stdenv.mkDerivation rec {
name = "reaper-${version}";
version = "6.12c";
src = fetchurl {
url = "https://www.reaper.fm/files/${stdenv.lib.versions.major version}.x/reaper${builtins.replaceStrings ["."] [""] version}_linux_x86_64.tar.xz";
sha256 = "1xnd4qvgwsz1dmgb656i611776dqcb84m1gh30i8jhpwcr9ym46w";
};
nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
buildInputs = [
alsaLib
xorg.libX11
xorg.libXi
gdk_pixbuf
pango
cairo
glib
freetype
xdg_utils
];
runtimeDependencies = [
gtk3
];
dontBuild = true;
installPhase = ''
XDG_DATA_HOME="$out/share" ./install-reaper.sh \
--install $out/opt \
--integrate-user-desktop
rm $out/opt/REAPER/uninstall-reaper.sh
wrapProgram $out/opt/REAPER/reaper \
--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ libpulseaudio libjack2 ]}
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" ];
};
}