diff options
| author | Tim Keller <tjk@tjkeller.xyz> | 2026-10-30 13:38:27 -0500 |
|---|---|---|
| committer | Tim Keller <tjk@tjkeller.xyz> | 2026-10-30 13:38:27 -0500 |
| commit | a2c15fa83f310348ecc991df936462ae113db7e6 (patch) | |
| tree | af98b3d4e59cf512d786cb0f5bc0e8a0c9d74212 /archetypes/collections/music.nix | |
| parent | d479aa84109931d0885e99e5c5566a27b1ca9f5e (diff) | |
| download | nixos-a2c15fa83f310348ecc991df936462ae113db7e6.tar.xz nixos-a2c15fa83f310348ecc991df936462ae113db7e6.zip | |
add music collection software
Diffstat (limited to 'archetypes/collections/music.nix')
| -rw-r--r-- | archetypes/collections/music.nix | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/archetypes/collections/music.nix b/archetypes/collections/music.nix new file mode 100644 index 0000000..6302d68 --- /dev/null +++ b/archetypes/collections/music.nix @@ -0,0 +1,30 @@ +{ 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 + ]; + }; +} |
