aboutsummaryrefslogtreecommitdiff
path: root/users/fcuny/cli/media.nix
diff options
context:
space:
mode:
Diffstat (limited to 'users/fcuny/cli/media.nix')
-rw-r--r--users/fcuny/cli/media.nix49
1 files changed, 49 insertions, 0 deletions
diff --git a/users/fcuny/cli/media.nix b/users/fcuny/cli/media.nix
new file mode 100644
index 0000000..2dc54a5
--- /dev/null
+++ b/users/fcuny/cli/media.nix
@@ -0,0 +1,49 @@
+{ config, lib, pkgs, ... }:
+
+{
+ xdg.configFile."yt-dlp/config".source = ../configs/yt-dlp/config;
+
+ home.packages = with pkgs; [
+ yt-dlp
+ flac
+ abcde
+ (pkgs.writers.writeDashBin "rip-flac" ''
+ ${pkgs.abcde}/bin/abcde -Vx -G -a "cddb,read,encode,tag,move,clean" -o flac
+ '')
+ ];
+
+ # inspired from https://blog.yossarian.net/2022/02/21/Enjoying-music-curation-again
+ programs.beets = {
+ enable = true;
+ settings = {
+ directory = "/data/fast/music";
+ 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";
+ };
+ };
+ };
+}