The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
SDK on VirtualBox/Design
 (Initial draft)  | 
			
Revision as of 09:09, 27 May 2013
Contents | 
Overview
The virtualised SDK architecture supports multiple devices and emulators with a single Build Engine.
The main components are:
- Build Engine
 - Qt Creator
 - Virtualbox Emulator(s)
 - Physical device(s)
 
Shared folders are used for sharing:
- Configuration
 - SSH keys
 - Home directory
 - Targets
 - Other source directory trees
 
There are 3 shared folders.
mersdk:/etc/mersdk is mapped to the SailfishOS application areas mersdk folder and contains: configuration, targets and the ssh keys
home:/home/mersdk is mapped to the users 'home' directory
srcN:/home/srcN are each mapped to source directory areas on the host
Networking
Overview
The SDK network serves the following purposes:
- Host -> Build Engine for ssh/web
 - Host -> Emulator for ssh/debugging
 - Host -> Device for ssh/debugging
 - Build Engine -> internet for updates and information
 - Build Engine -> Device with ssh to support deployment
 - Emulator -> internet for updates and information
 - Build Engine -> Emulator with ssh to support deployment
 
To do this the Emulator and Build Engine will have 2 network adaptors. An adaptor running in NAT mode allows open outbound access and permits some incoming connections (ssh, www and gdb). This also handles Engine > Device connectivity. Another adaptor is a VirtualBox internal adaptor and supports open Build Engine <> Emulator(s) connectivity.
QtCreator and the Build Engine need to collaborate to setup the Emulator internal networking.
<devices> <engine name="Mer SDK" type="vbox"> <subnet>10.220.220</subnet </engine> <device name="Nemo N9" type="real"> <ip>192.168.0.12</ip> <sshkeypath></sshkeypath> </device> <device name="SailfishOS Emulator" type="vbox"> <index>2</index> <subnet>10.220.220</subnet> <sshkeypath></sshkeypath> <mac>08:00:27:7C:A1:AF</mac> </device> </devices>