Intel NUC/Debian Linux based RoonServer success story

I have been running Roon on a MacMini for about a year now, initially connected directly via USB to my DAC, for the last six months through ethernet to a SonicOrbiterSE (and then to DAC). All my tracks are on a NAS, about 1500 albums…1000 are redbook rips to FLAC, about 500 are hires mostly 96/24.

For a while I’ve been wanting to take the Mac out of the system and repurpose it elsewhere. I was intrigued by the SonicTransporter but after some poking around here and advice gathering, I decided to make my own RoonServer appliance. While I wanted a fun project, I was worried I’d run into hassles, but the transition was a piece of cake. It less than an hour.

There’s a lot of chatter on this forum around this, so I thought I’d share my success in case it helps anyone attempting the same.

Equipment:

I purchased an Intel NUC 6i5SHY. Figured I’d go with the newest, since it cost ten bucks more than last gen’s 5i5. I bought a Samsung 850 EVO 120GB m.2 SSD drive for the OS and RoonServer and two 8gb memory sticks from Corsair. Total cost on all that was around $500. Both the i5 and 16gb ram are probably overkill, but I figured I’d try to future-proof a bit. Lastly, I grabbed a Samsung 850 EVO 2TB SSD for my music library. This doubled the price, but I thought, ‘what the heck, I can make a self-contained appliance’. I’ll still use the NAS for back-up.

Once the pieces arrived, it took about 5 minutes to assemble. The NUC case is great. Solid metal, easy access to the parts I need. I put in the M.2 SSD first, then the two RAM sticks, slid the 2.5” SSD into the cases pre-wired bottom slot, screwed it together and was good to go.

Mine came with firmware 19, so I downloaded 51 from Intel, put it on a stick and updated the BIOS before doing anything else.

Software:

I’m using Debian Linux and had read horror stories about getting Linux, Debian in particular, to run correctly on the NUC. I purposely bought the RAM sticks based on Intel’s recommendation and updated the firmware hopefully to avoid issues. Spoiler: I had no issues whatsoever!

Using the netinstall image of Debian 8.5 Jessie on a USB stick, I installed a barebones version of Debian. Running as a server with no extra frills or processes for gui, etc., Debian is known for its stability (https://www.debian.org/CD/) Just follow along with the onscreen instructions and you can’t go wrong. Base system and SSH were the only two components I installed…no desktop gui…to keep it lean. I partitioned the M.2 ssd as one volume, containing the boot and home partitions. I ignored the 2TB drive for the time being. BTW, in my install, the M.2 was device ‘sdb’, and the 2TB drive was device ‘sda’. Took 15 minutes and booted right into grub on the first try.

I have my router assigning a static internal IP address to the NUC. I could configure this in Linux as well, but the router setup was the quickest path.

After logging in, I added sudo (base Debian install doesn’t include it), apt-get installed samba, and apt-get installed libav-tools (this is for avconv, which RoonServer requires. Debian doesn’t support ffmpeg easily any longer). The instructions at http://kb.roonlabs.com/LinuxInstall were very helpful. My base install already had cif-utils.

Then I partitioned and formatted (using fdisk) the 2TB drive for holding the music library, made a mount point for it in /mnt and edited fstab to automatically mount the second drive on startup. There’s a very straight-forward guide for these steps here: http://www.debiantutorials.com/how-to-add-a-new-hard-disk-or-partition-using-uuid-and-ext4-filesystem/

As an extra bonus, I installed webmin (http://www.webmin.com) to give me a browser-based way to configure the server as an alternative to the command line. It lets me monitor usage, create users, run scripts, deal with samba shares, etc. Nice little package.

I mounted the NAS and copied all my music files to the 2TB drive and disconnected from the NAS.

I downloaded the linux version of RoonServer per the instructions referenced above. They don’t list Debian as a tested distro, but doing the three steps listed verbatim got the server up and running without a hitch.

To migrate my settings, I shut down Roon on the Mac, and RoonServer on the linux box (it launched during install) with ‘systemctl stop roonserver’.

I located my ‘Roon’ folder on my mac and copied the Cache, Database, and Settings folders to /var/roon/RoonServer on the linux box.

In the Database/Registry folder there was a folder called ‘Storage’. I deleted that (‘rm -r /var/roon/Roonserver/Database/Registry/Storage’) because I didn’t want it to ‘remember’ the files on the NAS, since I will be pointing to the files on the internal 2TB drive from now on.

Then I restarted the server on linux with ‘systemctl start roonserver’. I could have rebooted, but this works too.

Opened Roon on my iPad and picked the new Linux box for Roon Server. It asked me to deauthorize my old Mac server, since the license is for only one server o the network. I did that, and immediately saw my familiar Roon interface, with my picture/account and all my Tidal albums. I went into settings/storage and pointed the watched folder to my internal drive. It rescanned and grabbed all my albums. All metadata edits, etc. were associated and my library looked exactly like it did on the Mac an hour ago.

It’s hard to A/B between the old mac setup and the new linux RoonServer appliance, but performance in the clients is now incredibly snappy and there surely is no loss in quality. I now have a smaller, quiet, dedicated RoonAppliance running a very stable version of Linux that I can just leave alone. When I want to add new music, I can network-connect to it via my Mac and drag and drop files.

Lastly, Roon subtly recommends newer, 4.x kernels for Linux. Debian is running 3.19. I considered backporting in a newer kernel, but RoonServer is working flawlessly, so I see no need at this time.

This was all easier than I expected. I have rudimentary linux skills but there is nothing fancy here. Following standard instructions got the job done. I’d highly recommend the process if you would like a low-cost, very fast, incredibly stable appliance dedicated to Roon.

16 Likes

Grats! What a great story and I hope you inspire others to do the same. If you ever get inispired to do another one, you also might look at the Gigabyte Brix line. @andybob and I have had very good success with that and it is a bit cheaper than the Intel NUC.

Great work
This story helped me and my Roon core is a Debian line x on a i5 NUC…
Rock solid and working fine… so far…

Mine’s had constant uptime since September…one reboot in November because Tidal forgot my credentials, didn’t want to take new ones, and I’d read a reboot fixes the problem (so I don’t think it was a Debian issue).

Love the little box! Glad it’s working well for others, too.

Thanks a lot for this @JeffN. I just installed Debian on my ‘old’ NUC. Followed your instructions and Roon installed and runs fine. Just my own files on a nas so far.

I used this as a basic guide when I set up my new NUC a few weeks ago in early Feb. Really like webmin, too! It’s nice having quick access to major items in Linux without having to use the command line and to be able to monitor things in a nice GUI.

I also liked your idea of getting a 2TB 2.5" SSD to store my music files on and went that route as well. I haven’t figured out a good backup solution yet (I don’t have a NAS) but since my library is pretty modest so far, I keep my files on my work laptop and I also backup to Google Drive though I’m quickly approaching the limit of the plan I have. Plus, I want something that’s not manual.

Long story short, appreciate the guide, @JeffN!

1 Like

Hi… Interresting story.
I have a MacMini 2012 and I installed the ArchLinux and the Roon Server… from my perspective is better than the standrd mac version of Roon…

Not much of a story. Care to elaborate on what is better about it?

Cost aside Mac hardware is quite interesting. How did you do it?

I used these tutorials as reference


Why downgrade the firmware?