From 1ae972c0195d09532d7401d122c9554637624df8 Mon Sep 17 00:00:00 2001 From: Bernardo Meurer Date: Mon, 31 Jan 2022 17:43:47 -0800 Subject: roon-bridge: 1.8-814 -> 1.8-880 --- pkgs/servers/roon-bridge/default.nix | 67 ++++++++++++++++++++---------------- 1 file changed, 38 insertions(+), 29 deletions(-) diff --git a/pkgs/servers/roon-bridge/default.nix b/pkgs/servers/roon-bridge/default.nix index 14161b5d5a3..9b896cd2a11 100644 --- a/pkgs/servers/roon-bridge/default.nix +++ b/pkgs/servers/roon-bridge/default.nix @@ -2,71 +2,80 @@ , alsa-utils , autoPatchelfHook , fetchurl +, ffmpeg , lib , makeWrapper +, openssl , stdenv , zlib }: -let - inherit (stdenv.targetPlatform) system; - throwSystem = throw "Unsupported system: ${system}"; -in stdenv.mkDerivation rec { pname = "roon-bridge"; - version = "1.8-814"; + version = "1.8-880"; src = let urlVersion = builtins.replaceStrings [ "." "-" ] [ "00" "00" ] version; + inherit (stdenv.targetPlatform) system; + noSuchSystem = throw "Unsupposed system: ${system}"; in { x86_64-linux = fetchurl { url = "http://download.roonlabs.com/builds/RoonBridge_linuxx64_${urlVersion}.tar.bz2"; - sha256 = "sha256-dersaP/8qkl9k81FrgMieB0P4nKmDwjLW5poqKhEn7A="; + sha256 = "sha256-YTLy3D1CQR1hlsGw2MmZtxHT82T0PCYZxD4adt2m1+o="; }; aarch64-linux = fetchurl { url = "http://download.roonlabs.com/builds/RoonBridge_linuxarmv8_${urlVersion}.tar.bz2"; - sha256 = "sha256-zZj7PkLUYYHo3dngqErv1RqynSXi6/D5VPZWfrppX5U="; + sha256 = "sha256-aCQtYMUIzwhmYJW4a8cFzIRuxyMVIkeaJH4w1Lasp3M="; }; - }.${system} or throwSystem; + }.${system} or noSuchSystem; + + dontConfigure = true; + dontBuild = true; buildInputs = [ alsa-lib - alsa-utils zlib + stdenv.cc.cc.lib ]; nativeBuildInputs = [ autoPatchelfHook makeWrapper ]; - installPhase = '' - runHook preInstall - mkdir -p $out - mv * $out - runHook postInstall - ''; - - postFixup = + installPhase = let - linkFix = bin: '' - sed -i '/ulimit/d' ${bin} - sed -i '/ln -sf/d' ${bin} - ln -sf $out/RoonMono/bin/mono-sgen $out/RoonMono/bin/${builtins.baseNameOf bin} - ''; - wrapFix = bin: '' - wrapProgram ${bin} --prefix PATH : ${lib.makeBinPath [ alsa-utils ]} + fixBin = binPath: '' + ( + sed -i '/ulimit/d' ${binPath} + sed -i 's@^SCRIPT=.*@SCRIPT="$(basename "${binPath}")"@' ${binPath} + wrapProgram ${binPath} \ + --argv0 "$(basename ${binPath})" \ + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ alsa-lib ffmpeg openssl ]}" \ + --prefix PATH : "${lib.makeBinPath [ alsa-utils ffmpeg ]}" + ) ''; in '' - ${linkFix "$out/Bridge/RAATServer"} - ${linkFix "$out/Bridge/RoonBridge"} - ${linkFix "$out/Bridge/RoonBridgeHelper"} + runHook preInstall + mkdir -p $out + mv * $out + + rm $out/check.sh + rm $out/start.sh + rm $out/VERSION + + ${fixBin "${placeholder "out"}/Bridge/RAATServer"} + ${fixBin "${placeholder "out"}/Bridge/RoonBridge"} + ${fixBin "${placeholder "out"}/Bridge/RoonBridgeHelper"} + + mkdir -p $out/bin + makeWrapper "$out/Bridge/RoonBridge" "$out/bin/RoonBridge" --run "cd $out" - ${wrapFix "$out/check.sh"} - ${wrapFix "$out/start.sh"} + runHook postInstall ''; meta = with lib; { description = "The music player for music lovers"; + changelog = "https://community.roonlabs.com/c/roon/software-release-notes/18"; homepage = "https://roonlabs.com"; license = licenses.unfree; maintainers = with maintainers; [ lovesegfault ]; -- cgit 1.4.1