From 9c26b9d0aa834a1a6ee2b063f221e3257c2e39cc Mon Sep 17 00:00:00 2001 From: mrtnvgr Date: Wed, 17 Dec 2025 22:40:49 +0700 Subject: [PATCH 1/4] dragonfly-reverb: cleanup --- pkgs/by-name/dr/dragonfly-reverb/package.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/dr/dragonfly-reverb/package.nix b/pkgs/by-name/dr/dragonfly-reverb/package.nix index 613e3d9e4edc..ebab5b7e9357 100644 --- a/pkgs/by-name/dr/dragonfly-reverb/package.nix +++ b/pkgs/by-name/dr/dragonfly-reverb/package.nix @@ -8,14 +8,14 @@ libx11, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "dragonfly-reverb"; version = "3.2.10"; src = fetchFromGitHub { owner = "michaelwillis"; repo = "dragonfly-reverb"; - tag = version; + tag = finalAttrs.version; hash = "sha256-YXJ4U5J8Za+DlXvp6QduvCHIVC2eRJ3+I/KPihCaIoY="; fetchSubmodules = true; }; @@ -54,6 +54,7 @@ stdenv.mkDerivation rec { description = "Hall-style reverb based on freeverb3 algorithms"; maintainers = [ lib.maintainers.magnetophon ]; license = lib.licenses.gpl3Plus; - platforms = [ "x86_64-linux" ]; + platforms = lib.platforms.linux; + badPlatforms = [ lib.systems.inspect.patterns.isAarch ]; }; -} +}) From b0e781c107e6da77a89ad6f7590f861240e9eb17 Mon Sep 17 00:00:00 2001 From: mrtnvgr Date: Wed, 17 Dec 2025 23:21:43 +0700 Subject: [PATCH 2/4] dragonfly-reverb: add build options --- pkgs/by-name/dr/dragonfly-reverb/package.nix | 75 +++++++++++++++----- 1 file changed, 59 insertions(+), 16 deletions(-) diff --git a/pkgs/by-name/dr/dragonfly-reverb/package.nix b/pkgs/by-name/dr/dragonfly-reverb/package.nix index ebab5b7e9357..75c001408e26 100644 --- a/pkgs/by-name/dr/dragonfly-reverb/package.nix +++ b/pkgs/by-name/dr/dragonfly-reverb/package.nix @@ -6,6 +6,12 @@ libGL, pkg-config, libx11, + + buildStandalone ? true, + buildVST3 ? true, + buildVST2 ? true, + buildLV2 ? true, + buildCLAP ? true, }: stdenv.mkDerivation (finalAttrs: { @@ -20,9 +26,22 @@ stdenv.mkDerivation (finalAttrs: { fetchSubmodules = true; }; - postPatch = '' - patchShebangs dpf/utils/generate-ttl.sh - ''; + postPatch = + let + targets = lib.concatStringsSep " " [ + (lib.optionalString buildStandalone "jack") + (lib.optionalString buildVST3 "vst3") + (lib.optionalString buildVST2 "vst2") + (lib.optionalString buildLV2 "lv2_sep") + (lib.optionalString buildCLAP "clap") + ]; + in + '' + patchShebangs dpf/utils/generate-ttl.sh + + substituteInPlace plugins/*/Makefile \ + --replace-fail "TARGETS = jack lv2_sep vst2 vst3 clap" "TARGETS = ${targets}" + ''; nativeBuildInputs = [ pkg-config ]; buildInputs = [ @@ -33,19 +52,43 @@ stdenv.mkDerivation (finalAttrs: { installPhase = '' runHook preInstall - mkdir -p $out/bin - mkdir -p $out/lib/lv2/ - mkdir -p $out/lib/vst/ - mkdir -p $out/lib/vst3/ - mkdir -p $out/lib/clap/ - cd bin - for bin in DragonflyEarlyReflections DragonflyPlateReverb DragonflyHallReverb DragonflyRoomReverb; do - cp -a $bin $out/bin/ - cp -a $bin-vst.so $out/lib/vst/ - cp -a $bin.vst3 $out/lib/vst3/ - cp -a $bin.clap $out/lib/clap/ - cp -a $bin.lv2/ $out/lib/lv2/ ; - done + + ${lib.optionalString buildVST3 '' + mkdir -p $out/lib/vst3 + ''} + + ${lib.optionalString buildLV2 '' + mkdir -p $out/lib/lv2 + ''} + + ${lib.optionalString buildCLAP '' + mkdir -p $out/lib/clap + ''} + + pushd bin + for bin in DragonflyEarlyReflections DragonflyPlateReverb DragonflyHallReverb DragonflyRoomReverb; do + ${lib.optionalString buildStandalone '' + install -Dm755 $bin -t $out/bin + ''} + + ${lib.optionalString buildVST3 '' + cp -r $bin.vst3 $out/lib/vst3 + ''} + + ${lib.optionalString buildVST2 '' + install -Dm755 $bin-vst.so -t $out/lib/vst + ''} + + ${lib.optionalString buildLV2 '' + cp -r $bin.lv2 $out/lib/lv2 + ''} + + ${lib.optionalString buildCLAP '' + cp -r $bin.clap $out/lib/clap + ''} + done + popd + runHook postInstall ''; From a00b7254e5ecbb11cb94b7d4b26794c27e3c21f6 Mon Sep 17 00:00:00 2001 From: mrtnvgr Date: Wed, 17 Dec 2025 23:22:08 +0700 Subject: [PATCH 3/4] dragonfly-reverb: disable vst2 target by default Nixpkgs does not have a license to distribute VST2 plugins :( --- pkgs/by-name/dr/dragonfly-reverb/package.nix | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/dr/dragonfly-reverb/package.nix b/pkgs/by-name/dr/dragonfly-reverb/package.nix index 75c001408e26..56b0cbd43762 100644 --- a/pkgs/by-name/dr/dragonfly-reverb/package.nix +++ b/pkgs/by-name/dr/dragonfly-reverb/package.nix @@ -9,9 +9,9 @@ buildStandalone ? true, buildVST3 ? true, - buildVST2 ? true, buildLV2 ? true, buildCLAP ? true, + buildVST2 ? false, # can't distribute }: stdenv.mkDerivation (finalAttrs: { @@ -31,9 +31,9 @@ stdenv.mkDerivation (finalAttrs: { targets = lib.concatStringsSep " " [ (lib.optionalString buildStandalone "jack") (lib.optionalString buildVST3 "vst3") - (lib.optionalString buildVST2 "vst2") (lib.optionalString buildLV2 "lv2_sep") (lib.optionalString buildCLAP "clap") + (lib.optionalString buildVST2 "vst2") ]; in '' @@ -75,10 +75,6 @@ stdenv.mkDerivation (finalAttrs: { cp -r $bin.vst3 $out/lib/vst3 ''} - ${lib.optionalString buildVST2 '' - install -Dm755 $bin-vst.so -t $out/lib/vst - ''} - ${lib.optionalString buildLV2 '' cp -r $bin.lv2 $out/lib/lv2 ''} @@ -86,6 +82,10 @@ stdenv.mkDerivation (finalAttrs: { ${lib.optionalString buildCLAP '' cp -r $bin.clap $out/lib/clap ''} + + ${lib.optionalString buildVST2 '' + install -Dm755 $bin-vst.so -t $out/lib/vst + ''} done popd From 265f33d85d3683b333b225d5e261a7e5beb37c24 Mon Sep 17 00:00:00 2001 From: mrtnvgr Date: Wed, 17 Dec 2025 23:27:20 +0700 Subject: [PATCH 4/4] dragonfly-reverb: add mrtnvgr to maintainers --- pkgs/by-name/dr/dragonfly-reverb/package.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/dr/dragonfly-reverb/package.nix b/pkgs/by-name/dr/dragonfly-reverb/package.nix index 56b0cbd43762..f7874ca039fc 100644 --- a/pkgs/by-name/dr/dragonfly-reverb/package.nix +++ b/pkgs/by-name/dr/dragonfly-reverb/package.nix @@ -95,7 +95,10 @@ stdenv.mkDerivation (finalAttrs: { meta = { homepage = "https://github.com/michaelwillis/dragonfly-reverb"; description = "Hall-style reverb based on freeverb3 algorithms"; - maintainers = [ lib.maintainers.magnetophon ]; + maintainers = with lib.maintainers; [ + magnetophon + mrtnvgr + ]; license = lib.licenses.gpl3Plus; platforms = lib.platforms.linux; badPlatforms = [ lib.systems.inspect.patterns.isAarch ];