AUIMD is a graphical environment for mobile devices, aggregating already existing components.
In itself AUIMD brings few added value : its main feature is to gather dissociated but proven components, in a single application. The main goal of AUIMD is to assemble some already existing existing softwares, in order to provide a user friendly environment. Currently MPlayer, Matchbox Keyboard, mrxvt are simply integrated through XEmbed. AUIMD also acts as a sort of fullscreen window manager so that regular X11 applications can be used easily.
Additionnaly AUIMD provides a very basic ground for easy and fast building of small applications (called widgets). See the widget tutorial for how to create widgets.
Other components can interact with AUIMD through a DBus interface. For instance a new widget can be started through the following method call :
dbus-send --dest=net.pierrox.auimd /Desktop net.pierrox.auimd.Desktop.StartWidget string:"WebBrowser" array:string:"http://www.pierrox.net/"
AUIMD currently uses Freesmartphone.org APIs for phone calls, and other things such as battery level reading.
AUIMD is primarily built using Python/Qt4. It runs on a GNU/Linux platform providing X11 display, with or without window manager (VGA preferred, but support for QVGA is ongoing). AUIMD has been tested on ARM based devices with at least 400MHz CPU and 64MB RAM (Eten G500 and HTC Universal).
AUIMD is currently on hold. I do not actively work on it. I do however provide support when needed, and I do not exclude to come back on it.
Don't expect from AUIMD a completely functional and polished environment. It has some rough edges and is more a proof of concept than a complete environment. That said it is quite usable and provides the following features :
AUIMD needs at last :
Additionaly AUIMD benefits from these packages :
For Debian like distributions the prerequisites can be installed with :
apt-get install python-qt4 python-qt4-dbus x11-xserver-utils mrxvt mplayer matchbox-keyboard xserver-xephyr python-xlib python-pysqlite2
A debian like distribution is not required in any way, but the armel Debian port is a recommended choice for setting up a first environment for ARM based devices.
In order to install an run AUIMD, simply extract the source archive and execute auimd.py :
tar xfz auimd-<version>.tar.gz cd auimd-<version> ./auimd.py
For FreeRunner owners, a ready to use root filesystem is available, it is based on Lenny and only includes the minimal set of packages needed to run AUIMD. This root filesystem does not fit on the flash (~362M), so it must be copied on the microSD card. The root filesystem MUST be used with the associated kernel, both can be found below :
Be patient while the GTA02 is booting, it will take 3 minutes to reach the home screen. The root password is "root" and the usb device is configured as ethernet gadget IP 192.168.0.202. Instructions on building the root filesystem can be found in this HOWTO.
AUIMD can be launched in its own window on a desktop PC, or fullscreen as the main application on a handheld device. Since AUIMD is platform independant, it is convenient to create and test applications on a PC and then be confident in the fact that it will run (more or less) the same way on the device.
AUIMD - Aggregated User Interface for Mobile Devices. Usage: ./auimd.py [options] Options: -deviceSet the hardware type (default='dummy', show available='list'). -fullscreen Use the whole screen and a frameless window (default=no). -no-cursor Hide the cursor (default=no). -embed Embed into an existing window. -help Print this message. Some other Qt/X11 usefull options: -display X11 display to use, default : $DISPLAY -geometry Window geometry, overriden by -fullscreen
More screenshots here
Latest release: auimd-0.3.tar.gz (all releases)
SVN repository : http://svn.pierrox.net/auimd/
Main architecture design choices are :
Released unser the GPLv2. See http://svn.pierrox.net/auimd/trunk/LICENSE
All icons come from the Crystal SVG icons from KDE 3.5.10.
Contributers are welcome ! If you feel interested in participating to the project : pierrox (at) pierrox dot net.