April 9, 2010

10 (or so) of the Best Mobile Linux Apps

The coolest thing about mobile Linux is that hey, it's basically Linux. Developers used to Linux will find themselves at home with mobile Linux (especially if targeting x86). And, familiar Linux apps can probably run fine on a mobile Linux system, too.

Linux's scalability from "devices-to-desktops" contrasts with other popular mobile platforms:

  • Microsoft Windows CE (now officially "Embedded Compact") is an RTOS (real-time OS) fundamentally different than Microsoft Windows. That goes for CE derivatives, too, like Windows Mobile and NavReady. Microsoft does use Windows in a few device products, like its POSReady stack for ATM machines and cash registers. But for the most part, Microsoft\'s OS strategy is split between separate mobile and sessile OSes. Could that hurt them, as devices and PCs converge?
  • Symbian was written "from the ground up" for mobile devices, which helped it become the top smartphone OS. Again, though, as PCs and devices converge, could Symbian find itself lacking some crucial DNA?
  • Mac OS X nominally scales from devices to servers to desktops. However, it's a microkernel OS, so different implementations may have little in common beyond the name, and that itty bitty Mach microkernel.
  • Mobile Java (Java ME, or "micro edition," formerly "J2ME") is but a subset of Enterprise Java (Java SE, "standard edition"), and a highly modular and configurable one at that (as with Linux, flexibility can be something of a double-edged sword).

Crossing Over

If Linux is Linux is Linux, apps that matured on Linux servers and desktops are likely to make a splash in mobile devices, too. Just take a look at the Moblin Garage, for example: F-Spot, Audacity, Adobe Reader, Ekiga, GIMP, Inkscape, etc. etc. -- most all the usual desktop Linux suspects are there.

Still, some desktop Linux apps may have a brighter future on devices than others. Here are a handful of picks likely to make the jump in big-time style:

  • Firefox. Wouldn't you prefer a browser that every web developer explicitly tests pages with? Already running well on lots of Linux devices, like two generations of Nokia web tablets, real by-gosh Firefox is a huge luxury, if your device has the cycles for it -- and many today do.
  • MPlayer. Was there ever a more configurable video player using fewer system resources? Building Mplayer from source, against the latest FFMPEG, is an absolute must on any new Linux desktop, laptop or device. It can be "educational" the first couple of times, but hey, it's good to know the ol' "configure; make; make-install" routine. These modern "distros" have spoilt us all, you know! As an example of the payoff, as of early February, Intel Atom and ATI GPU users can get hardware accelerated H.264, WMV3/VC1, MPEG2 and MPEG4! So you can watch the whole DVD on one charge. Just grab the code and follow the instructions here.
  • XPlanet. Your iPhone can show on-screen raindrops when your local forecast says it's raining. If you are disconnected enough from nature to like or want such a feature, I'd say you need a new life. But if, sadly, your phone really is your window on the world, with XPlanet as your screensaver and/or wallpaper, you can at least expand your horizon a little. Watch in real time as the Sun's footprint passes over your world, and wonder at satellite cloud maps updated every three hours.
  • Apache or Lighttpd. Hey, phone calls are full duplex; why not data connections, too? Take your webcam everywhere you go. Do some voice-recognized blogging. Stream single or multi-cast video in real-time. Scan a listing service for connections in your cell, check 'em out, and drop 'em an email, text, or vmail if you like. Sure, all this could be done using a proxy server. But seeing your phone wake up to serve a page -- and of course seeing it logged to your screen -- that's so much more immediate, and elegant in its simplicity, too. Talk about a "mobile web"! Why not??
  • MPD/MPC. In recent years, quite a few media discovery and remote playback standards have emerged: UPnP, DLNA, Bonjour/Zeroconf, and so on. These are all fine for a gamer PC hooked up to some decent speakers. But, who wants to listen to music through a mobile phone, or a netbook? Every mobile Linux device ought to have at least one client application that works with MPD, the open source music daemon that decouples music storage, rendering, and control. Glurp, or Sonata, or just plain-vanilla GMPC... they're all good (and there are so many to choose from!).
  • There are some really nice Office file viewers for embedded Linux nowadays. Yet, lots of devices today are powerful enough to eschew mere viewers, and run the real thing!
    • Abiword is a fully functional Word 98 clone that's kept itself slim and fast over the years, while gaining some pretty amazing features for mobile users; Like collaborative editing via the Jabber chat protocol.
    • If you can stand the thought of using a spreadsheet on a small-screen device, Gnumeric is light enough for device duty.
    • So is Lexi, the wonderful Access viewer that's saved more than a few of my days, as a web developer migrating sites away from old ASP code.
    • As for PowerPoint, well... as far as I know, you might have to step up to Open Office for that. If you're building OO.org for a device, you may wish to consider sourcing your bits from Go-oo.org.

Five Mobile-Only Apps to Watch

Of course, some mobile Linux devices will be written from the ground up for mobile devices. Here are five cool ones, picked somewhat at random from all the many. Literally thousands more can be found at mobile Linux app listing directories like the Zaurus Software Index or the Maemo Garage.

  • Carman -- Along with an inexpensive hardware adapter, this app lets you interact with the OBD-II ("on-board diagnostics II") bus port found within a couple of feet of the steering wheel in most all modern cars. Once you're on the bus, you can see why the "check engine" light is on, optimize your engine for a different fuel octane rating, or just configure some pretty gauges to show things like individual wheel speeds or oxygen sensor read-outs. Newer versions of Carman support not only GTK+/X-Window System, but also SDL (simple direct layer). Ooh... purty!
  • Canola -- Is any other UPnP-enabled media browser as finger-friendly? This Brazilian export lets you browse and render photos, videos, and music, both local and network-resident. Like the name implies, it\'s slick.
  • GPE/OPIE/Qtopia -- Hey, there's still room on mobile devices for great PDA apps, right!? Okay sure... most people today will use a technology that de-couples PIMs (personal information management) from any one device -- like Google Apps, or maybe just the SIM on your mobile phone. But there are still advantages to fully-fledged PIM suites, too: like more privacy, being less of a target for marketers, blazing performance, and mature stability and interoperability.

So there you have it, my list of top mobile Linux apps. And I didn't even get to applications with web service tie-ins, like the super-nifty JayCut video editor or get to what's coming from the Intel AppUp Center or Nokia's Ovi Store. Perhaps I'd better ask for help on this one! If you have a favorite mobile Linux app, please post it below, using the story comments feature!

Thanks, and happy Linuxing!

Click Here!