As described above, the image is the final result of the process. It's what's going to be used to install the file system that will run at the target device. There is two ways to create the image: using the GUI or using the command line. Both are described bellow.
What matters for now at this moment is the Platform Project session. The three buttons are use to Add a project, Delete a project or to open a terminal chrooted into the project selected in case any manual changes are needed.
|
|
|
It can take a long time to download and set up your project.It can be advantageous to set up a local cache which is explained at the end of this document |
The next step is to create the target and add one or more functional sets. In this session of the interface we see the buttons Add, to add a target to the current project, Add Functional Set, to include a functional set or more to the selected target, Delete, to delete a target from the list, Terminal, to open a chrooted terminal inside the target file system and Kernel cmdline that can be used to add command line parameters to be used when the target kernel is executed.
Moblin calls a bundle of packages an fset, where fsets can have dependencies on other fsets, and installing an fset will automatically install dependent fsets. For example
[Core] DESC=Fundamental fset that provides a root filesystem PKGS=linux-image-386 DEBUG_PKGS=gdb man-db manpages DEPS= [Hildon-Application-Framework] DESC=Hildon Application Framework for enabling Mobile Applications PKGS=ubuntu-mobile sdk-default-icons DEBUG_PKGS= DEPS=core
Here the "core" fset provides additional packages to make it possible to boot a target filesystem and get to a command line prompt, and a "hildon-application-framework" fset that will install additional package (on top of core) to enable running a Hildon desktop.
After the process is done, we will have a file system ready to be transfered to the target device or we can use the Terminal button to open a chrooted terminal and run the hildon environment directly in a Xephyr session.
The last step, which can be optional, is to create the image for the target. There are five different image styles that can be created, attached to the five first buttons in this session of the interface:
Live USB - Create a live USB image that can be burned to a USB drive. You can boot and run directly from it. Nothing is written to the target device.
Live RW USB - Same as the above but it supports data persistence. Every change made on the system while running this image will be saved on the USB drive.
Install USB - The image will be suitable to install on an actual device.
Currently, only the Install USB image type is supported. Once the generation of the image is done, use the Write USB Image button to write it to your USB drive.
As stated before, the same steps above can be done using the command line. This is very handy once the parameters are already defined as we can process the whole projects in batch. The steps taken can be as simple as follows:
Create the Project
$ sudo image-creator -c create-project \
--platform-name mccaslin \
--project-name "myproject" \
--project-path "/home/user/myproject" \
--project-description "My Samsung Q1 Ultra project"
Create the target system
$ sudo image-creator -c create-target \
--project-name "myproject" \
--target-name "target1"
Install the functional set.
$ sudo image-creator -c install-fset \
--project-name myproject \
--target-name target1 \
--fset-name "samsung-full-mobile-stack-with-proprietary"
Create the image
$ sudo image-creator -c create-install-usb \
--project-name myproject \
--target-name target1 \
--image-name myproject_target1_install-usb.img
Once finished, a file called myproject_target1_install-usb.img will have the image ready to be burn to a USB drive and be installed in the target. Another option is to chroot to the generated file system with:
$ sudo project-builder -c chroot-target \
--project-name myproject \
--target-name target1
And from there run the hildon-desktop pointing to a Xephyr instance.