I’ve moved!


This blog has moved!

The new url is http://cybolic.me.

All comments are now transferred and while the new site still has a few issues, it works well enough for now.

Everyone update your bookmarks, feed sources, rolodexes and fridge magnet spell-outs!

I just bought Deus Ex: Human Revolution, and if you did too, or are contemplating it, don’t let the bad rating on WineHQ scare you off – it runs near perfectly.
Now, the in-game tutorials are a bit wonky, but if you can live without those (I know I didn’t have much of a problem without them), here’s how you can install and run DE:HR in Ubuntu/Linux.

You are going to need Vineyard, so install that first if you haven’t already, also we are going to use the terminal a bit, but don’t worry, it’s not scary, just quicker.

First off, let’s install the game.

Do whatever you would normally do; run the installer from the DVD or download it from Steam – just make sure you do it in a new prefix in Vineyard.

Secondly, install a custom version of Wine (with rawinput2 patch).

We’re going to use one provided by PlayOnLinux, so if you have PlayOnLinux installed, just install Wine 1.3.34 rawinput2 from there, otherwise, either go to http://www.playonlinux.com/wine/binaries/linux-x86/, download the one called PlayOnLinux-wine-1.3.34-rawinput2-linux-x86.pol, rename it to have a .tar.bz2 ending and then extract from it the folder called “wineversion/1.3.34-rawinput2” to $HOME/.local/share/wineversions/1.3.34-rawinput2or run the following command:

mkdir $HOME/.local/share/wineversions && wget -q -O - 'http://www.playonlinux.com/wine/binaries/linux-x86/PlayOnLinux-wine-1.3.34-rawinput2-linux-x86.pol' | tar --wildcards --transform 's/wineversion\///' --bzip2 -xvf - -C $HOME/.local/share/wineversions/ 'wineversion/*'

Setup Vineyard to use it

Now we need to edit the prefix configuration so Vineyard knows to run this version of Wine, so if you know where that directory is, just go and open the file wrapper.cfg, otherwise open Vineyard Preferences, select the prefix and under “Tools“, click “Open Main Drive” and then navigate one directory up, there’s your wrapper.cfg.

Add the following lines to this file:

Or, if you installed the Wine version through PlayOnLinux:

Done! (or do you have sound?)

Now you actually might be able to run Deus Ex: Human Revolution just fine! For me though, I needed to go to Vineyard Preferences again and make sure the Deus Ex: Human Revolution launcher had “Disable PulseAudio whilst running” checked on, and then it was smooth sailing.

Hope this little guide was helpful, comments are very welcome.

So, you have all your old MIDI files lying around and you decide to play them through Totem or another GStreamer based player. What happens? They sound… flat.

Ah, no problem you think, I’ll just set up Timidity to use the neat soundfont I have lying around that sounds like my old SoundBlaster card and everything will be peachy, but no, GStreamer doesn’t support soundfonts cause it doesn’t use timidity but wildmidi – what to do?

Or: How to convert soundfonts to GUS patches for use in wildmidi/gstreamer.

There’s a neat little tool called Unsf included in Greg Lee’s gt – a stripped down version of Timidity – that can convert a soundfont to a GUS patch usable by wildmidi and therefore GStreamer, so let’s get started with the conversion!

First, go to where you want the GUS patch (and its files) – this path shouldn’t contain spaces – then download the latest version of gt (I hear there’s a version 1.0, but 0.4 is the latest I can find):

cd /where/you/want/the/GUS/files
wget ftp://ling.lll.hawaii.edu/pub/greg/gt-0.4.tar.gz

Now, let’s extract it somewhere and build it:

tar -xzf gt-0.4.tar.gz
cd gt-0.4
cd utils

Now, let’s convert the soundfont to a GUS patch (remember to replace /path/to/your/soundfont.sf2 with the actual path to your soundfont):

cd ../../GUS
../utils/unsf -F /path/to/your/soundfont.sf2

Now we need to fix the config file that unsf wrote to include the path to where your GUS patch is:

echo -e "dir $PWD\n" > wildmidi; cat *.cfg >> wildmidi

Now let’s “install” that config file:

sudo cp wildmidi /etc/wildmidi.cfg

There! You’re done!

For a nice athentic old school midi sound, I recommend the following soundfont (you need to register to download though):


I’m sure I’m not the only one that has had to install a 32bit version of some package to get a game or other program not designed for 64bit to work in 64bit Linux/Ubuntu/Debian and I’m sure others will nod in agreement at how difficult it can be to find the 32bit version, especially if you need a bunch and don’t really have the time to wade through packages.ubuntu.com (or packages.debian.org for that matter), so I’ve cooked up a little Python script to find the URL for the 32bit version of a package for you.

It’s here.

You just run it with the name of the package you want to find as the first argument, like so:

$ ./apt-get-i386-package.py libpulse0


See? Easy.

Also note that it found it in a PPA – it uses your package database, so everything you can theoretically install can be found in a 32bit version.

So, I’ve been reconsidering GEdit as a quick development environment, but I was really missing a way to switch to the bottom pane and back (for using the embedded terminal).

I couldn’t find an existing plugin to do this, so I took a look at Elia Sarti’s TabSwitch plugin – that uses Ctrl+Tab to switch tabs – and edited it to switch back and forth between the bottom pane and the editor view and I must say that GEdit has a rather comfortable work flow now :)

Plugin is here.

Yeah, so here we go, my third issue with the Linux port of Shadowgrounds… anyway, it turned out to not be that difficult to fix.

Shadowgrounds only really plays well with OSS, so you should run it through aoss, but that won’t work in 64 bit.
So here’s the solution:

First, install alsa-oss (sudo apt-get install alsa-oss), then download this archive, extract it your game directory and run shadowgrounds-x64 from now on – easy as that.
Download me

If you prefer to do this by hand, first download the alsa-oss package for i386 (from here), extract it (dpkg –extract alsa-oss_1.0.17-4_i386.deb alsa-oss) and copy the files in usr/lib/ to /usr/lib32/ (sudo cp alsa-oss/usr/lib/* /usr/lib32/). Now when you want to run the game, you should run it as:
LD_PRELOAD=”/usr/lib32/libaoss.so” aoss ./shadowgrounds-bin

I just received a chat message from someone on Facebook whom I am not friends with, and went to investigate…
Though I couldn’t find anything online, and I’m not going to test it by spamming random people, it seems that if you add a buddy/friend in your desktop chat client with a username such as -PROFILEID@chat.facebook.com (and profileids can be read from any profile) you’ll be able to chat to that person, even if you are not friends!

This might only work if the person you are chatting up also uses a desktop client, since Facebook did not store the message I received, but it’s still a flaw – especially considering that adding a person from UNIQUENAME@chat.facebook.com clearly claims that you are not authorised, so they do have some security in place.

*sigh* …when will Google free up Buzz from GMail so we can start migrating?

Normally I blog about Wine and Vineyard, but while the meaning behind these two projects are getting an existing Windows program running on Linux, thankfully this is not always necessary.

Now, I’m not much of a gamer, when I actually play something it’s usually not for more than an hour, at most. I tend to launch a game, play it for about 10 minutes and then get back to something else, so most of the hollywood fps-shooter/rpg/mmo-hybrids that are released these days never really get the attention they need from me for their mood and storyline to really grap me, luckily I stumbled upon another type of game a while back – for Windows.

You may have heard of or tried the initial stages of Spore or the simple fun of Flow and the game I’m talking about is very much in the same category as these, but in my opinion, a much more capturing and relaxing experience and the good news is that even though this was previously very possible to run through Wine, there is now a dedicated, very-well-ported, Linux version!

The game is, if you haven’t guessed it: Osmos.

In Osmos you play a small blob (or mote) that has to eat smaller blobs in order to grow and become the largest in the “blobiverse” and while this idea in itself isn’t new, the half-cosmos, half-biology visuals and the great galaxy inspired physics certainly are and give the game a great twist, placing it both in the tranquil, meditative genre and at the same time, due to the physics, the other intelligent blobs and depending on how you play, in the same kind of hectic, tilt-your-entire-body-to-move-your-avatar frenzy that is usually associated with action games.
Another point worth mentioning is that Osmos contains music by several artists, with the name of the artist and the track printed at the bottom of the screen at all times. This is a great move by Hemisphere Games and is a welcome respect towards musicians that is seldom seen in the game world.

All in all, while getting Windows-only games to run on Linux is great, supporting properly ported games and programs (and trust me, this is a fantastic port) is insanely important if Linux is to be taken seriously on the desktop and helps prove to companies that Linux is worth supporting.

If you haven’t done so already, hurry up and download the Osmos demo and if you like what you see, put your money where your mouth is and support a company that has done a great job at porting a great game to a great platform.

Osmos website is here.

I forgot to link to the article that actually introduced me to Osmos. It’s a good read, so don’t be afraid of the length.

NOTE: This is a bit verbose in the description, but maybe you can learn something from the process. If you just want to know how to fix the Banshee database after changing user name or moving your library to a different location, scroll down.

I recently reinstalled Ubuntu and in the process changed my user name to my more commonly used ‘cybolic’, however after copying the ~/.config/banshee-1 directory to my new home dir I realised that Banshee had all my music indexed by absolute path meaning that it was looking for my old home dir and so couldn’t play any tracks.

To fix it I assumed I would have to do a search and replace on its database, but I needed the filetype, so a quick ‘file ~/.config/banshee-1/banshee.db’ later I now knew that it was in SQLite 3.x format.

Now on to a tool to do the search and replace on the database…

Ubuntu has a tool in it’s repos called “sqlitebrowser”, that sounded about right, so I installed it and yes, it allowed me to browse the database and perform SQL queries – just what I needed.

So, long story short, to change the location of your music files in the Banshee database, here’s what you do (close Banshee first):

sudo aptitude install sqlitebrowser
sqlitebrowser ~/.config/banshee-1/banshee.db

Now change to the tab labelled “Execute SQL” and write something like the following:

update CoreTracks set Uri = replace(Uri, '/home/<olduser>', '/home/<newuser>');
update PodcastEnclosures set LocalPath = replace(LocalPath, '/home/<olduser>', '/home/<newuser>');

You are now done and can start Banshee again :)

I just though of something that I can’t get to make sense…

DISCLAIMER: I am in no way a lawyer, just a confused consumer.

It is (in Denmark at least, and I assume in most other countries) legal to make a safety copy of a legally purchased movie or album for yourself.
I presume it is also legal to get a friend to make the copy for you, provided he/she doesn’t make one for himself/herself as well (quite likely to happen given the time and computing power it takes to make a digital copy / transcoding)
But, it is not legal for me to download a “safety copy” of a movie or album I have legally purchased.

How exactly is that different from getting a friend to make the copy, and how is it supposed to be proven that it was actually downloaded? And what about if I make backups of all my movies and albums on my home computer and my physical collection then get stolen or my house burns? Will it be assumed that everything was downloaded illegally and if not, am I even entitled to keep my backups – and if not, why allow me to make backups in the first place?

Furthermore, even if it is proven that my collection was downloaded off the internet, how can it be proven that the copy I downloaded was not ripped from my own original (in the case that your backup-friend lives far away and sending the file is quicker than getting it physically – and, for the sake of argument, that your physical collection is nearer to your friend)?

Also, in the case of someone downloading something off BitTorrent, Rapidshare or another service – how can it be proven that the “leaked” copy didn’t originate from, but wasn’t spread by, the person downloading it? Isn’t that still a personal backup, even though others “stole” copies of it?

I’m having a great deal of trouble seeing how it’s possible to separate legal from non-legal copies (except for the case of watermarks, but even then you have the possible person-to-person sale to deal with) and how you can prove that any downloading/ripping/transcoding is illegal, provided that backups are legal – and I strongly believe they should keep being legal! I don’t want to lose my copy of Ghostbusters to scratches on the disc :(.

What are your thoughts on the subject?


Get every new post delivered to your Inbox.