I've been using GNU/Linux as my sole desktop OS for years now, and frankly I don't miss anything whatsoever from other operating systems. This post isn't to have that old debate yet again so I'm just offering this up as a bit of a backdrop for what follows. For 99.999% of what I do I simply don't need another OS, and on the exceedingly rare occasion when I do need to do something in Windows I have a VirtualBox VM I can use, but I'd be surprised if I have to launch my Windows VM more than a few times a year.
Recently I've become rather enamored with Balsamiq Mockups, which is a tool I've know about for a while and even tinkered around with, but for some reason it wasn't until a couple of weeks ago that the real power of Balsamiq hit me in the face. Luckily Balsamiq runs on Adobe AIR so rather than having to fire up a Windows VM to use it, in theory it'll run on GNU/Linux the same as it does on any OS.
For 32-bit systems this is probably true, but I'm running 64-bit GNU/Linux, specifically (as of last weekend) LinuxMint. (Total tangent here, but LinuxMint is a really nice Ubuntu/Debian derivative and since I don't at all care for the direction Ubuntu is taking with their UI I decided to install LinuxMint on my System76 Serval Pro since I'd been really liking it on my netbook.)
Adobe doesn't have a 64-bit version of AIR available for GNU/Linux, but they do have a 32-bit version available that is supposed to work with a few additional steps. When I tried this a couple of weeks ago the first set of instructions I found on Adobe's web site didn't work (not surprisingly since they're very outdated at this point), and there are lots of differing methods of how to do this on blogs, etc., but I took another run at it today and had better luck this time.
I started with these instructions on the Adobe web site but modified slightly (actually just didn't need to do some of the steps) so I thought I'd offer yet another differing opinion of how to get this working. Note that this worked for me on 64-bit LinuxMint, but my strong suspicion would be it will work on Ubuntu and other Debian-based distros as well.
- Download the BIN version of the AIR installer. (Yes, even though we're on a Debian-based distro, we want the BIN version.)
- Open a terminal, navigate to the directory where you downloaded the AIR installer, and do this:
chmod +x ./AdobeAIRInstaller.bin
- Download getlibs
- Again in a terminal, navigate to the directory where you downloaded getlibs and do this:
sudo dpkg -i getlibs-all.deb
- If you're following along in the Adobe instructions from earlier, you do not need to run the two getlibs commands. They result in a "no suitable library for installation" or something along those lines.
- Run the Adobe AIR installer from your terminal:
- You should see a GUI window pop up and you can click through the installer from there. Barring any errors at the end of this process you'll have AIR installed.
Since what got me on this topic was Balsamiq, let's go over the couple of quirks to getting that installed.
- The "Install Mockups" button doesn't work (or at least didn't for me) on GNU/Linux (maybe that's a known issue with AIR for GNU/Linux), so download the "Linux 64-bit" version under "Direct Links" on the Balsamiq downloads page
- With the .deb package downloaded, you can install that either from a terminal or from the Software Manager (i.e. right-click the .deb file and choose "Open with GDebi Package Installer")
- This installs Balsamiq and on LinuxMint creates a launcher under "Accessories." The launcher doesn't work as is, so I just launch from a terminal:
/opt/'Balsamiq Mockups'/bin/'Balsamiq Mockups'
The odd thing is this is the exact command the launcher has, so I suspect (totally guessing based on how Java stuff works with launchers) that for some reason the launcher doesn't see the AIR libraries it needs to launch successfully and some reference needs to be added to the launcher. I'm not sure how to address that in the same fashion you do with the -vm argument for things like Eclipse. I saw some info on a two-year old blog post that might still be relevant but I didn't test yet, and it may be as simple as creating a shell script that calls the Balsamiq launcher and having the GUI launcher point to that instead of pointing to Balsamiq directly. Stuff to dig into some other time, but if anyone knows the solution please share in the comments.
With that I am happily running Balsamiq on 64-bit GNU/Linux. One less reason to launch my Windows VM.