How to install Guitar Pro 6 on a 64-bit Ubuntu 14.04
I ran into some problems installing Guitar Pro 6 on my new 64-bit Ubuntu 14.04 (alpha) environment. GP6 is a 32 bit application, but I got in to trouble when I tried to install the required i386 packets in parallel. The 32 bit sudo was in conflict with the 64 bit variant, and so was other libraries like libgtop2-7.
I tried to install a virtual 32 bit environment using LXC, but I could not get pulseaudio to work over the virtualization boundary using that technique.
But finally I managed to get it running using schroot, a chroot helper system that can be run without sudo.
I wrote an instruction of how to do it:
Download the Guitar Pro 6 linux package. In my case it was saved as ~/Downloads/gp6-full-linux-r11621.deb
Make sure we got schroot and debootstrap
sudo apt-get install schroot debootstrap
Go to chroot config directory
cd /etc/schroot
Use sudo with your prefered editor and create chroot.d/trusty_i386.conf
with this content, adjust the user names to match your local user:
[trusty_i386] description=Ubuntu 14.04 Trusty Tahr for i386 profile=guitarpro personality=linux32 type=directory directory=/var/schroot/trusty_i386 root-users=moggen users=moggen preserve-environment=true aliases=default
Clone the profile, we need to add to the fstab
sudo cp -a desktop guitarpro
We need to add a mapping for the pulseaudio sound system to work. Pulseaudio uses socket files inside /run/user/<your-uid>/pulse/
Sudo edit guitarpro/fstab
and add this line last:
/run/user /run/user none rw,bind 0 0
Create the directories for the virtual root
sudo mkdir /var/schroot sudo mkdir /var/schroot/trusty_i386
Make a bootstrap install of Ubuntu 14.04 inside the virtual root. Please use your local mirror of Ubuntu, in my case se.archive.ubuntu.com. This will download and install many packets. Run:
sudo debootstrap --arch i386 trusty /var/schroot/trusty_i386 http://se.archive.ubuntu.com/ubuntu/
You should now be able to enter the chroot (as your normal user):
cd schroot
You will get a new prompt similar to this:
(trusty_i386)moggen@moggen-pc:~$
You will need to install a bunch of packages inside the chroot to be able to install GP6. Start with adding the "universe" packet collection.
You need to edit /etc/apt/sources.list
. You only got the "vi" editor available in the base install.
You can of course install an other editor with apt-get and use that. It is also possible to edit it from outside the chroot directly in your system.
The path is then: /var/schroot/trusty_i386/etc/apt/sources.list
You must edit as root. Your passwords are copied to inside the chroot already, so sudo shuld work as usual.
Add "universe" packet collection to the deb source in the end of the line, so it becomes similar to this:
deb http://se.archive.ubuntu.com/ubuntu trusty main universe
Update the packets
sudo apt-get update
Attempt to install the GP6 debian package, it will fail due to missing dependancies! But we'll fix that. Your home directory is mapped to inside the chroot, so your ordinary Downloads directory is available.
sudo dpkg -i Downloads/gp6-full-linux-r11621.deb
Force installation of the dependancies, this will download and install many packets
sudo apt-get -f install
But more packets are needed before we can run GP6:
sudo apt-get install libpulse0 libSM6
Now we should be set.
Exit the chroot with ctrl-d or "exit". It will probably complain about a busy device that can't be unmounted, but it will work anyway.
Restart the chroot and tell it to start GP6:
schroot /opt/GuitarPro6/launcher.sh
Tada!
It is also possible to make an icon and run the launcher via the gnome/unity menus
Additional note: I had some trouble starting the GP6 updater when running via the command above. But the updater seems to work if I start schroot first to get the prompt and then invoke the launcher script.