Change:
<] Trying to install this and get failure due to bad URL. Probably due to a stale version number, this should target the most recent version or redux

Discussion:
{ lib , stdenv , fetchurl <ins> , writeScript </ins> , libX11 , libXext , alsa-lib

stdenv.mkDerivation rec { pname = "redux"; <del> version = "1.3.2"; </del> <ins> version = "1.3.5"; </ins> src = if releasePath != null then releasePath else fetchurl { <del> url = "https://files.renoise.com/demo/Renoise_Redux_${lib.replaceStrings ["."] ["_"] version}_Demo_Linux_x86_64.tar.gz"; sha256 = "sha256-wafOeNvVIHc8pOHoNQcCwV8+OwnuevJo1EcRQKRX4YA="; </del> <ins> urls = [ "https://files.renoise.com/demo/Renoise_Redux_${lib.replaceStrings ["."] ["_"] version}_Demo_Linux_x86_64.tar.gz" "https://files.renoise.com/demo/archive/Renoise_Redux_${lib.replaceStrings ["."] ["_"] version}_Demo_Linux_x86_64.tar.gz" ]; sha256 = "sha256-eznsdLzgdJ7MyWe5WAEg1MHId5VlfyanoZ6+I9nI/0I="; </ins> }; nativeBuildInputs = [

runHook postInstall ''; <ins> passthru.updateScript = writeScript "update-redux" '' #!/usr/bin/env nix-shell #!nix-shell -I nixpkgs=./. -i bash -p curl htmlq common-updater-scripts set -euo pipefail new_version="$( curl 'https://files.renoise.com/demo/'  | htmlq a --text  | grep -E '^Renoise_Redux_([0-9]+_?)+_Demo_Linux_x86_64.tar.gz$'  | grep -Eo '[0-9]+(_[0-9]+)*'  | head -n1  | tr _ . )" update-source-version redux "$new_version" --system="x86_64-linux" ''; </ins> meta = with lib; { description = "Sample-based instrument, with a powerful phrase sequencer"; homepage = "https://www.renoise.com/products/redux";

{ lib , stdenv <ins> , writeScript </ins> , alsa-lib , fetchurl , libjack2

platforms = { x86_64-linux = { archSuffix = "x86_64"; <del> hash = "sha256-Etz6NaeLMysSkcQGC3g+IqUy9QrONCrbkyej63uLflo="; </del> <ins> hash = "sha256-b+YXBVnxu54HfC/tWapcs/ZYzwBOJswYbEbEU3SVNss="; </ins> }; aarch64-linux = { archSuffix = "arm64"; <del> hash = "sha256-PVpgxhJU8RY6QepydqImQnisWBjbrsuW4j49Xot3C6Y="; </del> <ins> hash = "sha256-l54FAtT+Rj4Mv3GuOF0/9WuKdJowgbZDZYo7VCh6Flg="; </ins> }; }; in stdenv.mkDerivation rec { pname = "renoise"; <del> version = "3.4.3"; </del> <ins> version = "3.4.4"; </ins> src = if releasePath != null then releasePath

platform = platforms.${stdenv.system} or (throw "unsupported system ${stdenv.hostPlatform.system}"); urlVersion = lib.replaceStrings [ "." ] [ "_" ] version; in fetchurl { <del> url = "https://files.renoise.com/demo/Renoise_${urlVersion}_Demo_Linux_${platform.archSuffix}.tar.gz"; </del> <ins> urls = [ "https://files.renoise.com/demo/Renoise_${urlVersion}_Demo_Linux_${platform.archSuffix}.tar.gz" "https://files.renoise.com/demo/archive/Renoise_${urlVersion}_Demo_Linux_${platform.archSuffix}.tar.gz" ]; </ins> hash = platform.hash; };

--replace Exec=renoise Exec=$out/bin/renoise ''; <ins> passthru.updateScript = writeScript "update-renoise" '' #!/usr/bin/env nix-shell #!nix-shell -I nixpkgs=./. -i bash -p curl htmlq common-updater-scripts set -euo pipefail new_version="$( curl 'https://files.renoise.com/demo/'  | htmlq a --text  | grep -E '^Renoise_([0-9]+_?)+_Demo_Linux_x86_64.tar.gz$'  | grep -Eo '[0-9]+(_[0-9]+)*'  | head -n1  | tr _ . )" hash_x86_64="$(nix-prefetch-url "https://files.renoise.com/demo/Renoise_$(echo "$new_version" | tr . _)_Demo_Linux_x86_64.tar.gz")" hash_arm64="$( nix-prefetch-url "https://files.renoise.com/demo/Renoise_$(echo "$new_version" | tr . _)_Demo_Linux_arm64.tar.gz")" sri_x86_64="$(nix --extra-experimental-features nix-command hash to-sri --type sha256 "$hash_x86_64")" sri_arm64="$( nix --extra-experimental-features nix-command hash to-sri --type sha256 "$hash_arm64")" update-source-version renoise "$new_version" "$sri_x86_64" --system="x86_64-linux"  --ignore-same-version update-source-version renoise "$new_version" "$sri_arm64"  --system="aarch64-linux" --ignore-same-version ''; </ins> meta = { description = "Modern tracker-based DAW"; homepage = "https://www.renoise.com/";