My chimera Debian system

Well, it's been a long time! Since my last post, I've discovered that there should have been a fifth "D'oh!" in there – turns out that the way the PCIe slots are arranged on my motherboard means that it's impossible to pass through one graphics card without the other. That probably explains the blank screen I got when booting into the hypervisor. It all boils down to the fact that I should have bought a higher-end motherboard.

But none of that matters one jot anymore, I've moved onto other matters! The hoops through which I tried, and failed, to jump in the last post, were mainly so I could play Rayman Legends. I did wind up being able to play this via Wine, although it was very slow. For a fast-paced game like this, the atmosphere was destroyed. Still, I made do, playing the daily and weekly challenges occasionally.

This all changed when I discovered that VMWare Player exists in a freeware version, and that it gives very good 3D acceleration, even under Linux hosts. Though I had to install various proprietary drivers* to make this work reliably, I was happy. I got Windows Vista up and running in a VMWare virtual machine, and Rayman Origins and Legends both work perfectly under it. Thank you VMWare!

Anyway, since then, I decided to sod the whole Linux Mint Debian Edition thing, especially since they decided to switch their base from testing to stable. I changed my sources list to point directly to Debian Jessie repositories. Since Jessie was frozen last November, this didn't cause me any problems – until Jessie went stable last month! I proceeded to point my package manager to the "Stretch" repositories and installed a plethora of updates.

I had already started compiling my own kernels some time ago, in order to be ahead of the curve (I'm on Linux 4.0 at the moment). I had to modify the sources of some of the VMWare modules in order to make them compile against the newer kernel. So when VMWare asked me to update a few weeks ago, I expected that these patches would have gone in upstream. I was wrong. The update actually overwrote my patched source with older versions, causing me to have to search out the patches again (this one and this one, if you're interested). This annoyed me, since Linux 4.0 is now actually the latest stable kernel, so one would expect professionally-developed software to work with it out of the box.

What annoyed me even more is that VMWare Player started crashing on startup after I pulled in the above-mentioned plethora of updates from the Stretch repositories. It became apparent that there was a certain package which I needed to downgrade to make it work with VMWare. In order to downgrade it, I had to add the oldstable ("Wheezy") repositories to my sources list, in addition to the "Stretch" ones. It was then a simple matter of heading into the package manager and selecting the older version of libgtkmm. This made VMWare work… for a while.

I got one session of Rayman Legends played, then it started crashing again. More Googling revealed that there were issues with libcurl. At first I couldn't believe this to be the cause, since that post was from 2013! But after a week of being unable to find any other possible causes, I decided to try also downgrading libcurl to oldstable. In order to do this, I also needed to downgrade a number of GNU R packages that depend on it, which I installed some time ago. For some reason, the package manager couldn't seem to figure out that it was possible to downgrade them all at once, so I had to mark them for downgrading separately, which was tedious. Still, I did it, and downgraded libcurl. And, surprise surprise, VMWare worked! Seemingly even the Jessie version of Curl is quite old…

So, I now have something of a chimera Debian system:

  • It's basically a Stretch (i.e. testing) system.
  • But there are 21 packages in it from oldstable; these are libgtkmm, libcurl, and several R packages.
  • I also compile my own kernel, so that is a package that comes from neither the testing nor oldstable repositories.
  • And there are several relics of Mint Debian Edition still lurking in the system files – GRUB identifies the system as "LinuxMint GNU/Linux" for example.

So this is fine, but I am annoyed that I have to use any oldstable packages. VMWare in fact comes with its own versions of these packages, but is unfortunately programmed to prefer system ones, even if they make it crash. Again, the current version was released very recently, and I think it's reasonable to expect that it would at least make provisions for systems that use packages that are too new for it (e.g. version check, fallback on the libraries with which it ships).

~It's been ages since I last updated this blog. Several things have happened. Notably I finally removed GSL from the Subatomic Particle Simulator, disentangling the legal issues. Unfortunately the inbuilt C++ version of the Gamma Function, that I now use instead, had not yet been implemented by Microsoft in the version of the Visual Studio compiler preferred by Valve. In other words, the Simulator won't compile on Windows for the moment. I suddenly find myself with more free time, maybe I should tackle that now…

*I've been through a few GPUs since by the way – I wish I'd updated this blog! Suffice it to say I have a GeForce GTX 980 now!