8 | mic create SUBCOMMAND <ksfile> [OPTION]
9 | mic chroot [OPTION] <imgfile>
10 | mic convert [OPTION] <imgfile> <format>
15 The tools `mic` is used to create and manipulate images for Linux distributions.
16 It is composed of three subcommand: `create`, `convert`, `chroot`.
23 This command is used to create various images, including loop.
27 | mic create(cr) SUBCOMMAND <ksfile> [OPTION]
31 | help(?) give detailed help on a specific sub-command
32 | fs create fs image, which is also chroot directory
33 | loop create loop image, including multi-partitions
37 -h, --help show the help message
38 --logfile=LOGFILE specify the path of logfile, save the output to logfile LOGFILE
39 -c CONFIG, --config=CONFIG specify configure file for mic, default is /etc/mic/mic.conf
40 -k CACHEDIR, --cachedir=CACHEDIR cache directory used to store the downloaded files and packages
41 -o OUTDIR, --outdir=OUTDIR directory used to locate the output image and files
42 -A ARCH, --arch=ARCH specify repo architecture, genarally mic would detect the architecture, if existed more than one architecture, mic would give hint to you
43 --local-pkgs-path=LOCAL_PKGS_PATH specify the path for local rpm packages, which would be stored your own rpm packages
44 --pkgmgr=PKGMGR specify backend package mananger, currently yum and zypp available
45 --record-pkgs=RECORD_PKGS record the info of installed packages, multiple values can be specified which joined by ",", valid values: "name", "content", "license"
46 --pack-to=PACK_TO pack the images together into the specified achive, extension supported: .zip, .tar, .tar.gz, .tar.bz2, etc. by default, .tar will be used
47 --release=RID generate a release of RID with all necessary files, when @BUILD_ID@ is contained in kickstart file, it will be replaced by RID. sample values: "latest", "tizen_20120101.1"
48 --copy-kernel copy kernel files from image /boot directory to the image output directory
49 --runtime=RUNTIME Specify runtime mode, avaiable: bootstrap
50 --install-pkgs=INSTALL_PKGS Specify what type of packages to be installed, valid: source, debuginfo, debugsource
51 --check-pkgs=CHECK_PKGS Check if given packages would be installed, packages should be separated by comma
52 --tmpfs Setup tmpdir as tmpfs to accelerate, experimental feature, use it if you have more than 4G memory
53 --strict-mode Abort creation of image, if there are some errors during rpm installation
56 --include-src generate a image with source rpms included; to enable it, user should specify the source repo in the ks file
58 Options for loop image:
59 --shrink whether to shrink loop images to minimal size
60 --compress-image=COMPRESS_IMAGE compress all loop images with 'gz' or 'bz2' or 'lzo'
61 --compress-disk-image=COMPRESS_DISK_IMAGE same with --compress-image
65 | mic create loop tizen.ks
66 | mic cr fs tizen.ks --local-pkgs-path=localrpm
70 This command is used to chroot inside the image, it's a great enhancement of chroot command in linux system.
74 | mic chroot(ch) <imgfile>
78 -h, --help show the help message
79 -s SAVETO, --saveto=SAVETO save the unpacked image to specified directory SAVETO
84 | mic chroot tizen.iso
85 | mic ch -s tizenfs tizen.usbimg
89 This command is used for converting an image to another format.
93 | mic convert(cv) <imagefile> <destformat>
97 -h, --help show the help message
98 -S, --shell launch interactive shell before packing the new image in the converting
106 The advanced usage is just for bootstrap, please skip it if you don't care about it.
108 The major purpose to use bootstrap is that some important packages (like rpm) are customized
109 a lot in the repo which you want to create image, and mic must use the customized rpm to
110 create images, or the images can't be boot. So mic will create a bootstrap using the repo
111 in the ks file at first, then create the image via chrooting, which can make mic using the
112 chroot environment with the customized rpm.
114 Now mic will use bootstrap to create image by default, and to meet your requirement, you can
115 also change the setting for bootstrap (/etc/mic/bootstrap.conf):
118 | # which distro will be used for creating bootstrap
119 | distro_name = tizen
120 | # which dir will be located when creating bootstrap
121 | rootdir = /var/tmp/mic-bootstrap
122 | # whether to enable the bootstrap mode
125 | [tizen] # the supported distro for creating bootstrap
126 | # which packages will be optional when creating bootstrap for this distro
128 | # which packages will be required when creating bootstrap for this distro
133 Bug of latest syslinux package
134 ------------------------------
135 In some new Linux distributions, the "syslinux" package in their official
136 software repositories is the version 4.04. It will cause segment fault for
137 a fatal bug, and mic will failed with syslinux installation errors.
139 The solution is to install the patched "syslinux" package in MeeGo or Tizen's
140 tools repos, until the official released one being fixed.
142 Failed to create btrfs image in openSUSE
143 ----------------------------------------
144 When creating btrfs image in openSUSE, it would hang up with showing image kernel
145 panic. This issue impact all openSUSE distributions: 12.1, 11.4, 11.3, etc
149 The source code is tracked in github.com:
151 https://github.com/01org/mic
153 The bug is registered in tizen.org:
155 https://bugs.tizen.org/jira
157 Please report issues for bugs or feature requests.