49 lines
1.8 KiB
Nix
49 lines
1.8 KiB
Nix
{
|
|
lib,
|
|
mylib,
|
|
...
|
|
}:
|
|
with lib;
|
|
with mylib.modules; {
|
|
enable = mkEnableOption "Audio module";
|
|
|
|
# TODO: Group these in categories (like instruments/VSTs or sth)
|
|
# TODO: Make it easier to add many yes/no options, similar to the flatpak stuff
|
|
|
|
# Hosts/Editing
|
|
carla.enable = mkEnableOption "Carla (VST host)";
|
|
bitwig.enable = mkEnableOption "Bitwig (Digital audio workstation)";
|
|
tenacity.enable = mkEnableOption "Tenacity (Audacity fork)";
|
|
|
|
# Instruments/Plugins
|
|
# vcvrack.enable = mkEnableOption "VCV-Rack (Eurorack simulator)"; # Replaced by cardinal
|
|
cardinal.enable = mkEnableOption "Open Source VCV-Rack plugin wrapper";
|
|
# vital.enable = mkEnableOption "Vital (Wavetable synthesizer)"; # Replaced by distrho
|
|
distrho.enable = mkEnableOption "Distrho (Linux VST ports)";
|
|
|
|
# Misc
|
|
faust.enable = mkEnableOption "Faust (functional DSP language)";
|
|
bottles.enable = mkEnableOption "Bottles (flatpak)";
|
|
|
|
# TODO: Automatically add the needed paths, depends on the bottle though
|
|
# /home/christoph/.var/app/com.usebottles.bottles/data/bottles/bottles/Audio/drive_c/Program Files/Common Files/VST3
|
|
# /home/christoph/.var/app/com.usebottles.bottles/data/bottles/bottles/Audio/drive_c/Program Files/VstPlugins
|
|
yabridge = {
|
|
enable = mkEnableOption "Yabridge (Windows VST plugin manager)";
|
|
autoSync = mkBoolOption false "Sync yabridge plugins on nixos-rebuild";
|
|
};
|
|
|
|
noisesuppression = {
|
|
noisetorch = {
|
|
enable = mkEnableOption "Noisetorch";
|
|
autostart = mkBoolOption false "Autoload Noisetorch suppression";
|
|
};
|
|
|
|
# TODO: Store easyeffects presets/config (dconf com/github/wwmm/easyeffects ?)
|
|
easyeffects = {
|
|
enable = mkEnableOption "EasyEffects";
|
|
autostart = mkBoolOption false "Autoload EasyEffects suppression profile";
|
|
};
|
|
};
|
|
}
|