Skip to content

dawPlugins: init#89547

Closed
FRidh wants to merge 1 commit intoNixOS:masterfrom
FRidh:daw-plugins
Closed

dawPlugins: init#89547
FRidh wants to merge 1 commit intoNixOS:masterfrom
FRidh:daw-plugins

Conversation

@FRidh
Copy link
Copy Markdown
Member

@FRidh FRidh commented Jun 5, 2020

A new package set for DAW plugins such as LV2 plugins.

We have quite a lot of plugins, but they're spread out. Some
time ago someone even noticed we had a plugin twice. Let's
put them all together in a set.

Motivation for this change
Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@FRidh FRidh added 9.needs: documentation This needs to be documented well. 9.needs: community feedback This needs feedback from more community members. 9.needs: maintainer feedback Waiting for the package maintainer to respond. labels Jun 5, 2020
@FRidh FRidh requested review from magnetophon and orivej-nixos June 5, 2020 15:22
@FRidh
Copy link
Copy Markdown
Member Author

FRidh commented Jun 5, 2020

I wonder whether we should have different sets per plugin type. That may make more sense.

Note I don't work with any DAW, I just want all-packages.nix to get a bit cleaner.

@FRidh
Copy link
Copy Markdown
Member Author

FRidh commented Jun 5, 2020

@infinisil @Ericson2314 this is an OK method for creating an easily overrideable package set?

edit:

We need to clearly define the method for sub package sets.

@magnetophon
Copy link
Copy Markdown
Member

magnetophon commented Jun 5, 2020

@FRidh This has come up a couple of times now, so thanks for doing it!

Two suggestions:

  • Rename the file to DAW-plugins, to be consistent with the package name.
  • Include all dssi, ladspa, lxvst and vst plugins, because the DAW's usually support all, or most of these, and a lot of plugins include multiple formats in the same repo.

A new package set for DAW plugins such as LV2 plugins.

We have quite a lot of plugins, but they're spread out. Some
time ago someone even noticed we had a plugin twice. Let's
put them all together in a set.
@FRidh
Copy link
Copy Markdown
Member Author

FRidh commented Jun 5, 2020

Rename the file to DAW-plugins, to be consistent with the package name.

Done!

Include all dssi, ladspa, lxvst and vst plugins, because the DAW's usually support all, or most of these, and a lot of plugins include multiple formats in the same repo.

Right. I am going to need help there identifying packages. But, before I make any further changes, I am going to wait a bit for more feedback.

One could be critical and ask What makes these libraries (they're just .so's) different that they should be in a separate set?. Maybe a naming scheme would be sufficient, considering a subset is a bit more of a hassle to override.

@magnetophon
Copy link
Copy Markdown
Member

magnetophon commented Jun 5, 2020

OK, here we go:

These have LV2 plugins, though in some cases they are also hosts and often they also have other formats.

artyFX
bjumblr
bsequencer
bshapr
bslizr
calf
distrho
dragonfly-reverb
drumgizmo
drumkv1
ensemble-chorus
eq10q
fmsynth
fomp
foo-yc20
guitarix
helm
hybridreverb2
infamousPlugins
ingen
linuxsampler
lsp-plugins
mod-distortion
ninjas2
noise-repellent
qmidiarp
samplv2
setbfree
sfizz
sorcer
spectmorph
speech-denoiser
stone-phaser
string-machine
synthv1
tambura
wolf-shaper
x42-avldrums
x42-gmsynth
x42-plugins
yoshimi
zam-plugins

These have ladspa plugins:

AMB-plugins
FIL-plugins
caps
cmt
csa
distrho
jamin
ladspaPlugins
lsp-plugins
nova-filters
zam-plugins

These have dssi:

wolf-shaper
xsynth_dssi 

These have vst and or lxvst:

lsp-plugins
ninjas2
wolf-shaper
zam-plugins

There are also a couple of plugins in the pipeline:
#82308
#82442
#82642
#82652
#82835
#83579
#85496
#85776
#88898
#88899
#89171

But, before I make any further changes, I am going to wait a bit for more feedback.

Makes sense.

Maybe a naming scheme would be sufficient, considering a subset is a bit more of a hassle to override.

I didn't know that.
I want/need to override some plugins sometimes, so that makes me strongly prefer a naming scheme.
Are there any significant downsides?


lv2 = callPackage ../development/libraries/audio/lv2 { };

dawPlugins = callPackage ./daw-plugins.nix { };
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this should be recurseIntoAttrs (callPackages …).

pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils { };
RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { };
VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { };
shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand { };
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd keep them in a set (magnetophonDSP with recurseIntoAttrs), otherwise their names seem too generic (pluginUtils).

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I should have chosen a better name for that repo / those plugins.
As it stands there is no name-clash (yet) in daw-plugins so we could leave it like this.

I would suggest to put all plugins in applications/audio/daw-plugins/, and get rid of the magnetophonDSP subdir and namespace.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK.

Copy link
Copy Markdown
Member

@magnetophon magnetophon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, except for the suggestion.

pluginUtils = callPackage ../applications/audio/magnetophonDSP/pluginUtils { };
RhythmDelay = callPackage ../applications/audio/magnetophonDSP/RhythmDelay { };
VoiceOfFaust = callPackage ../applications/audio/magnetophonDSP/VoiceOfFaust { };
shelfMultiBand = callPackage ../applications/audio/magnetophonDSP/shelfMultiBand { };
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I should have chosen a better name for that repo / those plugins.
As it stands there is no name-clash (yet) in daw-plugins so we could leave it like this.

I would suggest to put all plugins in applications/audio/daw-plugins/, and get rid of the magnetophonDSP subdir and namespace.

@ryantm ryantm added 2.status: merge conflict This PR has merge conflicts with the target branch and removed 2.status: merge conflict This PR has merge conflicts with the target branch labels Oct 3, 2020
@stale
Copy link
Copy Markdown

stale bot commented Jun 4, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 4, 2021
@wegank wegank marked this pull request as draft March 20, 2024 15:37
@Aleksanaa Aleksanaa closed this Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.status: merge conflict This PR has merge conflicts with the target branch 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md 9.needs: community feedback This needs feedback from more community members. 9.needs: documentation This needs to be documented well. 9.needs: maintainer feedback Waiting for the package maintainer to respond.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants