- machanisms -> mechanisms

- immmutable -> immutable
  - change <code> markdown (pandoc doesn't know about ```yaml)
  - re-flow comments to wrap nicely
 by dholbach approved by chipaca
This commit is contained in:
Daniel Holbach
2015-04-22 17:22:07 -04:00
committed by Snappy Tarmac
+42 -38
View File
@@ -6,7 +6,7 @@ personalize the system according to an OEM.
It covers a broad range, such as the software stack with its configuration and
hardware enablement.
There can only be *one* snappy package of `type` `oem` and it can only be
There can only be *one* snappy package of `type: oem` and it can only be
installed during image provision.
## Nomenclature
@@ -88,7 +88,7 @@ system to boot.
While these assets are typically used during provisioning, they may also be
used against a running system. *Caution:* updating these assets on a running
system may lead to a broken system unless redundancy or fallback machanisms
system may lead to a broken system unless redundancy or fallback mechanisms
aren't provided by the OEM.
#### Partition layout
@@ -101,54 +101,58 @@ The only supported layout today is AB.
## Structure and layout
The `package.yaml` is structured as
The `package.yaml` is structured as:
```yaml
name: package-string # mandatory
vendor: vendor-string # mandatory
icon: icon-path # mandatory
version: version-string # mandatory
type: oem # mandatory
config: # optional
snappy-package-string:
property-string: property-value
name: package-string # mandatory
vendor: vendor-string # mandatory
icon: icon-path # mandatory
version: version-string # mandatory
type: oem # mandatory
immutable-config: # optional
- filter-string
config: # optional
snappy-package-string:
property-string: property-value
oem:
store: # optional
id: id-string # optional
immutable-config: # optional
- filter-string
branding: # optional
name: branding-name-string # optional
logo: logo-path # optional
oem:
store: # optional
id: id-string # optional
branding: # optional
name: branding-name-string # optional
logo: logo-path # optional
software: # optional
built-in:
- # package list
preinstalled:
- # package list
hardware: # mandatory
platform: platform-string # mandatory
architecture: architecture-string
# mandatory (armhf, amd64, i386,
# arm64, ...)
partition-layout: partition-layout-string
# mandatory (system-AB)
booloader: bootloader-string
# mandatory (u-boot or grub)
boot-assets: # optional
files: #optional
- path: file-path
raw-files: #optional
- path: file-path
offset: offset-uint64
software: # optional
built-in:
- # package list
preinstalled:
- # package list
hardware: # mandatory
platform: platform-string # mandatory
architecture: architecture-string # mandatory (armhf, amd64, i386, arm64, ...)
partition-layout: partition-layout-string # mandatory (system-AB)
booloader: bootloader-string # mandatory (u-boot or grub)
boot-assets: # optional
files: #optional
- path: file-path
raw-files: #optional
- path: file-path
offset: offset-uint64
```
The package header section is common to all packages
The general rules for config:
- only applied on first boot.
- if the config is immmutable, updates on in `oem` package will be reflected.
- if the config is immutable, updates to the `oem` package will be reflected.
Rules about packages in the config: