MOCK on Lenovo i5 or Ubuntu Server?

Hi,

I am thinking of buying a Roon ROCK compatible Desktop PC (headless) to be dedicated to Roon’s own ROCK SW. The cheap ones around are i5s model 4570 (i think 4th Gen). Would they be compatible?

I tried to previously dedicate my old 2nd Gen i5 laptop to ROCK. Successfully installed the ROCK SW onto my SSD but couldnt get it to boot up…the laptop got stuck at the first screen where it said ‘Lenovo’.

Was hoping i could get away with the 4th Gen cheap desktop to run ROCK.

Thanks for any suggestions or advice…

I just wrote this:

@danny that doesnt answer my question…but fair enough. By ‘what ROCK supports’…do you mean the Intel NUCs list mentioned on one of KBs?

People like compatibility. If you agree…you guys need to expand that list to ‘support’ to other SAME HWs…that is if you are in the business of helping customers get the most out your product. Leaving customers with oh, here is a list we support and that is exhaustive and so dont talk to us about other SAME HW that you may own…is not a winning attitude in 2020/21. Just saying…it may be easy to make ROCK compatible with any Intel based PC…unless your revenue model doesnt like it…

There are a few compatible NUC’s to choose from:

  • NUC5i3xxx
  • NUC5i5xxx
  • NUC6i3SYx
  • NUC6i5SYx
  • NUC7i3BNx
  • NUC7i5BNx
  • NUC7i7BNx
  • NUC7i3DNx
  • NUC7i5DNx
  • NUC7i7DNx
  • NUC8i3BEx
  • NUC8i5BEx
  • NUC8i5BEx
  • NUC8i7BEx
  • NUC10i3FNx
  • NUC10i5FNx
  • NUC10i7FNx

Source:

You can also install Roon server on:

1 Like

And if you don’t want to use one of the supported NUCs, but go for something else to try and run ROCK on, then you’re firmly in MOCK territory. This thread is for you…

1 Like

I would just add that there’s nothing “magical” about Roon OS from the perspectives of sound quality or performance…only in ease of maintenance.

From what I understand, Roon OS uses a custom Linux kernel that Roon Labs compiled to only include drivers needed to run on the supported Intel NUC boards plus a few filesystems and other critical bits. On top of the custom kernel, they layered systemd (likely) and enough utilities to install and run Roon Server plus the web user interface. By minimizing included drivers and software components, updates are smaller, faster, and less likely to break anything. No “SSH” is required (or even possible) for maintenance or troubleshooting.

Part of the genius of limiting support to the listed Intel NUC models is that this guarantees a minimum hardware spec (NVMe SSD boot drive, Core i3 processor, and 1 Gbps networking) to ensure a decent experience for those who go to the trouble of building a ROCK.

I’m personally glad that Roon Labs has decided against expanding the list of ROCK supported hardware. The longer the list, the more drivers must be included, and the harder it becomes to avoid changes that break things down the road. A longer list would make ROCK potentially less stable, defeating the point of having an easy to maintain, “It just works” way to run Core.

Going rogue with a “MOCK” install is fun to try, but for the less adventurous, I recommend simply running Roon Server on one of the tested Linux distros (Arch, Fedora Server, or Ubuntu Server) or even Windows 10, if a license was included with your PC. These take a bit more effort to keep updated, but on the same hardware, sound quality and performance are virtually identical to ROCK.

4 Likes

Thanks. I get it…I do. Its just that when it comes to HW components and their certification by Roon, one is actually very likely to be similar if not the same to another. Say a 6th Gen i3, a SSD and a Gigabit network…being the core performance drivers for one’s Roon experience…whether I get those in a NUC or a Laptop or a Desktop PC shouldn’t matter. At least that was my argument. Anyways, maybe I am missing out on something basic here…

Anyways, If someone was successful in installing and running ROCK on an old Lenovo laptop or PC…I figured this is the right thread to ask as I am having trouble getting pass the initial boot window…

Maybe, or maybe not… there’s only so many configurations RoonLabs can support, it’s as simple as that. As you may know, to take an example from what you were saying, it isn’t just “gigabit network”, it’s also things like “how good is the Linux driver for the network card”.

You can argue that they should support more, and maybe there’s a good argument to be made, but when you think about it, they do have to draw a line somewhere. Drawing that line at the hardware that they themselves sell and have intimate knowledge of, and letting the chips fall where they may for everything else, seems to make sense to me.

Head to the MOCK section. As far as I know, it doesn’t install, it likely won’t install, and if your configuration isn’t officially supported, you don’t have a guarantee that it’ll work in the future. One of your issues might be bios type (old-school vs UEFI), but given that thanks to Nucleus, we can safely assume there’ll be reasonably long-term support for the current-gen boards, I’d personally ask myself whether sparing the expense of of a modern i3 NUC is worth my time in going for an unsupported configuration.

Look up mock in search and the tinkering category is where all the tinkers mend their pots.

2 Likes

The two most common issues when attempting to run the ROCK image on unsupported hardware are boot failure (usually Legacy vs. UEFI) and missing network interface drivers. If your problem is with booting, you may be able to fix that with different BIOS settings. If it’s missing drivers, you’ve reached the end of the road.

What’s your objection to installing Ubuntu Server? I’d go with “Option 3” on this page:

Then choose “Download Ubuntu Server 20.04.1 LTS”

The download file is “ubuntu-20.04.1-live-server-amd64.iso” and was 914 MB as of this morning. Here’s a link to the installation guide:

If you don’t have the ability to burn the ISO image to a blank DVD-R disc, follow one of the tutorials below to flash the image to a USB thumb drive:

You can take the defaults for all of the installer options, but say “yes” to the question about installing “OpenSSH Server”. Once you get logged in (either on the console or via SSH), enter the following commands to install updates, dependencies and Roon Server:

sudo apt update
sudo apt upgrade
sudo apt install ffmpeg cifs-utils

curl -LO http://download.roonlabs.com/builds/roonserver-installer-linuxx64.sh
chmod +x roonserver-installer-linuxx64.sh
sudo ./roonserver-installer-linuxx64.sh

If all goes well, you should see something like this:

You can type “exit” to logout since there’s not anything more to do.

Finally, follow the steps in this article to migrate your database from your old Core to the new one:

If you need to restart Roon Server for some reason, log back into your new Core machine and enter this command:

sudo systemctl restart roonserver

There won’t be any output, but you can check the status by re-running with “status”. For example:

This is a bit more work than installing ROCK, and you won’t have a web interface for restarting Roon Server. But otherwise, it’s functionally the same thing. Plus, you won’t have to dedicate the entire boot drive to Roon OS. You can store whatever you want there, including music files.

If you want to be able to drag and drop music files, you can install Samba:

sudo apt install samba
sudo smbpasswd -a $LOGNAME
sudo perl -pi.bak -e 'undef $h if /^;?\[/; $h++ if /homes/; s/^;// if $h' /etc/samba/smb.conf
sudo perl -pi.bak -e 'undef $h if /^;?\[/; $h++ if /homes/; s/(read only =).*/$1 no/ if $h' /etc/samba/smb.conf
sudo systemctl restart smbd

I realize that looks a bit like line noise, but if you paste it exactly, it should work okay. To check, run this command:

sudo testparm

In the output (after you “Press enter”), you should see something like this:

[homes]
	browseable = No
	comment = Home Directories
	create mask = 0700
	directory mask = 0700
    read only = No
	valid users = %S

If that looks good, you can go to a Windows host and try connecting. In my case, the network address of my Ubuntu server is 172.16.8.117, and the user I created during O/S install was “dsnyder”, so I used this to connect:

\\172.16.8.117\dsnyder

…and I used the password that I entered in the “smbpasswd” command above.

Create a “Music” folder, drag over some tunes, and then add that folder to Roon under “Storage” settings. If you did the database migration, you may need to update locations for your library. Just pick “Edit” via the three dots menu next to each location. With any luck, you won’t have to re-scan your entire library.

That should get you started. Enjoy your adventure with Ubuntu Server, if you decide to try this route.

8 Likes

Very good and instructional write-up!

One additional suggestion is to include cockpit on the default installation, to make remote headless administration easy.

2 Likes

Thanks. I will do that…

Wow @David_Snyder…This is indeed helpful. Thanks for the detailed post, I am sure this will help many!

Would you say the ROCK performance via Ubuntu be better than running the server on Windows 10? I am getting all sort of issues from network stability to processing limitations when using Roon server on Windows…

Thanks. I hope you’ll give it a try.

I don’t think you’ll find a significant difference in performance for things like DSP and upsampling since those operations are CPU-bound. Network stability should be solid, but it usually is with Windows too, so you may have to fix the underlying issue. I would recommend a wired network connection.

Hi, I’ve finally been able to boot into ROCK by disabling AHCI in my BIOS but now am stuck with network issue. Basically, my laptop running ROCK is connected via LAN cable to a working port on my router straight and it’s constantly saying ‘Searching for network address…’

I have reinstalled ROCk on clean disks etc…but no luck!

I am sure people have faced this in the past. Any help or light on the resolution would be most appreciated…

@SHOAIB_AHMED1 - please see above. Will you consider Ubuntu Server now?

2 Likes

Thanks. Yeah, I guess there is no other way. I am guessing the problem is the lack of LAN driver set up in BIOS…but wouldn’t that also be the case with the Ubunto install? Also, you said it would be functionally the same as ROCK…would it be as light in its operation?

Also, can I dual boot the same SSD to either run the Ubunto server with Roon it or Windows 10?

I am new to programming and stuff so this does look overwhelming…but am still willing to try…

The problem is not lack of a LAN driver setup in BOIS, it’s that Roon Labs intentionally removed the driver required by the network interface in your computer from the ROCK image to make that image easier to maintain.

Unlike Roon OS, which only supports a specific list of Intel NUCs, Ubuntu Server supports a vast array of hardware. While possible, it’s highly unlikely that Ubuntu does not have a driver for your computer’s network interface.

Yes. Ubuntu Server “ships” with very few background processes running. Operationally, it will be very similar to Roon OS. In fact, in some ways, it will be even lighter because it does not start a webserver like ROCK does (for the Roon OS web UI).

I’m not sure why you would want to do this. I assume you no longer have a Windows 10 installation on this SSD since the ROCK install would have erased it. That would suggest that you were willing to dedicate this computer 100% to running ROCK. I suggest you take the same approach with Ubuntu and Roon Server.

Setting up dual boot is complicated and rarely done these days since most folks use virtualization or containers instead.

Even if you manage to successfully configure this SSD with dual-boot, you will not be able to share the Roon database between installations. You’ll be constantly exporting and importing backups after each reboot. This will be miserable. Don’t do it.

No programming required here. You just have to rev-up your curiosity and be willing to explore. There are lots of good guides on how to install Ubuntu. Follow the steps as closely as you can, and if something does not work, Google and try different things until you succeed. Good luck!

1 Like

I actually didnt wanna go and reinstall Windows so I took out my SSD containing Windows and put in an old HDD 1TB in the laptop to intstall Roon ROCK and see if it worked…it didnt! So now will try to install Ubuntu on the same HDD and see if thats something that works…if it does, ill clone the SSD first to the HDD after cleaning it and dedicate the SSD for Ubuntu…only if it gives more performance enhancements over the standard Windows Roon server in line with what Roon ROCK seems to give…

I’m not sure the comparison will be fair or useful since the Windows install is on SSD and Ubuntu is on HDD. Unless your library is tiny, performance will suffer without an SSD.

You have not mentioned that you were able to successfully perform a ROCK installation, so I don’t know how you’ll be able to compare either of these setups to ROCK.

If you carry out your experiment as described, I think you will be underwhelmed or somewhat disappointed with the performance of Roon Server on an HDD with Ubuntu. You might notice a tiny improvement in searches and general responsiveness over Windows if you used the SSD with Ubuntu because there are fewer background tasks running and no antivirus slowing down file access. DSP performance (eg., upsampling to DSD) will be nearly identical on the same hardware since this is CPU-bound, as I’ve mentioned before.

Edit: to run a fair comparison, you really need a second SSD