For some time now I was looking for a replacement for my UDOO home server. After long research I decided to go for Intel NUC i3 version. Intel NUC Kit NUC6i3SYH is equipped with Intel’s newest architecture, the 6th generation Intel® Core™ i3-6100U processor.


It has truly impressive features such as massive 32GB DDR4 RAM support, M 2 SSD slot and SATA slot – see Intel website for more info.

Shopping List
 Samsung 250GB 850 EVO M.2 SSD  evo_sm
 8GB USB Flash Drive  USB_sm
2x 16GB of RAM – CT16G4SFD8213  memory_sm



The NUC itself is not supported by VMware and not listed in the HCL. However, some essential components are listed therefore when installing the latest ESXi 6.0 with patch ESXi600-201601001 (Build 3380124) released in January 2016 you will not have any issues:


How to install and configure CherryMusic on a Debian


CherryMusic depends on Python. To install Python 3, issue:

apt-get install python3

now install dependencies:

apt-get install ffmpeg imagemagick python3-unidecode lame flack vorbis-tools


Create user dedicated account:

adduser cherrymusic

The easiest way to get the latest CherryMusic code and to update CherryMusic regularly is to use Git. Install Git with:

apt-get install git

Now, switch to the newly created user:

su cherrymusic

and get CherryMusic:

git clone --branch devel git:// /home/cherrymusic/cherrymusic-devel
cd /home/cherrymusic/cherrymusic-devel
python3 ./cherrymusic --help



Now, do the initial startup to generate the configuration and data files in your home directory:

python3 ./cherrymusic

This creates the configuration file “~/.config/cherrymusic/cherrymusic.conf”

now we need to edit the config file:


under “basedir” enter the path to your music collection – to make it easier to add further libraries I set the “basedir” to a folder /home/cherrymusic/music_dir and created symlinks in that directory pointing to the location of my music

mkdir /home/cherrymusic/music_dir
ln -s Path_to_your_music /home/cherrymusic/music_dir

now we need to update the cherrymusic database:


and then start the server to test it:




By default cherrymusic will run on http – for security we will set it to run on https:

I already have certificate created and openssl installed so I go ahead and change the CherryMusic config:

cd /home/cherrymusic/cherrymusic-devel
 nano ~/.config/cherrymusic/cherrymusic.conf

and change the following lines accordingly:

 ssl_enabled = True
 ssl_certificate = /etc/ssl/certs/server.crt
 ssl_private_key = /etc/ssl/private/server.key

Now, when you connect to CherryMusic, you should automatically be redirected to the SSL port and therefore have a secure connection.

sysvinit startup script

One final thing is to set it up as a service – instructions are provided on Lord-Simon’s github:

wget --no-check-certificate -O /etc/init.d/cherrymusic

then make the file executable:

chmod +x /etc/init.d/cherrymusic

open it for editing:

nano /etc/init.d/cherrymusic

1. Add the path of your cherrymusic folder to DIR (/home/cherrymusic/cherrymusic-devel)
2. Add the python executable path to the PYTHON (/usr/bin/python3)
3. Set the USER and GROUP under which the service will run

Test the the init script by running:

service cherrymusic start


Once all is working OK do this:

update-rc.d /etc/init.d/cherrymusic defaults


Systemd startup script

I recently moved my cherrymusic service to brand new debian 8 box running systemd and so here is the systemd service script:

Description=CherryMusic Service

ExecStart=/usr/bin/python3 /home/cherrymusic/folder/cherrymusic #use your path to cm


saved that file to /etc/systemd/system as a cherrymusic.service
then to start it up just run:

systemctl start cherrymusic

to ensure it starts automatically enable the service:

systemctl enable cherrymusic



The UDOO is a single-board computer development platform that merges a dual or quad core ARM Freescale Cortex-A9 i.MX.6 CPU and an Arduino compatible board embedded with a dedicated ARM Atmel SAM3X8E CPU.

I got myself the quad core version. Here are the specs:

Freescale i.MX 6 ARM Cortex-A9 CPU Quad core @ 1 GHz
Integrated graphics, each processor provides three separate accelerators for 2D, OpenGL® ES2.0 3D and OpenVG™
Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
76 fully available GPIO
Arduino-compatible R3 1.0 pinout
HDMI and LVDS + Touch (I2C signals)
Ethernet RJ45 (10/100/1000 MBit)
WiFi module
Mini USB and Mini USB OTG (micro with the final release)
USB type A (x2) and USB connector (requires a specific wire)
Analog audio and microphone
Camera connection
Micro SD (boot device)
12V power supply and external battery connector



Here is how I’ve put it together:

1. For the case I used old WD MyBook USB HDD case (WD10000H1U-00):


2. For storage WD RED 1TB 2.5″ SATA 6GB/s 16MB Hard Drive:


Other used bits:

– old power supply

– fan from old laptop

– laptop CMOS battery

– SATA cable

– soldering line, duct tape, super glue and hammer 😉

And the end product:


Close up with descriptions


Side “A”


Side "B"

Side “B”