Basic Features:
- Music Player Daemon 0.16.8 or 0.17.2, full complement of codecs and streaming support
- Wizards for MPD & system configuration (using a point'n'click UI or CLI session)
- Smart shuffle functions built in courtesy of Albumbler and mpd sima
- Remote control & LCD support for platforms using Soundgraph iMon via LCDProc, empcd & mpdlcd
- Small size - iso is 61MB
- LastFM Scrobbling & Spotify support built in
- Built in webserver for serving up cover art to clients
- Avahi/Zeroconf built in for simplified mpd client discovery
- Hardened to always run in a read-only mode - treat it like an appliance
- Various (optional) audio manipulation capabilities, including libsamplerate, ALSA equalizer, & Sox
- A variety of MPD CLI clients and utilities included
- A full Python installation for scripting
Installation/Ugrade
- Download links version 0.9.3a (md5 is f6f775e2212395381ad2f5afdf366848 ):
Installation Prerequisites
- Flash Media, minimum 256MB (USB Stick or CF-SATA, or whatever you can boot off of)
Format using FAT32, Single partion
Unetbootin or similar software
A network file share (i.e. NAS, Windows, or Mac CIFS/SMB share) or separate hard disk with your music library (USB attached storage is partially supported).
- Download the iso file from one of the links above.
Insert your formatted USB Stick/Flash media into your computer
Install and Launch unetbootin
Select the second 'Diskimage' option, browse to and select the ISO image
Drive type will be USB drive, make sure you've selected the same drive letter/designator as the flash media.
Click 'ok' and wait for the installation to complete.
Remove the flash media and insert into the music server
Upgrading from a previous release to 0.9.3a:- First, insert the flash boot media into another system, e.g. a Windows, Mac, or Linux desktop machine.
Delete the puppy_mpdpup_0.9.2.sfs file, as well as the the .2fs save file. Mount the 0.9.3a iso on your system and manually transfer the puppy_mpdpup_0.9.3.sfs file from there to the flash media. This will maintain your mpd database and any smart shuffle information. Your system settings will be removed and you will need to re-run the setup wizards.
- Flash Media, minimum 256MB (USB Stick or CF-SATA, or whatever you can boot off of)
- You have a choice between doing the basic configuration using point and click or remotely from a CLI.
If you're using a USB DAC make sure it's plugged in before booting.
Make sure the machine is plugged into the network.
- Monitor/Keyboard/Mouse Install
- Hit whatever keys are required to get into the BIOS during the bootup.
Make certain the BIOS is configured to boot from the right media.
Disable on-board sound in the BIOS if you're not planning on using it.
Go through the self explanatory keyboard & monitor wizards and Xwindows should start.
Xwindows will launch the MPD Configuration Wizard automatically.
- This works best if Bonjour/Zeroconf is on your system (default on Mac and many Linux installs. Also installs with iTunes on Windows. Download here if you need it.
Once the system is booted, SSH to tunes.local
user/pass is root/woofwoof
The MPD Config Wizard will automatically launch during the first time setup.
To navigate the ssh dialogs you use a combination of tab, space bar (select items), and arrow keys. Enter to confirm the specified settings.
- Hit whatever keys are required to get into the BIOS during the bootup.
- The Wizard walks users through Sound, Storage, GUI, and Network preferences.
Except for the Static IP the steps are basically identical for Console or GUI users.
The Welcome Screen will provide you with a choice between Basic & Advanced setup. Many audiophiles will find the basic setup perfectly suitable. If you want bells and whistles or are an inveterate tweaker, go for advanced. Only the basic setup is documented here.
- Sound Configuration
- Go through the Welcome Screen, Select your sound output to your DAC from the list.
You'll be given an opportunity to check the sound output to make sure you got it right. Make sure your stereo is on and correctly hooked up to your sound device. If you don't hear any sound you can go back and choose another output.
Provide a name for the Sound Output.
Choose your volume control preference.
Continue on to the storage configuration.
- The first dialog will ask you whether your audio is stored locally or via a network share.
- Network Share
The CIFS configuration dialogs will ask you for various details regarding your network share, be prepared with IP address, user/pass, share name, and music directory.
If the root of the share is above your Music library then enter the sub-folder 'Music Root Directory'. Be sure to get the case correct. If the Music library is the root of the share then leave that box blank.
You'll then get a chance to confirm and test these settings. Go through those options, and if the test fails you can go back and change the settings.
- Local Storage
Note local storage support is new and the audio directory currently limited to a separate drive or partition from the boot device.
The boot drive and music storage drive should also be on separate system buses (e.g. SATA for boot and USB for storage)
The local storage wizard will have you select a drive and subdirectory where your audio data is located.
- Network Share
- If the wizards detect a Soundgraph iMon LCD/Remote then you'll be asked whether you want those functions enabled, along with the default settings for the LCD screen.
- You'll be asked after this if you want to set up a static IP. This is optional but recommended as most MPD Clients don't support Bonjour.
The setup is slightly different for GUI vs. SSH users. SSH is self explanatory.
For GUI User's you'll see a list of interfaces, and you'll need to select a button for your interface, in most cases Eth0.
Then Click the 'Static IP' button. Enter the IP in the following window, then click through the various confirmation/Done dialogs.
- GUI users will be asked to change the default Password at this point - this is strongly recommended.
Because of the security context the CLI based MPD Wizard is running in this isn't possible for SSH users, so you'll need to do this later.
- Go through the Welcome Screen, Select your sound output to your DAC from the list.
Saving the Config
- The final step in the wizard will ask you to reboot. This is recommended unless there is something else you want to change.
During the shutdown you'll be asked to create a save file, follow these steps, any size save file should be sufficient, smaller is fine.
After rebooting the server will be fully operational.
- MPD requires a separate client, there are many to choose from.
A variety of CLI clients built in if you like to access your system using SSH: mpc, ncmpc, ncmpcpp
Graphical/Web clients can be installed from the setup wizard, choose between GMPC, NeoMPC, Client175, phpMp+, Web1.0MPC
For iPhone/iPad users there is MPoD/MPaD, both of which will auto-discover your new server on the network.
Most other clients will require you to configure the IP address of your music server.
Look here for a full list of clients.
Contributing/Hacking on mpdPup
- mpdPup has it's own optional development files for people who would like to hack on or contribute to it.
Download the devx file here: (md5 is 5fa7ae9a121c3c769a363c02c970c11b )Download the kernel sources here (only required for drivers): To use these files, just place it on the flash media used in the installation instructions.
Then launch the Puppy Linux boot manager and configure it to load the devx file at startup.
I've taken a different approach with this devx vs. other Puppy Linux variations. Several 'heavy' applications such as Geany & Firefox are only available when using the devx file. Since mpdPup is hard-coded to run from RAM I wanted to make the base file as small as possible, but provide maximum flexibility to anyone developing on the platform.
mpdPup is binary compatible with Debian Squeeze, so you should also be able to use any of those Debian packages. Refer to the separate package management article for instructions on package handling.
- Some minor known issues with the 0.9.3 release:
- The ESI Juli@ seems to have problems with 176/192 Khz audio files. My own ESI Juli@ died, and it's possibly related to my specific card - if this is an issue for you and important then stick with 0.9.1,download here or here.
- empcd is unable to call albumbler when the system is started - this will work if the user manually restarts empcd from the local console.
- JWM's themes are a bit messed up, as is a fair amount of basic desktop usability. Since a full functioning desktop isn't one of this project's goals that's not a barrier to incrementing a release, but I would like to improve this in the future.
- Multiple USB disks can be problematic as their drive designation may change on each boot, this is system dependent
Changes will be based on user interest/feedback, things I'm thinking about are:- Support for automount/hotplug actions for USB drives and expand local storage support.
Realtime Kernel (The BFS scheduler may make this moot)
Serial Console Support (partially implemented as of 0.9.2)
Improve/Expand the remote control/LCD support
Continue Improving the wizards for various MPD/Client features
Further setup improvements, including automated installation, Localization/il8n
Package Management improvements
Squeezebox Support