Posted on January 9, 2025
Tags: madeof:atoms
Some time ago I installed minidlna on our media server: it was pretty easy to do, but quite limited in its support for the formats I use most, so I ended up using other solutions such as mounting the directory with sshfs.
Now, doing that from a phone, even a pinephone running debian, may not be as convenient as doing it from the laptop where I already have my ssh key :D and I needed to listed to music from the pinephone.
So, in anger, I decided to configure a web server to serve the files.
I installed lighttpd because I already had a role for this kind of configuration in my ansible directory, and configured it to serve the relevant directory in /etc/lighttpd/conf-available/20-music.conf:
$HTTP["host"] =~ "music.example.org" {
server.name = "music.example.org"
server.document-root = "/path/to/music"
}
the domain was already configured in my local dns (since everything is only available to the local network), and I enabled both
20-music.conf and
10-dir-listing.conf.
And. That’s it. It works. I can play my CD rips on a single flac exactly in the same way as I was used to (by ssh-ing to the media server and using alsaplayer).
Then this evening I was talking to normal people1, and they mentioned that they wouldn’t mind being able to skip tracks and fancy things like those :D and I’ve found one possible improvement.
For the directories with the generated single-track ogg files I’ve added some playlists with the command ls *.ogg > playlist.m3u, then in the directory above I’ve run ls */*.m3u > playlist.m3u and that also works.
With vlc I can now open music.example.org/band/album/p…to listen to an album that I have in ogg, being able to move between tracks, or I can open music.example.org/band/playlis… and in the playlist view I can browse between the different albums.
Left as an exercise to the reader2 are writing a bash script to generate all of the playlist.m3u files (and running it via some git hook when the files change) or writing a php script to generate them on the fly.
- as much as the members of our LUG can be considered normal.↩︎
- i.e. the person in the LUG who wanted me to share what I had done.↩︎
blog.trueelena.org/blog/2025/0…
Elena ``of Valhalla''
in reply to Elena ``of Valhalla'' • •TIL: per qualche ragione incomprensibile, se chiedi a circuitpython di scrivere in una posizione fuori dalla scheda SD, non riesce a scrivere sulla scheda SD.
e così, dopo settimane in cui ho ignorato il problema perché non sapevo come debuggarlo, adesso ho un dispositivo che salva dati GPS su una scheda SD
e per di più, se nella funzione
write_sentence(sentence)usifp.write(sentence)anzichéfp.write(gps.nmea_sentence)riesci anche a scrivere *altre* cose nello stesso log! tipo, chessò, dati da dei sensori!adesso immagino che dovrei scrivere qualcosa per il PC che estragga i dati dei sensori da un log NMEA e li mostri in modo carino? mah, magari, prima o poi :D
reshared this
rag. Gustavino Bevilacqua e Joe Vinegar 🏳️🌈 reshared this.