The Lone C++ Coder's Blog

The Lone C++ Coder's Blog

The continued diary of an experienced C++ programmer. Thoughts on C++ and other languages I play with, Emacs, functional, non functional and sometimes non-functioning programming.

Timo Geusch

4-Minute Read

I’ve been a Xubuntu user for years after switching from OpenSuse. I liked its simplicity and the fact that it just worked out of the box, but I was getting more and more disappointed with Ubuntu packages being out of date, sorry, stable. Having to rebuild a bunch of packages on every install was getting a little old. Well, they did provide material for all those “build XXX on Ubuntu” posts. Recently I’ve been playing with Manjaro Linux in a VM as I had been looking for an Arch Linux based distribution that gave me the right balance between DIY and convenience. I ended up liking it so much that I did a proper bare metal install on my main desktop. The install was pretty smooth apart from a issue with getting my AMD RX 470 graphics card to work.

Getting the AMD RX 470 GPU to work

The main issue I ran into when booting from the Manjaro Linux 16.10.2 live disk was a distinct lack of GUI and instead staring at a blank monitor. Not good, but the usual ALT-F2 got me a text console. A quick search of the Manjaro Wiki brought up the page describing how to configure graphics cards. Running mhwd -l provided the following output:

timo@timo-linux ~]$ mhwd -l
> 0000:01:00.0 (0300:1002:67df) Display controller ATI Technologies Inc:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
          video-amdgpu            2016.08.22                true            PCI
            video-vesa            2012.09.18                true            PCI

As you can see, the system identified both the amdgpu and vesa drivers as suitable drivers but the Xorg logfile confirmed that the amdgpu driver didn’t recognise my card. A simple

sudo mhwd -i pci video-vesa

followed by

startx

resulted in a working GUI on my AMD RX 470. Yay. I did have to repeat the process once more after installing from the live disk onto the hard drive but that was the only hiccup. The above should also work for AMD RX 480 GPUs as long as the Vesa driver is showing as being compatible.

I haven’t played around with the amdgpu-pro drivers or any of the catalyst drivers that are available via the repositories. As I don’t use Linux in a way that tends to require high 3D performance I can happily wait until the free drivers also support AMD RX 470 and RX 480 GPUs.

Making the clock work together with Windows

Manjaro Linux - as pretty much every other Unix or Linux I installed - really wants the hardware clock reading in UTC. As we all know, that thoroughly confuses Windows and as I tend to switch back and forth regularly that wasn’t acceptable. The Manjaro Wiki suggests to make Windows also use a UTC hardware clock. I wasn’t so keen on that idea and found the necessary information in the Arch Linux Wiki.

timedatectl set-local-rtc 1

does the job.

The rest of the installation

That’s where we get to the pleasant part of using a rolling release distribution rather than one that uses more “fixed” packages like Ubuntu or Linux Mint. The main packages I need on any of my Linux installs - GNU Emacs, GCC, Clang, Ruby, Clojure, Mercurial and last but not least zsh - are all present in the repositories and all are at their current release. So no more pulling of packages from experimental repos or building the binaries myself. So instead of spending an hour or two building binaries, 15-20 minutes worth of downloads on a fast Internet connection had me up and running.

In case you’re wondering why I don’t simply continue using the Manjaro Linux VM and jump through the hoops of actually doing a bare metal install - I’ll probably continue using the VM as well. However I like having segregated installs depending their use. Not running in a VM with easy access to background timesinks like Facebook and Twitter helps me focus. This install is purely for development and will stay that way.

Recent Posts

Categories

About

A developer's journey. Still trying to figure out this software thing after several decades.