From dcc0315bba21b4efde7ffc0a6e50af24fdd0fbb4 Mon Sep 17 00:00:00 2001 From: Franck Cuny Date: Thu, 7 Apr 2022 08:31:05 -0700 Subject: initial attempt to reconfigure home-manager All the modules that are needed for home-manager should be under `home/`, and each host will have a `host.nix` where the modules are enabled as needed. Later on we can create some profiles to make it easier to consume the configuration. I apply this only to tahoe for now, as the amount of packages needed for my user are pretty limited. --- home/beets/default.nix | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 home/beets/default.nix (limited to 'home/beets/default.nix') diff --git a/home/beets/default.nix b/home/beets/default.nix new file mode 100644 index 0000000..b93ddd1 --- /dev/null +++ b/home/beets/default.nix @@ -0,0 +1,46 @@ +{ config, lib, pkgs, ... }: +let cfg = config.my.home.beets; +in { + options.my.home.beets = with lib.my; { + enable = mkEnableOption "beets configuration"; + musicDirectory = mkOption { + type = types.str; + example = "/home/fcuny/media/music"; + description = "path to the music directory"; + }; + }; + + config.program.beets = lib.mkIf cfg.enable { + enable = true; + settings = { + directory = cfg.musicDirectory; + plugins = + "fromfilename discogs duplicates fetchart embedart badfiles lastgenre scrub"; + paths = { + default = "$albumartist/$album%aunique{}/$track $title"; + singleton = "Singles/$artist/$title"; + comp = "Compilations/$album%aunique{}/$track - $title"; + "albumtype:soundtrack" = "Soundtracks/$album ($year)/$track $title"; + }; + import = { + copy = true; + move = true; + }; + va_name = "Various Artists"; + embedart = { ifempty = true; }; + + lastgenre = { + auto = false; + canonical = true; + fallback = "unknown"; + force = true; + prefer_specific = true; + }; + + fetchart = { + cautious = true; + sources = "filesystem coverart itunes amazon lastfm wikipedia"; + }; + }; + }; +} -- cgit 1.4.1