Commit 95553f1a20fd
Changed files (1)
home
common
services
home/common/services/beets.nix
@@ -166,225 +166,287 @@ in
relative_to = "${actualBaseDir}/playlists";
playlist_dir = "${actualBaseDir}/playlists";
playlists = [
+ # ===========================================
+ # Artist Collections (artist-)
+ # ===========================================
{
- name = "podcasts.m3u";
- query = "albumtype:podcast";
- }
- # Language-based playlists
- {
- name = "english.m3u";
- query = "language:eng";
+ name = "artist-brian-eno.m3u";
+ query = "artist:'Brian Eno'";
}
{
- name = "french.m3u";
- query = "language:fra";
+ name = "artist-joe-hisaishi.m3u";
+ query = "artist:久石譲 , artist:'Joe Hisaishi'";
}
{
- name = "japanese.m3u";
- query = "language:jpn";
+ name = "artist-queen.m3u";
+ query = "artist:Queen";
}
{
- name = "korean.m3u";
- query = "language:kor";
+ name = "artist-tangerine-dream.m3u";
+ query = "artist:'Tangerine Dream'";
}
{
- name = "spanish.m3u";
- query = "language:spa";
+ name = "artist-u2.m3u";
+ query = "artist:U2";
}
{
- name = "german.m3u";
- query = "language:deu";
+ name = "artist-vangelis.m3u";
+ query = "artist:Vangelis";
}
{
- name = "italian.m3u";
- query = "language:ita";
+ name = "artist-yoko-kanno.m3u";
+ query = "artist:菅野よう子 , artist:'Yoko Kanno'";
}
+ # ===========================================
+ # Decades (decade-)
+ # ===========================================
{
- name = "instrumental.m3u";
- query = "language:zxx";
- }
- # Genre-based playlists
- {
- name = "rock.m3u";
- query = "genre:Rock";
- }
- {
- name = "electronic.m3u";
- query = "genre:Electronic";
- }
- {
- name = "trance.m3u";
- query = "genre:Trance";
- }
- {
- name = "jazz.m3u";
- query = "genre:Jazz";
- }
- {
- name = "classical.m3u";
- query = "genre:Classical";
- }
- {
- name = "hiphop.m3u";
- query = "genre:'Hip Hop'";
- }
- {
- name = "metal.m3u";
- query = "genre:Metal";
- }
- {
- name = "pop.m3u";
- query = "genre:Pop";
- }
- {
- name = "ambient.m3u";
- query = "genre:Ambient";
- }
- {
- name = "folk.m3u";
- query = "genre:Folk";
- }
- # Time-based playlists - Decades
- {
- name = "1960s.m3u";
+ name = "decade-1960s.m3u";
query = "year:1960..1969";
}
{
- name = "1970s.m3u";
+ name = "decade-1970s.m3u";
query = "year:1970..1979";
}
{
- name = "1980s.m3u";
+ name = "decade-1980s.m3u";
query = "year:1980..1989";
}
{
- name = "1990s.m3u";
+ name = "decade-1990s.m3u";
query = "year:1990..1999";
}
{
- name = "2000s.m3u";
+ name = "decade-2000s.m3u";
query = "year:2000..2009";
}
{
- name = "2010s.m3u";
+ name = "decade-2010s.m3u";
query = "year:2010..2019";
}
{
- name = "2020s.m3u";
+ name = "decade-2020s.m3u";
query = "year:2020..2029";
}
- # Time-based - Recent additions
+ # ===========================================
+ # Discovery (discover-)
+ # ===========================================
{
- name = "last-week.m3u";
- query = "added:-1w..";
- }
- {
- name = "this-year.m3u";
- query = "added:-1y..";
- }
- # Discovery & Rediscovery
- {
- name = "unplayed.m3u";
+ name = "discover-unplayed.m3u";
query = "play_count:0";
}
{
- name = "rarely-played.m3u";
+ name = "discover-rarely-played.m3u";
query = "play_count:..3 added:..2024-01-01";
}
- # Album types
+ # ===========================================
+ # Genre (genre-)
+ # ===========================================
{
- name = "compilations.m3u";
- query = "albumtype:compilation";
+ name = "genre-ambient.m3u";
+ query = "genre:Ambient";
}
{
- name = "live-albums.m3u";
- query = "albumtype:live";
+ name = "genre-classical.m3u";
+ query = "genre:Classical";
}
{
- name = "eps.m3u";
- query = "albumtype:ep";
+ name = "genre-electronic.m3u";
+ query = "genre:Electronic";
}
{
- name = "singles.m3u";
- query = "albumtype:single";
+ name = "genre-folk.m3u";
+ query = "genre:Folk";
}
{
- name = "remixes.m3u";
- query = "albumtype:remix";
+ name = "genre-hiphop.m3u";
+ query = "genre:'Hip Hop'";
}
- # Multi-language cultural groups
{
- name = "asian.m3u";
+ name = "genre-jazz.m3u";
+ query = "genre:Jazz";
+ }
+ {
+ name = "genre-metal.m3u";
+ query = "genre:Metal";
+ }
+ {
+ name = "genre-pop.m3u";
+ query = "genre:Pop";
+ }
+ {
+ name = "genre-rock.m3u";
+ query = "genre:Rock";
+ }
+ {
+ name = "genre-trance.m3u";
+ query = "genre:Trance";
+ }
+ # ===========================================
+ # Language (lang-)
+ # ===========================================
+ {
+ name = "lang-asian.m3u";
query = "language:jpn,kor,cmn,zho";
}
{
- name = "european.m3u";
+ name = "lang-english.m3u";
+ query = "language:eng";
+ }
+ {
+ name = "lang-european.m3u";
query = "language:fra,deu,ita,spa";
}
- # Energy & Mood
{
- name = "workout.m3u";
- query = "genre:Electronic,Rock,'Hip Hop' bpm:120..";
+ name = "lang-french.m3u";
+ query = "language:fra";
}
{
- name = "chill.m3u";
+ name = "lang-german.m3u";
+ query = "language:deu";
+ }
+ {
+ name = "lang-instrumental.m3u";
+ query = "language:zxx";
+ }
+ {
+ name = "lang-italian.m3u";
+ query = "language:ita";
+ }
+ {
+ name = "lang-japanese.m3u";
+ query = "language:jpn";
+ }
+ {
+ name = "lang-korean.m3u";
+ query = "language:kor";
+ }
+ {
+ name = "lang-spanish.m3u";
+ query = "language:spa";
+ }
+ # ===========================================
+ # Mood & Activity (mood-)
+ # ===========================================
+ {
+ name = "mood-chill.m3u";
query = "genre:Ambient,Jazz,Folk bpm:..100";
}
- # Length-based playlists
{
- name = "short-tracks.m3u";
- query = "length:..3:00";
- }
- {
- name = "interludes.m3u";
- query = "length:..1:30";
- }
- {
- name = "long-tracks.m3u";
- query = "length:6:00..";
- }
- {
- name = "epics.m3u";
- query = "length:10:00..";
- }
- {
- name = "standard-length.m3u";
- query = "length:3:00..5:00";
- }
- # Seasonal & Special Occasions
- {
- name = "christmas.m3u";
+ name = "mood-christmas.m3u";
query = "genre:Christmas,Holiday";
}
{
- name = "summer.m3u";
- query = "genre:Reggae,Ska,'Surf Rock'";
+ name = "mood-driving.m3u";
+ query = "genre:Rock,Electronic,'Indie Rock' bpm:100..130";
}
- # Specific use cases
{
- name = "focus.m3u";
+ name = "mood-focus.m3u";
query = "genre:Classical,Ambient,'Post-Rock' bpm:..90";
}
{
- name = "party.m3u";
+ name = "mood-party.m3u";
query = "genre:Pop,Dance,Electronic,'Hip Hop' bpm:110..140 year:2015..";
}
{
- name = "driving.m3u";
- query = "genre:Rock,Electronic,'Indie Rock' bpm:100..130";
- }
- # Favorites & Ratings
- {
- name = "5-stars.m3u";
- query = "rating:5";
+ name = "mood-summer.m3u";
+ query = "genre:Reggae,Ska,'Surf Rock'";
}
{
- name = "favorites.m3u";
- query = "rating:4..";
+ name = "mood-workout.m3u";
+ query = "genre:Electronic,Rock,'Hip Hop' bpm:120..";
+ }
+ # ===========================================
+ # Soundtrack Series (ost-)
+ # ===========================================
+ {
+ name = "ost-elder-scrolls.m3u";
+ query = "album:'Elder Scrolls'";
}
{
- name = "hidden-gems.m3u";
- query = "rating:4.. play_count:..5";
+ name = "ost-escaflowne.m3u";
+ query = "album:Escaflowne";
+ }
+ {
+ name = "ost-ghibli.m3u";
+ query = "album:Ghibli , album:Totoro , album:Mononoke , album:Ponyo , album:Howl , album:Laputa , album:Nausicaä";
+ }
+ {
+ name = "ost-minecraft.m3u";
+ query = "album:Minecraft";
+ }
+ {
+ name = "ost-samurai-champloo.m3u";
+ query = "album:'Samurai Champloo'";
+ }
+ {
+ name = "ost-stranger-things.m3u";
+ query = "album:'Stranger Things'";
+ }
+ # ===========================================
+ # Recent Additions (recent-)
+ # ===========================================
+ {
+ name = "recent-last-week.m3u";
+ query = "added:-1w..";
+ }
+ {
+ name = "recent-this-year.m3u";
+ query = "added:-1y..";
+ }
+ # ===========================================
+ # Compilation Series (series-)
+ # ===========================================
+ {
+ name = "series-greatest-hits-millennium.m3u";
+ query = "album:'Greatest Hits of the Millennium'";
+ }
+ {
+ name = "series-lofi-girl.m3u";
+ query = "album:lofi-girl";
+ }
+ {
+ name = "series-nova-all.m3u";
+ query = "album:Nova path:compilation";
+ }
+ {
+ name = "series-nova-tunes.m3u";
+ query = "album:'Nova Tunes'";
+ }
+ # ===========================================
+ # Album Types (type-)
+ # ===========================================
+ {
+ name = "type-all-compilations.m3u";
+ query = "path:compilation";
+ }
+ {
+ name = "type-all-soundtracks.m3u";
+ query = "path:soundtrack";
+ }
+ {
+ name = "type-compilations.m3u";
+ query = "albumtype:compilation";
+ }
+ {
+ name = "type-eps.m3u";
+ query = "albumtype:ep";
+ }
+ {
+ name = "type-live-albums.m3u";
+ query = "albumtype:live";
+ }
+ {
+ name = "type-podcasts.m3u";
+ query = "albumtype:podcast";
+ }
+ {
+ name = "type-remixes.m3u";
+ query = "albumtype:remix";
+ }
+ {
+ name = "type-singles.m3u";
+ query = "albumtype:single";
}
];
};