summary refs log tree commit diff
path: root/pkgs/applications/audio
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/audio')
-rw-r--r--pkgs/applications/audio/aacgain/default.nix5
-rw-r--r--pkgs/applications/audio/axoloti/libusb1.nix13
-rw-r--r--pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix4
-rw-r--r--pkgs/applications/audio/carla/default.nix4
-rw-r--r--pkgs/applications/audio/cdparanoia/default.nix5
-rw-r--r--pkgs/applications/audio/crip/default.nix5
-rw-r--r--pkgs/applications/audio/csound/default.nix4
-rw-r--r--pkgs/applications/audio/deadbeef/plugins/statusnotifier.nix39
-rw-r--r--pkgs/applications/audio/dirt/default.nix3
-rw-r--r--pkgs/applications/audio/gmu/default.nix5
-rw-r--r--pkgs/applications/audio/gpodder/default.nix7
-rw-r--r--pkgs/applications/audio/hqplayer-desktop/default.nix12
-rw-r--r--pkgs/applications/audio/jack-rack/default.nix5
-rw-r--r--pkgs/applications/audio/jackmeter/default.nix5
-rw-r--r--pkgs/applications/audio/mikmod/default.nix5
-rw-r--r--pkgs/applications/audio/mixxx/default.nix18
-rw-r--r--pkgs/applications/audio/mp3gain/default.nix7
-rw-r--r--pkgs/applications/audio/mp3info/default.nix5
-rw-r--r--pkgs/applications/audio/mpg123/default.nix5
-rw-r--r--pkgs/applications/audio/nootka/default.nix5
-rw-r--r--pkgs/applications/audio/opus-tools/default.nix6
-rw-r--r--pkgs/applications/audio/qmmp/default.nix5
-rw-r--r--pkgs/applications/audio/quodlibet/default.nix2
-rw-r--r--pkgs/applications/audio/rhythmbox/default.nix23
-rw-r--r--pkgs/applications/audio/rosegarden/default.nix36
-rw-r--r--pkgs/applications/audio/soundtracker/default.nix36
-rw-r--r--pkgs/applications/audio/strawberry/default.nix41
-rw-r--r--pkgs/applications/audio/tonelib-gfx/default.nix5
-rw-r--r--pkgs/applications/audio/tonelib-jam/default.nix5
-rw-r--r--pkgs/applications/audio/tonelib-zoom/default.nix5
-rw-r--r--pkgs/applications/audio/tony/default.nix5
-rw-r--r--pkgs/applications/audio/transcode/default.nix5
-rw-r--r--pkgs/applications/audio/xmp/default.nix5
-rw-r--r--pkgs/applications/audio/zita-ajbridge/default.nix5
-rw-r--r--pkgs/applications/audio/zita-at1/default.nix5
35 files changed, 250 insertions, 100 deletions
diff --git a/pkgs/applications/audio/aacgain/default.nix b/pkgs/applications/audio/aacgain/default.nix
index 0f9b511d455..517a53a5fec 100644
--- a/pkgs/applications/audio/aacgain/default.nix
+++ b/pkgs/applications/audio/aacgain/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitLab, fetchpatch }:
 
-stdenv.mkDerivation {
-  name = "aacgain-1.9.0";
+stdenv.mkDerivation rec {
+  pname = "aacgain";
+  version = "1.9.0";
 
   src = fetchFromGitLab {
     owner = "mulx";
diff --git a/pkgs/applications/audio/axoloti/libusb1.nix b/pkgs/applications/audio/axoloti/libusb1.nix
index b6c2a1b1ae6..820a8998f0b 100644
--- a/pkgs/applications/audio/axoloti/libusb1.nix
+++ b/pkgs/applications/audio/axoloti/libusb1.nix
@@ -1,19 +1,19 @@
-{ stdenv, lib, fetchurl, pkg-config, systemd ? null, libobjc, IOKit, fetchpatch }:
+{ stdenv, lib, fetchurl, pkg-config, systemd, libobjc, IOKit, fetchpatch }:
 
 stdenv.mkDerivation rec {
-  name = "libusb-1.0.19";
+  pname = "libusb";
+  version = "1.0.19";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libusb/${name}.tar.bz2";
+    url = "mirror://sourceforge/libusb/libusb-${version}.tar.bz2";
     sha256 = "0h38p9rxfpg9vkrbyb120i1diq57qcln82h5fr7hvy82c20jql3c";
   };
 
   outputs = [ "out" "dev" ]; # get rid of propagating systemd closure
 
   buildInputs = [ pkg-config ];
-  propagatedBuildInputs =
-    lib.optional stdenv.isLinux systemd ++
-    lib.optionals stdenv.isDarwin [ libobjc IOKit ];
+  propagatedBuildInputs = lib.optional stdenv.isLinux systemd
+    ++ lib.optionals stdenv.isDarwin [ libobjc IOKit ];
 
   patches = [
     (fetchpatch {
@@ -32,6 +32,7 @@ stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "http://www.libusb.info";
     description = "User-space USB library";
+    maintainers = with maintainers; [ ];
     platforms = platforms.unix;
     license = licenses.lgpl21;
   };
diff --git a/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix b/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
index b6dea53012d..49205439670 100644
--- a/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
+++ b/pkgs/applications/audio/bitwig-studio/bitwig-studio4.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   pname = "bitwig-studio";
-  version = "4.0";
+  version = "4.0.1";
 
   src = fetchurl {
     url = "https://downloads.bitwig.com/stable/${version}/${pname}-${version}.deb";
-    sha256 = "38381c1a382abd9543931f34d5ae1789c31ec1217a1c852b5c5c442ccaf97063";
+    sha256 = "sha256-yhCAKlbLjyBywkSYY1aqbUGFlAHBLR8g8xPDIqoUIZk=";
   };
 
   nativeBuildInputs = [ dpkg makeWrapper wrapGAppsHook ];
diff --git a/pkgs/applications/audio/carla/default.nix b/pkgs/applications/audio/carla/default.nix
index 38514e40d00..bdafb93955c 100644
--- a/pkgs/applications/audio/carla/default.nix
+++ b/pkgs/applications/audio/carla/default.nix
@@ -15,13 +15,13 @@ assert withGtk3 -> gtk3 != null;
 
 stdenv.mkDerivation rec {
   pname = "carla";
-  version = "2.3.0";
+  version = "2.3.1";
 
   src = fetchFromGitHub {
     owner = "falkTX";
     repo = pname;
     rev = "v${version}";
-    sha256 = "sha256-724EFBpbmPMuU1m3T0XMaeohURJA5JcxHfUPYbZ/2LE=";
+    sha256 = "sha256-LM7wRvUg2Q3f4qBZN1MPvsLkdl1ziArCfhdalyD1G3w=";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/audio/cdparanoia/default.nix b/pkgs/applications/audio/cdparanoia/default.nix
index 11c141e9c55..36686655f36 100644
--- a/pkgs/applications/audio/cdparanoia/default.nix
+++ b/pkgs/applications/audio/cdparanoia/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, gnu-config, IOKit, Carbon }:
 
 stdenv.mkDerivation rec {
-  name = "cdparanoia-III-10.2";
+  pname = "cdparanoia-III";
+  version = "10.2";
 
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/cdparanoia/${name}.src.tgz";
+    url = "https://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-${version}.src.tgz";
     sha256 = "1pv4zrajm46za0f6lv162iqffih57a8ly4pc69f7y0gfyigb8p80";
   };
 
diff --git a/pkgs/applications/audio/crip/default.nix b/pkgs/applications/audio/crip/default.nix
index c61f838bc3a..d635dce83f4 100644
--- a/pkgs/applications/audio/crip/default.nix
+++ b/pkgs/applications/audio/crip/default.nix
@@ -19,9 +19,10 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "crip-3.9";
+  pname = "crip";
+  version = "3.9";
   src = fetchurl {
-    url = "http://bach.dynet.com/crip/src/${name}.tar.gz";
+    url = "http://bach.dynet.com/${pname}/src/${pname}-${version}.tar.gz";
     sha256 = "0pk9152wll6fmkj1pki3fz3ijlf06jyk32v31yarwvdkwrk7s9xz";
   };
 
diff --git a/pkgs/applications/audio/csound/default.nix b/pkgs/applications/audio/csound/default.nix
index 13de229452e..029710206f0 100644
--- a/pkgs/applications/audio/csound/default.nix
+++ b/pkgs/applications/audio/csound/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   # When updating, please check if https://github.com/csound/csound/issues/1078
   # has been fixed in the new version so we can use the normal fluidsynth
   # version and remove fluidsynth 1.x from nixpkgs again.
-  version = "6.15.0";
+  version = "6.16.2";
 
   hardeningDisable = [ "format" ];
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "csound";
     repo = "csound";
     rev = version;
-    sha256 = "1vld6v55jxvv3ddr21kh41s4cdkhnm5wpffvd097zqrqh1aq08r0";
+    sha256 = "sha256-1rcS3kOspU9ACx45yB8betph4G0hso1OSJQRiabX6tE=";
   };
 
   cmakeFlags = [ "-DBUILD_CSOUND_AC=0" ] # fails to find Score.hpp
diff --git a/pkgs/applications/audio/deadbeef/plugins/statusnotifier.nix b/pkgs/applications/audio/deadbeef/plugins/statusnotifier.nix
new file mode 100644
index 00000000000..a1ca052f9c6
--- /dev/null
+++ b/pkgs/applications/audio/deadbeef/plugins/statusnotifier.nix
@@ -0,0 +1,39 @@
+{ lib, stdenv, fetchFromGitHub, pkg-config, deadbeef, gtk3, perl
+, libdbusmenu-glib }:
+
+stdenv.mkDerivation rec {
+  pname = "deadbeef-statusnotifier-plugin";
+  version = "1.6";
+
+  src = fetchFromGitHub {
+    owner = "vovochka404";
+    repo = "deadbeef-statusnotifier-plugin";
+    rev = "v${version}";
+    sha256 = "sha256-6WEbY59vPNrL3W5GUwFQJimmSS+td8Ob+G46fPAxfV4=";
+  };
+
+  nativeBuildInputs = [ pkg-config ];
+  buildInputs = [ deadbeef gtk3 libdbusmenu-glib ];
+
+  buildFlags = [ "gtk3" ];
+
+  postPatch = ''
+    substituteInPlace tools/glib-mkenums \
+      --replace /usr/bin/perl "${perl}/bin/perl"
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/lib/deadbeef
+    cp build/sni_gtk3.so $out/lib/deadbeef
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "DeaDBeeF StatusNotifier Plugin";
+    homepage = "https://github.com/vovochka404/deadbeef-statusnotifier-plugin";
+    license = licenses.gpl3Plus;
+    maintainers = [ maintainers.kurnevsky ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/audio/dirt/default.nix b/pkgs/applications/audio/dirt/default.nix
index 333c1d08b3a..a456d62e6f6 100644
--- a/pkgs/applications/audio/dirt/default.nix
+++ b/pkgs/applications/audio/dirt/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchFromGitHub, libsndfile, libsamplerate, liblo, libjack2 }:
 
 stdenv.mkDerivation {
-  name = "dirt-2018-01-01";
+  pname = "dirt";
+  version = "unstable-2018-01-01";
   src = fetchFromGitHub {
     repo = "Dirt";
     owner = "tidalcycles";
diff --git a/pkgs/applications/audio/gmu/default.nix b/pkgs/applications/audio/gmu/default.nix
index 3e2087162f5..b2b9f5e3475 100644
--- a/pkgs/applications/audio/gmu/default.nix
+++ b/pkgs/applications/audio/gmu/default.nix
@@ -5,10 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gmu-0.10.1";
+  pname = "gmu";
+  version = "0.10.1";
 
   src = fetchurl {
-    url = "http://wejp.k.vu/files/${name}.tar.gz";
+    url = "https://wej.k.vu/files/${pname}-${version}.tar.gz";
     sha256 = "03x0mc0xw2if0bpf0a15yprcyx1xccki039zvl2099dagwk6xskv";
   };
 
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index 681c6ffe281..cd5e476b884 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -29,8 +29,14 @@ python3Packages.buildPythonApplication rec {
     glibcLocales
   ];
 
+  # as of 2021-07, the gobject-introspection setup hook does not
+  # work with `strictDeps` enabled, thus for proper `wrapGAppsHook`
+  # it needs to be disabled explicitly. https://github.com/NixOS/nixpkgs/issues/56943
+  strictDeps = false;
+
   buildInputs = [
     python3
+    gtk3
     gobject-introspection
     gnome.adwaita-icon-theme
   ];
@@ -49,7 +55,6 @@ python3Packages.buildPythonApplication rec {
     eyeD3
     podcastparser
     html5lib
-    gtk3
   ];
 
   makeFlags = [
diff --git a/pkgs/applications/audio/hqplayer-desktop/default.nix b/pkgs/applications/audio/hqplayer-desktop/default.nix
index 2551c610c57..a0443aa9a6a 100644
--- a/pkgs/applications/audio/hqplayer-desktop/default.nix
+++ b/pkgs/applications/audio/hqplayer-desktop/default.nix
@@ -3,6 +3,7 @@
 , autoPatchelfHook
 , fetchurl
 , flac
+, gcc11
 , lib
 , libmicrohttpd
 , llvmPackages_10
@@ -17,13 +18,11 @@
 
 mkDerivation rec {
   pname = "hqplayer-desktop";
-  version = "4.12.1-35";
+  version = "4.12.2-36";
 
   src = fetchurl {
-    # FIXME: use the fc34 sources when we get glibc 2.33 in nixpkgs
-    # c.f. https://github.com/NixOS/nixpkgs/pull/111616
-    url = "https://www.signalyst.eu/bins/hqplayer/fc33/hqplayer4desktop-${version}.fc33.x86_64.rpm";
-    sha256 = "sha256-DLnZNX+uAan9dhPLMvINeXsIn3Yv2CgsvyTcX0hbEK8=";
+    url = "https://www.signalyst.eu/bins/hqplayer/fc34/hqplayer4desktop-${version}.fc34.x86_64.rpm";
+    sha256 = "sha256-ng0Tkx6CSnzTxuunStaBhUYjxUmzx31ZaOY2gBWnH6Q=";
   };
 
   unpackPhase = ''
@@ -35,11 +34,12 @@ mkDerivation rec {
   buildInputs = [
     alsa-lib
     flac
+    gcc11.cc.lib
     libmicrohttpd
     llvmPackages_10.openmp
-    qtquickcontrols2
     qtcharts
     qtdeclarative
+    qtquickcontrols2
     qtwebengine
     qtwebview
     wavpack
diff --git a/pkgs/applications/audio/jack-rack/default.nix b/pkgs/applications/audio/jack-rack/default.nix
index 520b55e96da..25ee53d3f43 100644
--- a/pkgs/applications/audio/jack-rack/default.nix
+++ b/pkgs/applications/audio/jack-rack/default.nix
@@ -1,8 +1,9 @@
 { lib, stdenv, fetchurl, pkg-config, libjack2, ladspaH, gtk2, alsa-lib, libxml2, lrdf }:
 stdenv.mkDerivation rec {
-  name = "jack-rack-1.4.7";
+  pname = "jack-rack";
+  version = "1.4.7";
   src = fetchurl {
-    url = "mirror://sourceforge/jack-rack/${name}.tar.bz2";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "1lmibx9gicagcpcisacj6qhq6i08lkl5x8szysjqvbgpxl9qg045";
   };
   nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/audio/jackmeter/default.nix b/pkgs/applications/audio/jackmeter/default.nix
index 2b4d413526a..95fc88a8696 100644
--- a/pkgs/applications/audio/jackmeter/default.nix
+++ b/pkgs/applications/audio/jackmeter/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libjack2, pkg-config }:
 
 stdenv.mkDerivation rec {
-  name = "jackmeter-0.4";
+  pname = "jackmeter";
+  version = "0.4";
 
   src = fetchurl {
-    url = "https://www.aelius.com/njh/jackmeter/${name}.tar.gz";
+    url = "https://www.aelius.com/njh/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1cnvgx3jv0yvxlqy0l9k285zgvazmh5k8m4l7lxckjfm5bn6hm1r";
   };
 
diff --git a/pkgs/applications/audio/mikmod/default.nix b/pkgs/applications/audio/mikmod/default.nix
index 4d39616c99d..4cc0fec2e2f 100644
--- a/pkgs/applications/audio/mikmod/default.nix
+++ b/pkgs/applications/audio/mikmod/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, libmikmod, ncurses }:
 
 stdenv.mkDerivation rec {
-  name = "mikmod-3.2.8";
+  pname = "mikmod";
+  version = "3.2.8";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mikmod/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
     sha256 = "1k54p8pn3jinha0f2i23ad15pf1pamibzcxjrbzjbklpcz1ipc6v";
   };
 
diff --git a/pkgs/applications/audio/mixxx/default.nix b/pkgs/applications/audio/mixxx/default.nix
index 6f0d34b870a..60591f42e81 100644
--- a/pkgs/applications/audio/mixxx/default.nix
+++ b/pkgs/applications/audio/mixxx/default.nix
@@ -1,4 +1,5 @@
 { lib
+, stdenv
 , mkDerivation
 , fetchurl
 , fetchFromGitHub
@@ -116,6 +117,23 @@ mkDerivation rec {
     "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive"
   ];
 
+  # mixxx installs udev rules to DATADIR instead of SYSCONFDIR
+  # let's disable this and install udev rules manually via postInstall
+  # see https://github.com/mixxxdj/mixxx/blob/2.3.0/CMakeLists.txt#L1381-L1392
+  cmakeFlags = [
+    "-DINSTALL_USER_UDEV_RULES=OFF"
+  ];
+
+  postInstall = lib.optionalString stdenv.isLinux ''
+    rules="$src/res/linux/mixxx-usb-uaccess.rules"
+    if [ ! -f "$rules" ]; then
+        echo "$rules is missing, must update the Nix file."
+        exit 1
+    fi
+    mkdir -p "$out/lib/udev/rules.d"
+    cp "$rules" "$out/lib/udev/rules.d/69-mixxx-usb-uaccess.rules"
+  '';
+
   meta = with lib; {
     homepage = "https://mixxx.org";
     description = "Digital DJ mixing software";
diff --git a/pkgs/applications/audio/mp3gain/default.nix b/pkgs/applications/audio/mp3gain/default.nix
index bf0a347d14b..ba2a757e090 100644
--- a/pkgs/applications/audio/mp3gain/default.nix
+++ b/pkgs/applications/audio/mp3gain/default.nix
@@ -1,9 +1,10 @@
 { lib, stdenv, fetchurl, fetchpatch, unzip, mpg123 }:
 
-stdenv.mkDerivation {
-  name = "mp3gain-1.6.2";
+stdenv.mkDerivation rec {
+  pname = "mp3gain";
+  version = "1.6.2";
   src = fetchurl {
-    url = "mirror://sourceforge/mp3gain/mp3gain-1_6_2-src.zip";
+    url = "mirror://sourceforge/${pname}/${pname}-${lib.replaceStrings ["."] ["_"] version}-src.zip";
     sha256 = "0varr6y7k8zarr56b42r0ad9g3brhn5vv3xjg1c0v19jxwr4gh2w";
   };
 
diff --git a/pkgs/applications/audio/mp3info/default.nix b/pkgs/applications/audio/mp3info/default.nix
index d67b4da5eb2..86c1f87f522 100644
--- a/pkgs/applications/audio/mp3info/default.nix
+++ b/pkgs/applications/audio/mp3info/default.nix
@@ -1,10 +1,11 @@
 { fetchurl, lib, stdenv, ncurses, pkg-config, gtk2 }:
 
 stdenv.mkDerivation rec {
-  name = "mp3info-0.8.5a";
+  pname = "mp3info";
+  version = "0.8.5a";
 
   src = fetchurl {
-    url = "ftp://ftp.ibiblio.org/pub/linux/apps/sound/mp3-utils/mp3info/${name}.tgz";
+    url = "ftp://ftp.ibiblio.org/pub/linux/apps/sound/mp3-utils/${pname}/${pname}-${version}.tgz";
     sha256 = "042f1czcs9n2sbqvg4rsvfwlqib2gk976mfa2kxlfjghx5laqf04";
   };
 
diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix
index 8f9489befc5..44788467d8f 100644
--- a/pkgs/applications/audio/mpg123/default.nix
+++ b/pkgs/applications/audio/mpg123/default.nix
@@ -7,10 +7,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "mpg123-1.26.5";
+  pname = "mpg123";
+  version = "1.26.5";
 
   src = fetchurl {
-    url = "mirror://sourceforge/mpg123/${name}.tar.bz2";
+    url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
     sha256 = "sha256-UCqX4Nk1vn432YczgCHY8wG641wohPKoPVnEtSRm7wY=";
   };
 
diff --git a/pkgs/applications/audio/nootka/default.nix b/pkgs/applications/audio/nootka/default.nix
index 8b2284f9b30..59d58df8c8d 100644
--- a/pkgs/applications/audio/nootka/default.nix
+++ b/pkgs/applications/audio/nootka/default.nix
@@ -3,10 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nootka-1.4.7";
+  pname = "nootka";
+  version = "1.4.7";
 
   src = fetchurl {
-    url = "mirror://sourceforge/nootka/${name}-source.tar.bz2";
+    url = "mirror://sourceforge/nootka/${pname}-${version}-source.tar.bz2";
     sha256 = "1y9wlwri74v2z9dwbcfjs7xri54yra24vpwq19xi2lfv1nbs518x";
   };
 
diff --git a/pkgs/applications/audio/opus-tools/default.nix b/pkgs/applications/audio/opus-tools/default.nix
index 8ca75eecde1..6c602ef1d03 100644
--- a/pkgs/applications/audio/opus-tools/default.nix
+++ b/pkgs/applications/audio/opus-tools/default.nix
@@ -1,9 +1,11 @@
 {lib, stdenv, fetchurl, libogg, libao, pkg-config, flac, opusfile, libopusenc}:
 
 stdenv.mkDerivation rec {
-  name = "opus-tools-0.2";
+  pname = "opus-tools";
+  version = "0.2";
+
   src = fetchurl {
-    url = "http://downloads.xiph.org/releases/opus/${name}.tar.gz";
+    url = "https://downloads.xiph.org/releases/opus/${pname}-${version}.tar.gz";
     sha256 = "11pzl27s4vcz4m18ch72nivbhww2zmzn56wspb7rll1y1nq6rrdl";
   };
 
diff --git a/pkgs/applications/audio/qmmp/default.nix b/pkgs/applications/audio/qmmp/default.nix
index 25d7857c353..460b97479c6 100644
--- a/pkgs/applications/audio/qmmp/default.nix
+++ b/pkgs/applications/audio/qmmp/default.nix
@@ -29,10 +29,11 @@
 # handle that.
 
 mkDerivation rec {
-  name = "qmmp-1.4.4";
+  pname = "qmmp";
+  version = "1.4.4";
 
   src = fetchurl {
-    url = "http://qmmp.ylsoftware.com/files/${name}.tar.bz2";
+    url = "https://qmmp.ylsoftware.com/files/${pname}-${version}.tar.bz2";
     sha256 = "sha256-sZRZVhCf2ceETuV4AULA0kVkuIMn3C+aYdKThqvPnVQ=";
   };
 
diff --git a/pkgs/applications/audio/quodlibet/default.nix b/pkgs/applications/audio/quodlibet/default.nix
index 24f9f057b65..6c8ad8225f0 100644
--- a/pkgs/applications/audio/quodlibet/default.nix
+++ b/pkgs/applications/audio/quodlibet/default.nix
@@ -18,7 +18,7 @@ python3.pkgs.buildPythonApplication rec {
 
   nativeBuildInputs = [ wrapGAppsHook gettext ];
 
-  checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb-run dbus.daemon glibcLocales ]);
+  checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest-xdist polib xvfb-run dbus.daemon glibcLocales ]);
 
   buildInputs = [ gnome.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk-pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ]
     ++ (if xineBackend then [ xine-lib ] else with gst_all_1;
diff --git a/pkgs/applications/audio/rhythmbox/default.nix b/pkgs/applications/audio/rhythmbox/default.nix
index 9e338e19813..4898648599c 100644
--- a/pkgs/applications/audio/rhythmbox/default.nix
+++ b/pkgs/applications/audio/rhythmbox/default.nix
@@ -6,6 +6,8 @@
 , intltool
 , libpeas
 , libsoup
+, libsecret
+, libnotify
 , libdmapsharing
 , gnome
 , totem-pl-parser
@@ -17,8 +19,6 @@
 , gst_plugins ? with gst_all_1; [ gst-plugins-good gst-plugins-ugly ]
 }:
 let
-  pname = "rhythmbox";
-  version = "3.4.4";
 
   # The API version of libdmapsharing required by rhythmbox 3.4.4 is 3.0.
 
@@ -39,10 +39,11 @@ let
   });
 
 in stdenv.mkDerivation rec {
-  name = "${pname}-${version}";
+  pname = "rhythmbox";
+  version = "3.4.4";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${name}.tar.xz";
+    url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
     sha256 = "142xcvw4l19jyr5i72nbnrihs953pvrrzcbijjn9dxmxszbv03pf";
   };
 
@@ -66,11 +67,21 @@ in stdenv.mkDerivation rec {
 
     gst_all_1.gstreamer
     gst_all_1.gst-plugins-base
+    gst_all_1.gst-plugins-good
+    gst_all_1.gst-plugins-bad
+    gst_all_1.gst-plugins-ugly
+    gst_all_1.gst-libav
 
     libdmapsharing_3 # necessary for daap support
+    libsecret
+    libnotify
   ] ++ gst_plugins;
 
-  configureFlags = [ "--enable-daap" ];
+  configureFlags = [
+    "--enable-daap"
+    "--enable-libnotify"
+    "--with-libsecret"
+  ];
 
   enableParallelBuilding = true;
 
@@ -84,7 +95,7 @@ in stdenv.mkDerivation rec {
   meta = with lib; {
     homepage = "https://wiki.gnome.org/Apps/Rhythmbox";
     description = "A music playing application for GNOME";
-    license = licenses.gpl2;
+    license = licenses.gpl2Plus;
     platforms = platforms.linux;
     maintainers = [ maintainers.rasendubi ];
   };
diff --git a/pkgs/applications/audio/rosegarden/default.nix b/pkgs/applications/audio/rosegarden/default.nix
index 38d8a876962..dd0112d8216 100644
--- a/pkgs/applications/audio/rosegarden/default.nix
+++ b/pkgs/applications/audio/rosegarden/default.nix
@@ -1,22 +1,40 @@
-{ lib, stdenv, fetchurl, cmake, makedepend, perl, pkg-config, qttools, wrapQtAppsHook
-, dssi, fftwSinglePrec, ladspaH, ladspaPlugins, libjack2, alsa-lib
-, liblo, libsamplerate, libsndfile, lirc ? null, lrdf, qtbase }:
+{ lib
+, stdenv
+, fetchurl
+, cmake
+, makedepend
+, perl
+, pkg-config
+, qttools
+, wrapQtAppsHook
+, dssi
+, fftwSinglePrec
+, ladspaH
+, ladspaPlugins
+, libjack2
+, alsa-lib
+, liblo
+, libsamplerate
+, libsndfile
+, lirc
+, lrdf
+, qtbase
+}:
 
-stdenv.mkDerivation (rec {
-  version = "20.12";
+stdenv.mkDerivation rec {
   pname = "rosegarden";
+  version = "20.12";
 
   src = fetchurl {
     url = "mirror://sourceforge/rosegarden/${pname}-${version}.tar.bz2";
     sha256 = "sha256-iGaEr8WFipV4I00fhFGI2xMBFPf784IIxNXs2hUTHFs=";
   };
 
-  patchPhase = ''
+  postPhase = ''
     substituteInPlace src/CMakeLists.txt --replace svnheader svnversion
   '';
 
-  nativeBuildInputs =
-    [ cmake makedepend perl pkg-config qttools wrapQtAppsHook ];
+  nativeBuildInputs = [ cmake makedepend perl pkg-config qttools wrapQtAppsHook ];
 
   buildInputs = [
     dssi
@@ -49,4 +67,4 @@ stdenv.mkDerivation (rec {
     license = licenses.lgpl2Plus;
     platforms = platforms.linux;
   };
-})
+}
diff --git a/pkgs/applications/audio/soundtracker/default.nix b/pkgs/applications/audio/soundtracker/default.nix
index 3dc9089b241..251725ea6b2 100644
--- a/pkgs/applications/audio/soundtracker/default.nix
+++ b/pkgs/applications/audio/soundtracker/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv
 , fetchurl
 , pkg-config
-, autoconf
+, autoreconfHook
 , gtk2
 , alsa-lib
 , SDL
@@ -12,21 +12,43 @@
 
 stdenv.mkDerivation rec {
   pname = "soundtracker";
-  version = "1.0.1";
+  version = "1.0.2.1";
 
   src = fetchurl {
     # Past releases get moved to the "old releases" directory.
     # Only the latest release is at the top level.
     # Nonetheless, only the name of the file seems to affect which file is
     # downloaded, so this path should be fine both for old and current releases.
-    url = "mirror://sourceforge/soundtracker/soundtracker-${version}.tar.bz2";
-    sha256 = "0m5iiqccch6w53khpvdldz59zymw13vmwqc5ggx3sn41riwbd6ks";
+    url = "mirror://sourceforge/soundtracker/soundtracker-${version}.tar.xz";
+    sha256 = "0nh0dwz8nldc040q6n06vlazhss8ms42r2dffhjcrqj3hbrvfx82";
   };
 
+  postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
+    # Darwin binutils don't support D option for ar
+    # ALSA macros are missing on Darwin, causing error
+    substituteInPlace configure.ac \
+      --replace ARFLAGS=crD ARFLAGS=cru \
+      --replace AM_PATH_ALSA '#AM_PATH_ALSA'
+    # Avoid X11-specific workaround code on more than just Windows
+    substituteInPlace app/keys.c \
+      --replace '!defined(_WIN32)' '!defined(_WIN32) && !defined(__APPLE__)'
+    # "The application with bundle ID (null) is running setugid(), which is not allowed."
+    sed -i -e '/seteuid/d' -e '/setegid/d' app/main.c
+  '';
+
+  configureFlags = [
+    "--with-graphics-backend=gdk"
+  ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+    "--disable-alsa"
+  ];
+
+  enableParallelBuilding = true;
+
   nativeBuildInputs = [
     pkg-config
-    autoconf
+    autoreconfHook
   ];
+
   buildInputs = [
     gtk2
     SDL
@@ -35,8 +57,6 @@ stdenv.mkDerivation rec {
     goocanvas
   ] ++ lib.optional stdenv.isLinux alsa-lib;
 
-  hardeningDisable = [ "format" ];
-
   meta = with lib; {
     description = "A music tracking tool similar in design to the DOS program FastTracker and the Amiga legend ProTracker";
     longDescription = ''
@@ -51,7 +71,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2Plus;
     maintainers = with maintainers; [ fgaz ];
     platforms = platforms.all;
-    # gdk/gdkx.h not found
-    broken = stdenv.isDarwin;
   };
 }
diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix
index 5a5671ec773..6cc55650220 100644
--- a/pkgs/applications/audio/strawberry/default.nix
+++ b/pkgs/applications/audio/strawberry/default.nix
@@ -19,29 +19,30 @@
 , protobuf
 , sqlite
 , taglib
-, libpulseaudio ? null
-, libselinux ? null
-, libsepol ? null
-, p11-kit ? null
-, util-linux ? null
+, libpulseaudio
+, libselinux
+, libsepol
+, p11-kit
+, util-linux
 , qtbase
 , qtx11extras
 , qttools
 , withGstreamer ? true
-, gst_all_1 ? null
+, glib-networking
+, gst_all_1
 , withVlc ? true
-, libvlc ? null
+, libvlc
 }:
 
 mkDerivation rec {
   pname = "strawberry";
-  version = "0.9.2";
+  version = "0.9.3";
 
   src = fetchFromGitHub {
     owner = "jonaski";
     repo = pname;
     rev = version;
-    sha256 = "sha256:0d9asg21j9ai23sb35cimws8bd8fsnpha777rgscraa7i09q0rx2";
+    sha256 = "sha256-OOdHsii6O4okVHDhrqCNJ7WVB0VKPs8q0AhEY+IvflE=";
   };
 
   buildInputs = [
@@ -61,29 +62,33 @@ mkDerivation rec {
     taglib
     qtbase
     qtx11extras
-  ]
-  ++ lib.optionals stdenv.isLinux [
+  ] ++ lib.optionals stdenv.isLinux [
     libpulseaudio
     libselinux
     libsepol
     p11-kit
-  ]
-  ++ lib.optionals withGstreamer (with gst_all_1; [
+  ] ++ lib.optionals withGstreamer (with gst_all_1; [
+    glib-networking
     gstreamer
     gst-plugins-base
     gst-plugins-good
     gst-plugins-ugly
-  ])
-  ++ lib.optional withVlc libvlc;
+  ]) ++ lib.optional withVlc libvlc;
 
   nativeBuildInputs = [
-    cmake ninja pkg-config qttools
+    cmake
+    ninja
+    pkg-config
+    qttools
   ] ++ lib.optionals stdenv.isLinux [
     util-linux
   ];
 
-  postInstall = ''
-    qtWrapperArgs+=(--prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0")
+  postInstall = lib.optionalString withGstreamer ''
+    qtWrapperArgs+=(
+      --prefix GST_PLUGIN_SYSTEM_PATH_1_0 : "$GST_PLUGIN_SYSTEM_PATH_1_0"
+      --prefix GIO_EXTRA_MODULES : "${glib-networking.out}/lib/gio/modules"
+    )
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/audio/tonelib-gfx/default.nix b/pkgs/applications/audio/tonelib-gfx/default.nix
index 137014508a3..00be0934552 100644
--- a/pkgs/applications/audio/tonelib-gfx/default.nix
+++ b/pkgs/applications/audio/tonelib-gfx/default.nix
@@ -12,6 +12,7 @@
 , fribidi
 , pango
 , freetype
+, curl
 }:
 
 stdenv.mkDerivation rec {
@@ -50,6 +51,10 @@ stdenv.mkDerivation rec {
     mv $out/bin/ToneLib-GFX $out/bin/tonelib-gfx
   '';
 
+  runtimeDependencies = [
+    (lib.getLib curl)
+  ];
+
   meta = with lib; {
     description = "Tonelib GFX is an amp and effects modeling software for electric guitar and bass.";
     homepage = "https://tonelib.net/";
diff --git a/pkgs/applications/audio/tonelib-jam/default.nix b/pkgs/applications/audio/tonelib-jam/default.nix
index c58023d6a4b..7a5a5c7280f 100644
--- a/pkgs/applications/audio/tonelib-jam/default.nix
+++ b/pkgs/applications/audio/tonelib-jam/default.nix
@@ -12,6 +12,7 @@
 , fribidi
 , pango
 , freetype
+, curl
 }:
 
 stdenv.mkDerivation rec {
@@ -50,6 +51,10 @@ stdenv.mkDerivation rec {
     mv $out/bin/ToneLib-Jam $out/bin/tonelib-jam
   '';
 
+  runtimeDependencies = [
+    (lib.getLib curl)
+  ];
+
   meta = with lib; {
     description = "ToneLib Jam – the learning and practice software for guitar players";
     homepage = "https://tonelib.net/";
diff --git a/pkgs/applications/audio/tonelib-zoom/default.nix b/pkgs/applications/audio/tonelib-zoom/default.nix
index 94ef3037a7c..2eef1f7bd60 100644
--- a/pkgs/applications/audio/tonelib-zoom/default.nix
+++ b/pkgs/applications/audio/tonelib-zoom/default.nix
@@ -6,6 +6,7 @@
 , webkitgtk
 , libjack2
 , alsa-lib
+, curl
 }:
 
 stdenv.mkDerivation rec {
@@ -38,6 +39,10 @@ stdenv.mkDerivation rec {
     mv $out/bin/ToneLib-Zoom $out/bin/tonelib-zoom
   '';
 
+  runtimeDependencies = [
+    (lib.getLib curl)
+  ];
+
   meta = with lib; {
     description = "ToneLib Zoom – change and save all the settings in your Zoom(r) guitar pedal";
     homepage = "https://tonelib.net/";
diff --git a/pkgs/applications/audio/tony/default.nix b/pkgs/applications/audio/tony/default.nix
index aa18a5e397e..15c973a46fc 100644
--- a/pkgs/applications/audio/tony/default.nix
+++ b/pkgs/applications/audio/tony/default.nix
@@ -5,10 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "tony-2.1.1";
+  pname = "tony";
+  version = "2.1.1";
 
   src = fetchurl {
-    url = "https://code.soundsoftware.ac.uk/attachments/download/2616/${name}.tar.gz";
+    url = "https://code.soundsoftware.ac.uk/attachments/download/2616/${pname}-${version}.tar.gz";
     sha256 = "03g2bmlj08lmgvh54dyd635xccjn730g4wwlhpvsw04bffz8b7fp";
   };
 
diff --git a/pkgs/applications/audio/transcode/default.nix b/pkgs/applications/audio/transcode/default.nix
index ff10ff13e19..7a7ec1e4188 100644
--- a/pkgs/applications/audio/transcode/default.nix
+++ b/pkgs/applications/audio/transcode/default.nix
@@ -2,9 +2,10 @@
 , lzo, libdvdread, pkg-config, x264, libmpeg2, xvidcore }:
 
 stdenv.mkDerivation rec {
-  name = "transcode-1.1.7";
+  pname = "transcode";
+  version = "1.1.7";
   src = fetchurl {
-    url = "https://bitbucket.org/france/transcode-tcforge/downloads/${name}.tar.bz2";
+    url = "https://bitbucket.org/france/transcode-tcforge/downloads/${pname}-${version}.tar.bz2";
     sha256 = "1e4e72d8e0dd62a80b8dd90699f5ca64c9b0cb37a5c9325c184166a9654f0a92";
   };
 
diff --git a/pkgs/applications/audio/xmp/default.nix b/pkgs/applications/audio/xmp/default.nix
index 6158f33713a..5f99555d376 100644
--- a/pkgs/applications/audio/xmp/default.nix
+++ b/pkgs/applications/audio/xmp/default.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, fetchurl, pkg-config, alsa-lib, libxmp }:
 
 stdenv.mkDerivation rec {
-  name = "xmp-4.1.0";
+  pname = "xmp";
+  version = "4.1.0";
 
   meta = with lib; {
     description = "Extended module player";
@@ -11,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   src = fetchurl {
-    url = "mirror://sourceforge/xmp/xmp/${name}.tar.gz";
+    url = "mirror://sourceforge/${pname}/${pname}/${pname}-${version}.tar.gz";
     sha256 = "17i8fc7x7yn3z1x963xp9iv108gxfakxmdgmpv3mlm438w3n3g8x";
   };
 
diff --git a/pkgs/applications/audio/zita-ajbridge/default.nix b/pkgs/applications/audio/zita-ajbridge/default.nix
index db6fc7d3381..873a294540d 100644
--- a/pkgs/applications/audio/zita-ajbridge/default.nix
+++ b/pkgs/applications/audio/zita-ajbridge/default.nix
@@ -1,10 +1,11 @@
 { lib, stdenv, fetchurl, alsa-lib, libjack2, zita-alsa-pcmi, zita-resampler }:
 
 stdenv.mkDerivation rec {
-  name = "zita-ajbridge-0.8.4";
+  pname = "zita-ajbridge";
+  version = "0.8.4";
 
   src = fetchurl {
-    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
     sha256 = "0g5v0l0zmqh049mhv62n8s5bpm0yrlby7mkxxhs5qwadp8v4w9mw";
   };
 
diff --git a/pkgs/applications/audio/zita-at1/default.nix b/pkgs/applications/audio/zita-at1/default.nix
index 7a66ed42b05..8a629e145c4 100644
--- a/pkgs/applications/audio/zita-at1/default.nix
+++ b/pkgs/applications/audio/zita-at1/default.nix
@@ -4,10 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "zita-at1-0.6.2";
+  pname = "zita-at1";
+  version = "0.6.2";
 
   src = fetchurl {
-    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${name}.tar.bz2";
+    url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
     sha256 = "0mxfn61zvhlq3r1mqipyqzjbanrfdkk8x4nxbz8nlbdk0bf3vfqr";
   };