diff --git a/home/home.nix b/home/home.nix index 48a58bc6..7ef6a468 100644 --- a/home/home.nix +++ b/home/home.nix @@ -28,6 +28,8 @@ rec { carla = true; yabridge.enable = true; yabridge.autosync = true; + bitwig.enable = true; + extraPackages = with pkgs; [ audacity vcv-rack ]; }; # TODO: Email @@ -264,14 +266,6 @@ rec { # blender # godot - # Audio - # vcv-rack - bitwig-studio - # audacity - # Module carla - # Module yabridge - # Module yabridgectl - # Use NixCommunity binary cache cachix diff --git a/home/modules/audio.nix b/home/modules/audio.nix index 8429ed99..0378fc12 100644 --- a/home/modules/audio.nix +++ b/home/modules/audio.nix @@ -33,17 +33,31 @@ in { description = "Sync yabridge plugins on nixos-rebuild"; }; }; + + bitwig = { + enable = mkOption { + type = types.bool; + default = false; + description = "Enable Bitwig Studio digital audio workstation"; + }; + }; + + extraPackages = mkOption { + type = types.listOf types.package; + default = [ ]; + description = "Extra packages to install"; + }; }; config = mkIf cfg.enable { home.packages = with pkgs; (mkMerge [ (mkIf cfg.carla [ carla ]) - (mkIf cfg.yabridge.enable [ yabridge yabridgectl ]) + (mkIf cfg.bitwig.enable [ bitwig-studio ]) + cfg.extraPackages ]); - # NOTE: This desktop entry is created in /etc/profiles/per-user/christoph/share/applications # This location is part of XDG_DATA_DIRS xdg.desktopEntries.guitar = mkIf cfg.carla {