MADDE/QEMU runtime

MADDE is currently a technology preview.

These instructions are liable to change as development progresses. If some of the components do not work as expected, please add your question to the MADDE talk thread and follow up the discussion. is down, see MADDE#Installation for alternatives.

[edit] Creating QEMU runtime

To run your application in QEMU runtime, you must create QEMU runtime for the Maemo platform version for which you are developing applications. To view available Maemo platform versions for QEMU runtimes and the targets these are bound to, use the following command:

mad list -v

QEMU runtimes can have the same states as targets: 'installable', 'installed', or 'default'. If the runtime is in 'installed' or 'default' state, you can start to use it.

There are two ways to create QEMU runtimes in 'installable' state - together with the target, as described earlier, or separately with the following command:

mad-admin create <runtime name>

It can take several minutes to create QEMU runtime. During command execution, QEMU runtime is started and it stays open after the command is finished. After the command has finished, check with the mad list command that runtime state is either 'installed' or 'default'. The created QEMU runtime is in 'default' state if the target it is bound to is set as 'default'. QEMU runtime cannot be set as 'default' explicitly.

After QEMU is created, it can be switched on and off with the following commands:

mad remote -r <runtime name> poweron 
mad remote -r <runtime name> poweroff

Note that all the changes you make in QEMU runtime when it is running - installing Debian packages, copying/removing/modifying files etc - are stored and available after closing (poweroff) and opening (poweron) QEMU runtime again. To reset QEMU runtime back to initial (factory) state, remove it and create again:

mad-admin remove <runtime name>
mad-admin create <runtime name>

To take a snapshot of QEMU runtime, use the mad-admin clone command. Runtime must not be running when cloning is done.

mad-admin clone <snapshot name>

If runtime is not specified with the -r option, the clone is done of the runtime bound to the default target. To specify the runtime to be cloned, use the following command:

mad-admin clone -r <runtime name> <snapshot name>

[edit] How to use the QEMU runtime

Please have a look at the device runtime documentation, where you can find more information on how to use the runtime in MADDE.