I've been spending quite a bit of time with 'Alpine Linux' (https://alpinelinux.org/) on Raspberry Pi's and x86_64. I have an idea I've been mulling over and tinkering around with, I'm calling it Alps, as a riff on the Alpine theme, and which may or may not be an acronym (Another Logitech Player Server or Alpine Linux Player Server or Alpine LMS Plus Squeezelite or ??).
It's in its' infancy and I'm probably jinxing it by posting about it prematurely, but, I feel like the big pieces are in place and I just need to fit them together. I have packages for LMS and Squeezelite (currently redoing the armhf build environment), and most/all of the additional packages are in the Alpine repos, including those needed to support bluetooth. The general idea is rather than have a web (or other UI) on the player itself for configuration, you would do any player config through a plugin for LMS (called Alps), using the familiar plugin workflow and framework that LMS includes out of the box. There would be a global settings page that would apply to all Alps players and then player specific settings also. No settings would really be stored on the player side, they would be read from the server at player boot. The main exception would probably be for Raspberry Pi config.txt (usercfg.txt) which are read at boot. I've got an early proof of concept plugin working on the LMS side, and headless setup scripts working on the client side. For example, the basic steps to setup an RPi would be: 1. Download the stock Alpine tarball for your RPi. 2. Format SD card and extract the Alpine tarball to it. 3. Add the Alps tar.gz file to the root of the SD card and an optional wifi.txt file with SSID/credential info. 4. Boot On first boot, the Alps script downloads and installs squeezelite, starts it with null sound output and then shows up in LMS with a unique player name based on the MAC address. Now that it's checked in with LMS, you go into the Alps plugin settings and configure the player. The player configures itself at each boot based on the settings stored on the server. As I said, I have most of the concept pieces working, the LMS plugin, the headless boot and player check-in etc. Just trying to think through the negatives to this approach. I'm basing the design to suit my setup which I assume is fairly typical but I'm not sure. By that I mean I have a home server already, which does other things besides run LMS. So this automatic player setup approach assumes that an LMS instance already exists on the network. One plus is that I've tested it with USB boot on x86_64 hardware (Wyse thin clients) so the same basic approach can be used for a variety of hardware, as long as Alpine supports it. Anyway, comments welcome! ------------------------------------------------------------------------ sodface's Profile: http://forums.slimdevices.com/member.php?userid=19057 View this thread: http://forums.slimdevices.com/showthread.php?t=112899 _______________________________________________ unix mailing list unix@lists.slimdevices.com http://lists.slimdevices.com/mailman/listinfo/unix