{ pkgs, lib, config, ... }: let cfg = config._archetypes.collections.music; beetsWithPlugins = pkgs.python3Packages.beets.override { pluginOverrides = { alternatives = { enable = true; propagatedBuildInputs = [ pkgs.python3Packages.beets-alternatives ]; }; }; }; in { options._archetypes.collections.music = { beets.enable = lib.mkEnableOption "enables beets"; cd-tools.enable = lib.mkEnableOption "enables tools for burning, ripping, and converting cds"; }; config = { environment.systemPackages = with pkgs; lib.optionals cfg.beets.enable [ beetsWithPlugins ] ++ lib.optionals cfg.cd-tools.enable [ abcde cdparanoia cdrdao cuetools flac shntool whipper ]; }; }