I have been dual-booting Ubuntu Linux on my main desktop PC for development. Docker on macOS and Windows with WSL suffers from severe I/O performance issues for “reasons”. Docker is infuriating to use outside of Linux, so I started looking for alternative builds.
My primary 3900x gaming PC feels a little sacrilegious to use as a dedicated Linux machine to run some virtual machines and a Webpack server. I am not solving cryptographic problems here, so I just primarily need storage and ram; a decent CPU helps.
At first, I did consider getting a laptop. However, it’s the same problem. Most decent laptops are expensive and have limited amounts of RAM and storage. Not all laptops these days have replaceable storage or RAM either (thanks, Apple). Interestingly, most mini PCs I found were basically laptops in different cases; the architecture down to the ram and storage slots are the same.
After weighing up the options, I chose the Intel NUC 12 Pro. It’s a barebones mini PC kit from Intel that supports not just Windows but also numerous Linux distributions, including Ubuntu. Perfect. I considered older versions like the NUC 11, but the 12, one of the newest, ticked the right boxes at the right price.
Because it’s a barebones kit, you don’t get any storage or memory. This little kit can support up to 64 GB of ram. So, that’s the first thing I purchased. I went for the maximum of 64 GB of DDR4 ram. I chose Crucial 32 GB DDR ram, two of them.
Finally, I chose the Silicon Power P34A60 2 TB PCIe NVMe storage for storage. You will also want to buy a clover leaf cable, as the box doesn’t have a power lead. The Intel NUC C5 cable will do the job of powering your newfound tiny PC technological beast.
If you have ever installed memory before, installing the ram and NVMe storage is dead simple. You don’t need to be an expert in computer assembly to install them. They slot right in.
As you’re aware, Linux is designed to be performant on low-spec hardware, so Ubuntu on the NUC 12 will be noticeably performant, provided you’re not attempting to play graphically intensive games or do anything that requires massive amounts of power. Another deciding factor on the NUC 12 Pro was that Linux is officially supported.
Impressively, the NUC 12 Pro has 2 x HDMI 2.1 ports and 2 DP 1.4a via type C connectors. Then you have two USB 3.2 ports on the front. It has more connectors than you would think for such a small box. Then you have support for the Wi-Fi 6e protocol, an ethernet port, and integrated Bluetooth.
Furthermore, you can power multiple screens off this tiny little box (depending on the resolution). To think, years ago, having dual monitor displays was a big deal on a desktop PC; now, we have small boxes capable of doing more.
I am discussing the hardware a lot here, but it’s important. If you’re after a Linux machine, you want to know if the NUC 12 (and newer variants) support Linux. A resounding yes. Furthermore, you can affix the NUC because it’s so light to the back of a monitor and create your own makeshift all-in-one iMac. You will want an Intel NUC-compatible VIVO to mount like this one to do that.
In another post, I will detail getting my development environment setup:
- Installing drivers
- Installing software like Visual Studio Code
- Installing and configuring Docker
- Differences between Windows 11 and Ubuntu Linux
- What works/what doesn’t
Overall, the NUC is what you’re after if you want a powerful Linux machine, especially as a secondary development machine to complement your gaming PC. I don’t doubt the older NUC variants would also hold their own running a flavour of Linux. I just wanted to buy something that wouldn’t have driver support revoked after buying it.