replace audio extraPackages with options
This commit is contained in:
@ -1,4 +1,4 @@
|
|||||||
{ config, lib, mylib, pkgs, ... }:
|
{ config, nixosConfig, lib, mylib, pkgs, ... }:
|
||||||
|
|
||||||
with lib;
|
with lib;
|
||||||
with mylib.modules;
|
with mylib.modules;
|
||||||
@ -14,20 +14,19 @@ in {
|
|||||||
options.modules.audio = {
|
options.modules.audio = {
|
||||||
enable = mkBoolOpt false "Configure for realtime audio and enable a bunch of music production tools";
|
enable = mkBoolOpt false "Configure for realtime audio and enable a bunch of music production tools";
|
||||||
carla.enable = mkBoolOpt false "Enable Carla + guitar-specific stuff";
|
carla.enable = mkBoolOpt false "Enable Carla + guitar-specific stuff";
|
||||||
|
# TODO: Make it easier to add many yes/no options, similar to the flatpak stuff
|
||||||
bitwig.enable = mkBoolOpt false "Enable Bitwig Studio digital audio workstation";
|
bitwig.enable = mkBoolOpt false "Enable Bitwig Studio digital audio workstation";
|
||||||
# TODO: Add bottles audio bottle config link
|
faust.enable = mkBoolOpt false "Enable the Faust functional DSP language";
|
||||||
|
tenacity.enable = mkBoolOpt false "Enable Tenacity";
|
||||||
bottles.enable = mkBoolOpt false "Enable Bottles to emulate windows VSTs (flatpak)";
|
bottles.enable = mkBoolOpt false "Enable Bottles to emulate windows VSTs (flatpak)";
|
||||||
|
vcvrack.enable = mkBoolOpt false "Enable the VCV-Rack Eurorack simulator";
|
||||||
|
|
||||||
|
# TODO: Vital derivation (adapt from aur)
|
||||||
|
|
||||||
yabridge = {
|
yabridge = {
|
||||||
enable = mkBoolOpt false "Enable yabridge + yabridgectl";
|
enable = mkBoolOpt false "Enable yabridge + yabridgectl";
|
||||||
autoSync = mkBoolOpt false "Sync yabridge plugins on nixos-rebuild";
|
autoSync = mkBoolOpt false "Sync yabridge plugins on nixos-rebuild";
|
||||||
};
|
};
|
||||||
|
|
||||||
extraPackages = mkOption {
|
|
||||||
type = types.listOf types.package;
|
|
||||||
default = [ ];
|
|
||||||
description = "Extra packages to install";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
@ -50,7 +49,10 @@ in {
|
|||||||
(optionals cfg.carla.enable [ carla gamemode ])
|
(optionals cfg.carla.enable [ carla gamemode ])
|
||||||
(optionals cfg.yabridge.enable [ yabridge yabridgectl ])
|
(optionals cfg.yabridge.enable [ yabridge yabridgectl ])
|
||||||
(optionals cfg.bitwig.enable [ bitwig-studio ])
|
(optionals cfg.bitwig.enable [ bitwig-studio ])
|
||||||
cfg.extraPackages
|
(optionals cfg.faust.enable [ faust ])
|
||||||
|
(optionals cfg.tenacity.enable [ tenacity ])
|
||||||
|
(optionals cfg.vcvrack.enable [ vcv-rack ])
|
||||||
|
(optionals nixosConfig.services.pipewire.enable [ helvum easyeffects ])
|
||||||
];
|
];
|
||||||
|
|
||||||
# NOTE: This desktop entry is created in /etc/profiles/per-user/christoph/share/applications
|
# NOTE: This desktop entry is created in /etc/profiles/per-user/christoph/share/applications
|
||||||
|
Reference in New Issue
Block a user