roomeqwizard: init at 5.20.4

authored by

Francesco Zanini and committed by
Bjørn Forsman
f4cd131e 666c8756

+120
+118
pkgs/applications/audio/roomeqwizard/default.nix
···
··· 1 + { coreutils 2 + , fetchurl 3 + , gawk 4 + , gnused 5 + , jdk8 6 + , lib 7 + , makeDesktopItem 8 + , makeWrapper 9 + , stdenv 10 + , writeScript 11 + , writeTextFile 12 + , recommendedUdevRules ? true 13 + }: 14 + 15 + stdenv.mkDerivation rec { 16 + pname = "roomeqwizard"; 17 + version = "5.20.4"; 18 + 19 + src = fetchurl { 20 + url = "https://www.roomeqwizard.com/installers/REW_linux_${lib.replaceChars [ "." ] [ "_" ] version}.sh"; 21 + sha256 = "0m2b5hwazy4vyjk51cmayys250rircs3c0v7bv5mn28h7hyq29s8"; 22 + }; 23 + 24 + dontUnpack = true; 25 + 26 + desktopItem = makeDesktopItem { 27 + name = pname; 28 + exec = pname; 29 + icon = pname; 30 + desktopName = "REW"; 31 + genericName = "Software for audio measurements"; 32 + categories = "AudioVideo;"; 33 + }; 34 + 35 + responseFile = writeTextFile { 36 + name = "response.varfile"; 37 + text = '' 38 + createDesktopLinkAction$Boolean=false 39 + executeLauncherAction$Boolean=false 40 + mem$Integer=1 41 + opengl$Boolean=false 42 + sys.adminRights$Boolean=false 43 + sys.installationDir=INSTALLDIR 44 + sys.languageId=en 45 + sys.programGroupDisabled$Boolean=true 46 + ''; 47 + }; 48 + 49 + udevRules = '' 50 + # MiniDSP UMIK-1 calibrated USB microphone 51 + SUBSYSTEM=="usb", ATTR{idVendor}=="2752", ATTR{idProduct}=="0007", TAG+="uaccess" 52 + ''; 53 + 54 + nativeBuildInputs = [ makeWrapper ]; 55 + 56 + buildPhase = '' 57 + runHook preBuild 58 + 59 + # set JDK path in installer 60 + sed -E 's|^#\s*(INSTALL4J_JAVA_HOME_OVERRIDE=)|\1${jdk8}|' $src > installer 61 + chmod +x installer 62 + 63 + sed -e "s|INSTALLDIR|$out/share/roomeqwizard|" $responseFile > response.varfile 64 + 65 + export HOME=$PWD 66 + 67 + ./installer -q -varfile response.varfile 68 + 69 + runHook postBuild 70 + ''; 71 + 72 + installPhase = '' 73 + runHook preInstall 74 + 75 + mkdir -p $out/bin $out/lib/udev/rules.d $out/share/icons/hicolor/256x256/apps 76 + makeWrapper $out/share/roomeqwizard/roomeqwizard $out/bin/roomeqwizard \ 77 + --set INSTALL4J_JAVA_HOME_OVERRIDE ${jdk8} \ 78 + --prefix PATH : ${lib.makeBinPath [ coreutils gnused gawk ]} 79 + 80 + cp -r "$desktopItem/share/applications" $out/share/ 81 + cp $out/share/roomeqwizard/.install4j/s_*.png "$out/share/icons/hicolor/256x256/apps/${pname}.png" 82 + 83 + ${lib.optionalString recommendedUdevRules ''echo "$udevRules" > $out/lib/udev/rules.d/90-roomeqwizard.rules''} 84 + 85 + runHook postInstall 86 + ''; 87 + 88 + passthru.updateScript = writeScript "${pname}-update.sh" '' 89 + #!/usr/bin/env nix-shell 90 + #!nix-shell -i bash -p curl common-updater-scripts nixpkgs-fmt coreutils perl 91 + 92 + set -euo pipefail 93 + 94 + perlexpr='if (/current version.{1,10}v(\d+)\.(\d+)\.(\d+)/i) { print "$1.$2.$3"; break; }' 95 + 96 + oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion ${pname}" | tr -d '"')" 97 + latestVersion="$(curl -sS https://www.roomeqwizard.com/index.html | perl -ne "$perlexpr")" 98 + 99 + if [ ! "$oldVersion" = "$latestVersion" ]; then 100 + update-source-version ${pname} "$latestVersion" --version-key=version --print-changes 101 + nixpkgs-fmt "pkgs/applications/audio/roomeqwizard/default.nix" 102 + else 103 + echo "${pname} is already up-to-date" 104 + fi 105 + ''; 106 + 107 + meta = with lib; { 108 + homepage = "https://www.roomeqwizard.com/"; 109 + license = licenses.unfree; 110 + platforms = platforms.all; 111 + maintainers = with maintainers; [ zaninime ]; 112 + description = "Room Acoustics Software"; 113 + longDescription = '' 114 + REW is free software for room acoustic measurement, loudspeaker 115 + measurement and audio device measurement. 116 + ''; 117 + }; 118 + }
+2
pkgs/top-level/all-packages.nix
··· 27867 27868 renoise = callPackage ../applications/audio/renoise {}; 27869 27870 radiotray-ng = callPackage ../applications/audio/radiotray-ng { 27871 wxGTK = wxGTK30; 27872 };
··· 27867 27868 renoise = callPackage ../applications/audio/renoise {}; 27869 27870 + roomeqwizard = callPackage ../applications/audio/roomeqwizard { }; 27871 + 27872 radiotray-ng = callPackage ../applications/audio/radiotray-ng { 27873 wxGTK = wxGTK30; 27874 };