Konsten att röra till det med symboliska länkar

Jag har reviderat min musiksortering lite, och numera är den komplicerad nog för att kräva en halv bok (eller nåja, ett blogginlägg åtminstone). Den visar åtminstone ganska tydligt fördelen med UNIX-baserade fria operativsystem framför ofria.

Till att börja med så lagras musiken på två ställen. I roten på min FTP-server (symlänkad till /site) och i mappen /home/albin/downloads/ på min OpenBSD?-burk alice. Musiken på alice är självfallet osorterad, nyinkommen musik (alternativt sådant som jag har laddat upp och själv seedar). alice är sedan uppmonterad med SSHFS, en FUSE-applikation, mot /home/liquidraven/alice (det görs via ett init-script som jag själv har skrivit baserat på något gammalt jag hittade — utan att riktigt veta hur man ska göra).

Lokalt på rapunzel lagras musiken enligt /site/musik.$FORMAT/artist/artist-release-typ-årtal-$FORMAT/NN-artist-låttitel.$FORMAT. Konstiga tecken tas bort och strängen konverteras till gemener. Ett exempel från verkligheten är /site/musik.flac/the_beatles/the_beatles-the_beatles_(disc_1)-album-1968-flac/01-the_beatles-back_in_the_u.s.s.r..flac. Allt taggande och sorterande och namnbytande och skyfflande sköts av Musicbrainz PicardQt ( $lower(musik.%_extension%/$replace(%albumartist%/%albumartist%-%album%-%releasetype%$if(%date%,-$left(%date%,4))-%_extension%/$num(%tracknumber%,2)-%artist%-%title%, ,_))).

Sedan används musync med ln -s som »kopierings»motor för att sortera in de olika filerna enligt en annan standard i /site/Musik. Medan den »riktiga« sorteringen, den som Picard spottar ur sig, är centrerad runt releaser (»various artists«-releaser hanteras annorlunda exempelvis) så är den symlänkade sorteringen i /site/Musik baserad på artist. Exempelvis återfinns alla Charlie Clousers låtar i /site/Musik/charlieclouser/. Fördelen med denna dualistiska sortering är att det blir lättare att plocka ut musik av speciella format och att release-centrerad sortering ofta är att föredra om man vill sprida musiken, medan artist-centrerad sortering ofta är att föredra vid lyssning (åtminstone jag tänker oftare »nu vill jag lyssna på Convoy av Charlie Clouser« än vad jag tänker »Nu vill jag nog höra soundtracket till Resident Evil Extinction_«).

Musiken i alice downloads-mapp symlänkas sedan också in med musync (det har dessutom fördelen att de sämst taggade låtarna inte kommer med), fast i en annan mapp för att hålla isär den osorterade (läs: otaggade och overifierade) musiken från den sorterade. För att tillföra ytterligare röra så används en annan FUSE-modul för att montera upp MP3FS mot /site/musik.mp3.transcode. Det innebär att folk som vill ha min FLAC-musik i mp3 lätt kan hämta den (och att jag lättare kan kopiera musik till icke-FLAC-kompatibla DAP:ar).

Det mesta av det egentliga jobbet görs genom ett cron-jobb som körs en gång om dagen.

Se även hack, sortering, linux, musik.