The Mer Wiki now uses your Mer user account and password (create account on https://bugs.merproject.org/)
Kickstarter
(→Partition setup - Part vs PartSize + FileSystem) |
(→Part) |
||
Line 92: | Line 92: | ||
Example: | Example: | ||
- Part: foo/bar/part | - Part: foo/bar/part | ||
+ | |||
+ | This will load foo/bar/part file into the kickstart file | ||
Example of partition file: | Example of partition file: | ||
Line 103: | Line 105: | ||
# This partition is made so that u-boot can find the kernel | # This partition is made so that u-boot can find the kernel | ||
part /boot --size=64 --ondisk mmcblk0p --fstype=vfat | part /boot --size=64 --ondisk mmcblk0p --fstype=vfat | ||
− | |||
=== PartSize and Filesystem === | === PartSize and Filesystem === |
Revision as of 13:31, 11 February 2012
Mer Kickstarter
YAML
External configurations
The "ExternalConfigs" keyword will tell kickstarter to look for additional YAML files to parse. Lists will be merged in order of inclusion, ie, if there is a key/value pair, the latest YAML file to be included (or the one having ExternalConfigs and that key), will specify the final value corresponding to the key. When lists are merged, later yaml file contents always will be first in the list, earlier ones appended.
"ExternalConfigs" should be accompanied with a list of directories.
Example:
ExternalConfigs: - /usr/share/kickstarts/mer-core - /usr/share/kickstarts/n900-hard
Declarations
There are two types of objects in a kickstarter file, one is declarations and one is configurations.
Declarations are sets of descriptions which has a name. These cannot inherit from each other.
Configurations are what is actually getting made into kickstart files, has to have a name and a filename.
Example:
Foo: Kernel: kernel-foobar
Configurations: - Name: Mer Core for foobar FileName: mer-core-foobar Inherits: - Foo Groups: - Mer Core
Configurations
The "Configurations" keyword is a list, specifies which kickstart files should be generated, see example above
Inheritance
Example:
Inherits: - foo - bar
This keyword can be used within configurations, to list what declarations to inherit from. This basically merges the declarations together, latter ones being prioritized over earlier, when merging lists, latter entries is earlier in the list than entries from earlier declarations.
Language
This keyword specifies the default locale used in the resulting image.
Example:
- Language: en_US.UTF-8
Keyboard
This keyword specifies the default keyboard layout used in the resulting image.
Example:
- Keyboard: us
Timezone
This keyword specifies the default timezone used in the resulting image.
Example:
- Timezone: UTC
or
- Timezone: Europe/Copenhagen
Partition setup - Part vs PartSize + FileSystem
There's two ways of laying out partitions with kickstarter. One is Part, which uses a partition layout file, and PartSize and Filesystem, which uses just one root partition, on which you indicate size and filesystem type.
Part
Partition layout is in order, first partition is first partition.
Layout:
part [MOUNTPOINT] --size=SIZE_IN_MB --ondisk LIKELYDISKNAME --fstype=FSTYPE [--active]
mountpoint is where it gets mounted, likelydiskname is the probable name of the disk when it runs in the device. Fstype is file system type (btrfs, ext4, etc..), when there, --active means that the partition is flagged as bootable
Example:
- Part: foo/bar/part
This will load foo/bar/part file into the kickstart file
Example of partition file:
part / --size=1800 --ondisk mmcblk0p --fstype=btrfs
# This is not used currently. It is here because the /boot partition # needs to be the partition number 3 for the u-boot usage. part swap --size=192 --ondisk mmcblk0p --fstype=swap
# This partition is made so that u-boot can find the kernel part /boot --size=64 --ondisk mmcblk0p --fstype=vfat
PartSize and Filesystem
This method creates just one root partition, with a certain size, and a certain file system. PartSize is always in megabyte.
Example:
- PartSize: 500 - FileSystem: ext4