The Perfect Mobile Workstation? — a weekend adventure of setting up Ubuntu 18.04 on Dell Precision 5530
This is an interesting time for laptop power users, since there are some compelling options out there for those who want to get some serious work (content creation, software development etc.) done without compromising portability. There are the super thin and light ultrabooks at the lower end of the power spectrum, and then there are the high performance heavier mobile workstations, packing multiple drives with RAID, and powerful workstation graphics. But the segment that I find most interesting is the niche somewhere between these two extremes of portability and power — the thin-and-light mobile workstation.
The three most well-balanced mobile workstations that I would recommend in this segment in 2018 are Apple MacBook Pro 15, Dell Precision 5530 and Lenovo ThinkPad P1. While I find Microsoft Surface Book interesting too, there have been a lot of complaints about the stability of the device among my acquaintances who own it. HP ZBook is another interesting contender, but it is not as commonly seen around. The devices in this category typically have a light (relatively) form factor, 15 inch UHD (or Retina in case of the Mac) displays, discrete graphics and high-end mobile processors, including the option to configure with server-class Xeon processors in some cases.
When looking at the three mobile workstation that I had shortlisted, I was gravitating towards the ThinkPad P1, because I have been a fan of ThinkPad laptops for a long time, with a ThinkPad X260 running Ubuntu as my personal laptop since a couple of years now. But somehow I couldn’t find the right configuration at the price point I was looking for, since this model is the newest of the three, and Lenovo takes some time before offering discounted prices on new models. The other drawback of the ThinkPad P1 was the lower capacity battery. Lenovo decided to go with a dual-NVMe setup, instead of giving the option of a single NVMe with larger battery. They should address this design limitation in future models of ThinkPad P1.
And then there is always the MacBook Pro, tempting me back into the Apple ecosystem. Things have improved in the Mac world since I last had a personal MacBook Pro (I still have one for work). For starters, I can see that Homebrew has added more package over the years. And Visual Studio Code provides a uniform developer experience across platforms. Add to that the latest dark theme in Mojave, and MacBook looks quite compelling. I even found a deal on the 2017 model, and will be giving it a second look when it arrives, even though I can still configure a PC with almost double the power for the same price (hello, Apple Tax!). The biggest plus point of Mac for me is the ability to run my pro audio software like Ableton Live and Propellerhead Reason without having to leave the familiar Unix environment. I am not into iOS development or Apple ecosystem in general, but I am sure those factors would be important for some people out there.
So that left me with the Precision. I already have a Precision 5520 at work, running Windows 10. It is a solid performer with a quality build. One interesting bit about both Precision and ThinkPad P1 is that both of these laptops are “pro” versions of their respective consumer models, XPS 15 and ThinkPad X1 Extreme. They share the same build as their consumer siblings, with some slight variations like offering Xeon processors, pro (as opposed to gaming) graphics and Intel wireless cards, which work better with Linux. Dell has had good success with this model, and Lenovo is now trying the same. But there are some differences between the two. I like the classy matte black finish of the ThinkPad and its almost legendary keyboard. Precision, on the other hand, has a more modern metal finish and a soft carbon fiber palm rest. The biggest difference (for me) in internals of these two laptops is the larger battery on the Precision if you forego the second hard drive. Rest of the options for internals between the two laptops are almost identical.
To cut the story short, I eventually went with the Precision, since I found an awesome deal on it from Dell Outlet during their workstation sale event earlier this month, topped by my VMware employee discount. Since Dell offers the Precision with Ubuntu (even though it is limited to 16.04 right now), I was confident that the machine would be able to handle Ubuntu well. So, I ordered the Precision 5530 in its beautiful Black Onyx finish (it also comes in Platinum Silver). Another reason for going with the Precision was that since my wife has an XPS 15, we can share accessories like the power adapter and the Thunderbolt dock.
I managed to configure my Precision with Core i9, UHD display, and the larger battery — will most likely pop it open to double the RAM (from 16 GB to 32 GB) and put in a larger 2TB NVMe drive to dual-boot with Windows (still need it for some software which doesn’t work on Linux). The reasons why I went with Core i9 over Xeon are that Core i9 is faster in single-threaded workloads, and Microsoft has put some artificial limitations on Windows 10, allowing only the expensive Workstation version to run on Xeon processors (really, Microsoft?), inflating the prices of Xeon workstations.
The Precision arrived on Saturday. It is one beautiful machine! I fired it up, and booted into Windows 10 to apply BIOS updates. The process worked smoothly, and then the device was ready to get some Linux love.
It took a while to boot into Ubuntu installation on the Precision. I had 18.04 flashed on a USB drive, but Precision couldn’t find it on F12 boot. After some digging around, I found that I had to add USB boot device to the UEFI boot device list. That fixed the boot problem. But then I found that Ubuntu couldn’t see the NVMe drive. I recalled from experience that sometimes these drives are configured in RAID mode, so I went back to UEFI setup, and that was the issue. I switched it to AHCI mode, and booted back into the installation. This time, Ubuntu could happily see the drive and was ready to install. The installation went smoothly as expected, and soon I was booted into the operating system. All hardware was detected out of the box, after which I went to the “Additional Drivers” and installed the proprietary NVIDIA 390 drivers over the open source nouveau drivers.
Everything worked fine, till I closed the lid of the laptop. It suspended, even though the fan kept running for a bit longer. When I opened the lid, the laptop tried to resume from suspend, but hung in the process. I tried a lot of ideas, but nothing worked. So I had to switch back to Intel graphics, with which the laptop reliably suspends and resumes. Googling around this issue showed that this is a common issue for this graphics card with Ubuntu 18.04 and NVIDIA drivers. Apparently, there is a fix going into Linux kernel 4.18, which has worked for some people. I didn’t get a chance to patch my kernel and try it out yet. The updated kernel should make it to the next dot release of 18.04 after the New Year. Till then, I might stick around with Intel graphics, unless it bothers me enough to patch the kernel!
The other issue was with the applications, a number of which were not able to handle high DPI of the UHD display. GIMP and Audacity were among the top offenders. I typically install software from APT, but that obviously wasn’t working, so I thought about trying out newer versions. For that, there were two options — use snap, which comes out of the box in Ubuntu, or setup flatpak. I found that the flatpak world has a larger number of packages, and it integrates better with GNOME desktop. So I went with it over snap (even though I used snap to install LXD and Docker) and installed newer versions of my applications. This fixed most of the high DPI issues, since latest versions of GIMP and Audacity handle high DPI fine. There are still some applications (like Stellarium) which don’t work well with high DPI, but hopefully the developers will update them soon. Another issue was that the applications installed through flatpak were not picking up my GTK theme (I use Materia theme to match the dark aesthetics of the hardware, with flat and colorful Papirus icons) correctly, but doing a ‘flatpak update’ fixed it, as it downloaded the right dependencies.
On a side note, while finding newer versions of my applications, I came across Shotcut, which is an awesome multi-platform open source video editor. It has now become my default video editor on Ubuntu.
There are still some nagging issues, like resume from suspend is not instant, and the splash screen goes blank for a couple of seconds during boot (maybe it has something to do with hybrid graphics?). But overall, Ubuntu on Precision 5530 is working very well. The UHD display is stunning, and the Core i9 just crunches through whatever task I throw at it, from compilation to video rendering. The battery life also seems pretty good, but it will take a few days of normal work to get a better assessment.
This concludes my weekend adventure setting up a mobile Linux workstation on Precision 5530 with Ubuntu 18.04. This workstation is a delight to use so far, but I am also waiting for the MacBook Pro 15 to arrive, to see if it can tempt me back to macOS. It is great to have choices, but with Microsoft and Apple losing interest in their desktop operating systems, and consumers slowly moving away from traditional desktops, Linux might end up being the top choice for desktop power users in the future. Maybe the year of the Linux desktop will finally arrive? Till then, desktop Linux users like us will remain a vibrant enthusiast minority, brought together by the powerful idea of open computing for all.