about summary refs log tree commit diff
path: root/pkgs/applications/audio
diff options
context:
space:
mode:
authorgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>2023-07-24 00:02:26 +0000
committerGitHub <noreply@github.com>2023-07-24 00:02:26 +0000
commit449a683b10adf009fb1bf2d75078cc3695c40132 (patch)
tree22b5fd5440872f8ab03faa0e48771bb4efa95fa9 /pkgs/applications/audio
parentdf35c8ee7ed9660ba63bead6a460f04f28474de0 (diff)
parentd7037fa447407bb6fd8319b2bd99538ac6e119ef (diff)
Merge master into staging-next
Diffstat (limited to 'pkgs/applications/audio')
-rw-r--r--pkgs/applications/audio/airwindows-lv2/default.nix4
-rw-r--r--pkgs/applications/audio/jmusicbot/default.nix2
-rw-r--r--pkgs/applications/audio/opustags/default.nix2
-rw-r--r--pkgs/applications/audio/pianoteq/default.nix115
-rw-r--r--pkgs/applications/audio/pianoteq/pianoteq.svg116
-rw-r--r--pkgs/applications/audio/spotify/darwin.nix10
6 files changed, 219 insertions, 30 deletions
diff --git a/pkgs/applications/audio/airwindows-lv2/default.nix b/pkgs/applications/audio/airwindows-lv2/default.nix
index 36d9ea7fb8b4c..c479ebe7ee65f 100644
--- a/pkgs/applications/audio/airwindows-lv2/default.nix
+++ b/pkgs/applications/audio/airwindows-lv2/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "airwindows-lv2";
-  version = "18.0";
+  version = "20.0";
   src = fetchFromGitHub {
     owner = "hannesbraun";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-06mfTvt0BXHUGZG2rnEbuOPIP+jD76mQZTo+m4b4lo4=";
+    sha256 = "sha256-uflvUmUzOtF3BwiLfnd+qhz+ZYyn8AKvODFs599phhU=";
   };
 
   nativeBuildInputs = [ meson ninja pkg-config ];
diff --git a/pkgs/applications/audio/jmusicbot/default.nix b/pkgs/applications/audio/jmusicbot/default.nix
index 590c695577cff..0bdd80a9601ae 100644
--- a/pkgs/applications/audio/jmusicbot/default.nix
+++ b/pkgs/applications/audio/jmusicbot/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/jagrosh/MusicBot";
     sourceProvenance = with sourceTypes; [ binaryBytecode ];
     license = licenses.asl20;
-    maintainers = with maintainers; [ SuperSandro2000 ];
+    maintainers = with maintainers; [ ];
     inherit (jre_headless.meta) platforms;
   };
 }
diff --git a/pkgs/applications/audio/opustags/default.nix b/pkgs/applications/audio/opustags/default.nix
index fb13ac6ece35c..56ef66642801b 100644
--- a/pkgs/applications/audio/opustags/default.nix
+++ b/pkgs/applications/audio/opustags/default.nix
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
     description = "Ogg Opus tags editor";
     platforms = platforms.all;
     broken = stdenv.isDarwin;
-    maintainers = with maintainers; [ kmein SuperSandro2000 ];
+    maintainers = with maintainers; [ kmein ];
     license = licenses.bsd3;
   };
 }
diff --git a/pkgs/applications/audio/pianoteq/default.nix b/pkgs/applications/audio/pianoteq/default.nix
index e528cc8ade8d5..e13573cf0587e 100644
--- a/pkgs/applications/audio/pianoteq/default.nix
+++ b/pkgs/applications/audio/pianoteq/default.nix
@@ -1,8 +1,33 @@
-{ lib, stdenv, curl, jq, htmlq, xorg, alsa-lib, freetype, p7zip, autoPatchelfHook, writeShellScript, zlib, libjack2, makeWrapper }:
+{ lib
+, stdenv
+, curl
+, jq
+, htmlq
+, xorg
+, alsa-lib
+, freetype
+, p7zip
+, autoPatchelfHook
+, writeShellScript
+, zlib
+, libjack2
+, makeWrapper
+, copyDesktopItems
+, makeDesktopItem
+, librsvg
+}:
 let
-  versionForFile = v: builtins.replaceStrings ["."] [""] v;
+  versionForFile = v: builtins.replaceStrings [ "." ] [ "" ] v;
 
-  mkPianoteq = { name, src, version, archdir ? if (stdenv.hostPlatform.system == "aarch64-linux") then "arm-64bit" else "x86-64bit", ... }:
+  mkPianoteq =
+    { name
+    , mainProgram
+    , startupWMClass
+    , src
+    , version
+    , archdir ? if (stdenv.hostPlatform.system == "aarch64-linux") then "arm-64bit" else "x86-64bit"
+    , ...
+    }:
     stdenv.mkDerivation rec {
       inherit src version;
 
@@ -14,18 +39,34 @@ let
 
       nativeBuildInputs = [
         autoPatchelfHook
+        copyDesktopItems
         makeWrapper
+        librsvg
       ];
 
       buildInputs = [
         stdenv.cc.cc.lib
-        xorg.libX11      # libX11.so.6
-        xorg.libXext     # libXext.so.6
-        alsa-lib          # libasound.so.2
-        freetype         # libfreetype.so.6
+        xorg.libX11 # libX11.so.6
+        xorg.libXext # libXext.so.6
+        alsa-lib # libasound.so.2
+        freetype # libfreetype.so.6
+      ];
+
+      desktopItems = [
+        (makeDesktopItem {
+          name = pname;
+          exec = ''"${mainProgram}"'';
+          desktopName = mainProgram;
+          icon = "pianoteq";
+          comment = meta.description;
+          categories = [ "AudioVideo" "Audio"  "Recorder" ];
+          startupNotify = false;
+          inherit startupWMClass;
+        })
       ];
 
       installPhase = ''
+        runHook preInstall
         mkdir -p $out/bin
         mv -t $out/bin Pianoteq*/${archdir}/*
         for f in $out/bin/Pianoteq*; do
@@ -41,18 +82,31 @@ let
             }
           fi
         done
+        install -Dm644 ${./pianoteq.svg} $out/share/icons/hicolor/scalable/apps/pianoteq.svg
+        for size in 16 22 32 48 64 128 256; do
+          dir=$out/share/icons/hicolor/"$size"x"$size"/apps
+          mkdir -p $dir
+          rsvg-convert \
+            --keep-aspect-ratio \
+            --width $size \
+            --height $size \
+            --output $dir/pianoteq.png \
+            ${./pianoteq.svg}
+        done
+        runHook postInstall
       '';
 
       meta = with lib; {
         homepage = "https://www.modartt.com/pianoteq";
         description = "Software synthesizer that features real-time MIDI-control of digital physically modeled pianos and related instruments";
         license = licenses.unfree;
+        inherit mainProgram;
         platforms = [ "x86_64-linux" "aarch64-linux" ];
-        maintainers = [ maintainers.mausch ];
+        maintainers = with maintainers; [ mausch ners ];
       };
     };
 
-  fetchWithCurlScript = { name, sha256, script, impureEnvVars ? [] }:
+  fetchWithCurlScript = { name, hash, script, impureEnvVars ? [ ] }:
     stdenv.mkDerivation {
       inherit name;
       builder = writeShellScript "builder.sh" ''
@@ -81,7 +135,7 @@ let
       '';
       nativeBuildInputs = [ curl ];
       outputHashAlgo = "sha256";
-      outputHash = sha256;
+      outputHash = hash;
 
       impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ impureEnvVars ++ [
         # This variable allows the user to pass additional options to curl
@@ -89,9 +143,9 @@ let
       ];
     };
 
-  fetchPianoteqTrial = { name, sha256 }:
+  fetchPianoteqTrial = { name, hash }:
     fetchWithCurlScript {
-      inherit name sha256;
+      inherit name hash;
       script = ''
         html=$(
           "''${curl[@]}" --silent --request GET \
@@ -122,9 +176,9 @@ let
       '';
     };
 
-  fetchPianoteqWithLogin = { name, sha256 }:
+  fetchPianoteqWithLogin = { name, hash }:
     fetchWithCurlScript {
-      inherit name sha256;
+      inherit name hash;
 
       impureEnvVars = [ "NIX_MODARTT_USERNAME" "NIX_MODARTT_PASSWORD" ];
 
@@ -164,39 +218,58 @@ let
       '';
     };
 
-in {
+in
+{
   # TODO currently can't install more than one because `lame` clashes
   stage-trial = mkPianoteq rec {
     name = "stage-trial";
-    version = "8.0.8";
+    mainProgram = "Pianoteq 8 STAGE";
+    startupWMClass = "Pianoteq STAGE Trial";
+    version = "8.1.1";
     src = fetchPianoteqTrial {
       name = "pianoteq_stage_linux_trial_v${versionForFile version}.7z";
-      sha256 = "sha256-dp0bTzzh4aQ2KQ3z9zk+3meKQY4YRYQ86rccHd3+hAQ=";
+      hash = "sha256-jMGv95WiD7UHAuSzKgauLhlsNvO/RWVrHd2Yf3kiUTo=";
     };
   };
   standard-trial = mkPianoteq rec {
     name = "standard-trial";
-    version = "8.0.8";
+    mainProgram = "Pianoteq 8";
+    startupWMClass = "Pianoteq Trial";
+    version = "8.1.1";
     src = fetchPianoteqTrial {
       name = "pianoteq_linux_trial_v${versionForFile version}.7z";
-      sha256 = "sha256-LSrnrjkEhsX9TirUUFs9tNqH2A3cTt3I7YTfcTT6EP8=";
+      hash = "sha256-pL4tJMV8OTVLT4fwABcImWO+iaVe9gCdDN3rbkL+noc=";
     };
   };
   stage-6 = mkPianoteq rec {
     name = "stage-6";
+    mainProgram = "Pianoteq 6 STAGE";
+    startupWMClass = "Pianoteq STAGE";
     version = "6.7.3";
     archdir = if (stdenv.hostPlatform.system == "aarch64-linux") then throw "Pianoteq stage-6 is not supported on aarch64-linux" else "amd64";
     src = fetchPianoteqWithLogin {
       name = "pianoteq_stage_linux_v${versionForFile version}.7z";
-      sha256 = "0jy0hkdynhwv0zhrqkby0hdphgmcc09wxmy74rhg9afm1pzl91jy";
+      hash = "0jy0hkdynhwv0zhrqkby0hdphgmcc09wxmy74rhg9afm1pzl91jy";
     };
   };
   stage-7 = mkPianoteq rec {
     name = "stage-7";
+    mainProgram = "Pianoteq 7 STAGE";
+    startupWMClass = "Pianoteq STAGE";
     version = "7.3.0";
     src = fetchPianoteqWithLogin {
       name = "pianoteq_stage_linux_v${versionForFile version}.7z";
-      sha256 = "05w7sv9v38r6ljz9xai816w5z2qqwx88hcfjm241fvgbs54125hx";
+      hash = "05w7sv9v38r6ljz9xai816w5z2qqwx88hcfjm241fvgbs54125hx";
+    };
+  };
+  standard-8 = mkPianoteq rec {
+    name = "standard-8";
+    mainProgram = "Pianoteq 8";
+    startupWMClass = "Pianoteq";
+    version = "8.1.1";
+    src = fetchPianoteqWithLogin {
+      name = "pianoteq_linux_v${versionForFile version}.7z";
+      hash = "sha256-vWvo+ctJ0yN6XeJZZVhA3Ul9eWJWAh7Qo54w0TpOiVw=";
     };
   };
   # TODO other paid binaries, I don't own that so I don't know their hash.
diff --git a/pkgs/applications/audio/pianoteq/pianoteq.svg b/pkgs/applications/audio/pianoteq/pianoteq.svg
new file mode 100644
index 0000000000000..0e410d0ff8d01
--- /dev/null
+++ b/pkgs/applications/audio/pianoteq/pianoteq.svg
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   width="1000"
+   height="1000"
+   viewBox="0 0 264.58333 264.58334"
+   version="1.1"
+   id="svg5"
+   inkscape:version="1.1 (c4e8f9e, 2021-05-24)"
+   sodipodi:docname="Pianoteq macOS app icon.svg"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:svg="http://www.w3.org/2000/svg">
+  <sodipodi:namedview
+     id="namedview7"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     inkscape:pagecheckerboard="0"
+     inkscape:document-units="mm"
+     showgrid="false"
+     units="px"
+     inkscape:snap-global="false"
+     inkscape:zoom="0.55678311"
+     inkscape:cx="387.04479"
+     inkscape:cy="561.25984"
+     inkscape:window-width="1960"
+     inkscape:window-height="1125"
+     inkscape:window-x="780"
+     inkscape:window-y="181"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="layer1" />
+  <defs
+     id="defs2">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient79">
+      <stop
+         style="stop-color:#1b579e;stop-opacity:1"
+         offset="0"
+         id="stop75" />
+      <stop
+         style="stop-color:#002146;stop-opacity:1"
+         offset="1"
+         id="stop77" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient79"
+       id="linearGradient81"
+       x1="-73.180801"
+       y1="67.478401"
+       x2="103.1184"
+       y2="264.6864"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(117.76853,-32.76193)" />
+    <filter
+       style="color-interpolation-filters:sRGB;"
+       inkscape:label="Drop Shadow"
+       id="filter9691"
+       x="-0.019462447"
+       y="-0.019425019"
+       width="1.0486367"
+       height="1.0497548">
+      <feFlood
+         flood-opacity="0.27451"
+         flood-color="rgb(0,0,0)"
+         result="flood"
+         id="feFlood9681" />
+      <feComposite
+         in="flood"
+         in2="SourceGraphic"
+         operator="in"
+         result="composite1"
+         id="feComposite9683" />
+      <feGaussianBlur
+         in="composite1"
+         stdDeviation="2"
+         result="blur"
+         id="feGaussianBlur9685" />
+      <feOffset
+         dx="2.39521"
+         dy="2.69461"
+         result="offset"
+         id="feOffset9687" />
+      <feComposite
+         in="SourceGraphic"
+         in2="offset"
+         operator="over"
+         result="composite2"
+         id="feComposite9689" />
+    </filter>
+  </defs>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="fill:url(#linearGradient81);fill-opacity:1;stroke-width:0.264583;filter:url(#filter9691)"
+       id="rect43"
+       width="246.6288"
+       height="247.104"
+       x="8.9477348"
+       y="8.5804749"
+       ry="55.5984" />
+    <path
+       style="display:inline;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:#f2f2f2;stroke-width:0.79375;stroke-miterlimit:4;stroke-dasharray:none"
+       d="m 57.571897,38.584169 -0.432206,49.706154 c -0.01643,2.541563 0.73098,6.308484 1.728908,8.644552 l 29.823694,70.020845 c 0.997959,2.33702 1.728905,6.103 1.728905,8.64457 v 42.7905 5.18674 h 13.399052 v -9.07678 -41.49384 c 0,-2.5425 -0.74515,-6.73408 -1.72891,-9.07677 L 73.132109,94.773742 c -0.983783,-2.342684 -1.702961,-6.534987 -1.728908,-9.07678 L 70.538748,38.584169 Z m 54.028433,0 v 49.706154 c -0.0122,2.541804 0.73091,6.307531 1.72892,8.644552 l 29.82369,70.020845 c 0.99555,2.33702 1.7289,6.10182 1.7289,8.64457 v 42.7905 5.18674 h 13.39904 v -9.07678 -41.49384 c 0,-2.54085 -0.74504,-6.73314 -1.7289,-9.07677 L 127.16051,94.773742 c -0.98371,-2.342684 -1.69823,-6.535929 -1.7289,-9.07678 l -0.4322,-47.112793 z m 51.43506,0 -0.4322,49.706154 c -0.0145,2.541804 0.73092,6.307531 1.72892,8.644552 l 29.8237,70.020845 c 0.99796,2.33702 1.72892,6.10182 1.72892,8.64457 v 42.7905 5.18674 h 13.39904 v -9.07678 -41.49384 c 0,-2.54085 -0.74734,-6.73314 -1.7289,-9.07677 L 178.5956,94.773742 c -0.98382,-2.342684 -1.70296,-6.535929 -1.72892,-9.07678 L 176.00224,38.584169 Z M 82.208865,78.349097 c -4.992071,0 -8.644549,4.079046 -8.644549,9.076769 0,4.999387 3.652478,9.076791 8.644549,9.076791 4.980272,0 9.07678,-4.077404 9.07678,-9.076791 0,-4.997723 -4.096508,-9.076769 -9.07678,-9.076769 z m 54.460655,0 c -4.98969,0 -9.07677,4.079287 -9.07677,9.076769 0,4.994908 4.08708,9.076791 9.07677,9.076791 4.98263,0 9.07678,-4.081883 9.07678,-9.076791 0,-4.997482 -4.09415,-9.076769 -9.07678,-9.076769 z m 51.00284,0 c -4.98971,0 -8.64455,4.079287 -8.64455,9.076769 0,4.994908 3.65484,9.076791 8.64455,9.076791 4.98498,0 9.07678,-4.081883 9.07678,-9.076791 0,-4.997482 -4.0918,-9.076769 -9.07678,-9.076769 z M 79.183276,164.79459 c -4.982626,0 -8.644557,4.0781 -8.644557,9.07679 0,4.99393 3.661931,9.07676 8.644557,9.07676 4.992059,0 9.07677,-4.08283 9.07677,-9.07676 0,-4.99869 -4.084711,-9.07679 -9.07677,-9.07679 z m 54.460654,0 c -4.97556,0 -9.07677,4.07622 -9.07677,9.07679 0,4.99748 4.10121,9.07676 9.07677,9.07676 4.99207,0 9.07678,-4.07928 9.07678,-9.07676 0,-5.00057 -4.08471,-9.07679 -9.07678,-9.07679 z m 51.00285,0 c -4.99208,0 -8.64456,4.07622 -8.64456,9.07679 0,4.99748 3.65248,9.07676 8.64456,9.07676 4.98734,0 9.07677,-4.07928 9.07677,-9.07676 0,-5.00057 -4.08943,-9.07679 -9.07677,-9.07679 z"
+       id="path2997-3-6" />
+  </g>
+</svg>
diff --git a/pkgs/applications/audio/spotify/darwin.nix b/pkgs/applications/audio/spotify/darwin.nix
index 7fcb3aad71672..69c260a7bdb1c 100644
--- a/pkgs/applications/audio/spotify/darwin.nix
+++ b/pkgs/applications/audio/spotify/darwin.nix
@@ -9,17 +9,17 @@
 stdenv.mkDerivation {
   inherit pname;
 
-  version = "1.1.97.962.g24733a46";
+  version = "1.2.15.828.g79f41970";
 
   src = if stdenv.isAarch64 then (
     fetchurl {
-      url = "https://web.archive.org/web/20221101120432/https://download.scdn.co/SpotifyARM64.dmg";
-      sha256 = "sha256-8WDeVRgaZXuUa95PNa15Cuul95ynklBaZpuq+U1eGTU=";
+      url = "https://web.archive.org/web/20230710021420/https://download.scdn.co/SpotifyARM64.dmg";
+      sha256 = "sha256-1X0Mln47uYs5l1t+5BFBk5lLnXZgnSqZLX41yA91I0s=";
     })
   else (
     fetchurl {
-      url = "https://web.archive.org/web/20221101120647/https://download.scdn.co/Spotify.dmg";
-      sha256 = "sha256-uPpD8Hv70FlaSjtt9rq5ntI64agxG8+/LNEvRe4ocJ4=";
+      url = "https://web.archive.org/web/20230710021726/https://download.scdn.co/Spotify.dmg";
+      sha256 = "sha256-CmKZx8Ad0w6STBN0O4Sc4XqidOM6fCl74u2sI8w+Swk=";
     });
 
   nativeBuildInputs = [ undmg ];