README 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. meta-swupdate, Yocto layer for deploy tool
  2. ==========================================
  3. This layer's purpose is to add support for a deployment
  4. mechanism of Yocto's images based on swupdate project.
  5. Layer dependencies
  6. ------------------
  7. This layer depends on:
  8. URI: git://github.com/openembedded/meta-openembedded.git
  9. subdirectory: meta-oe
  10. BitBake variable expansion
  11. --------------------------
  12. To insert the values of BitBake variables into the update file, pre- and postfix
  13. the names with "@@". For example, to automatically set the version tag, use the
  14. line `version = "@@DISTRO_VERSION@@";` in your sw-description file.
  15. Image hashing
  16. -------------
  17. During creation of the update file, to get the sha256 hash of the image,
  18. pass $swupdate_get_sha256(IMAGE) (where IMAGE is an image filename).
  19. BitBake auto versions
  20. ---------------------
  21. By setting the version tag in the update file to `$swupdate_get_pkgvar(<package-name>)` it is
  22. automatically replaced with `PV` from BitBake's package-data-file for the package
  23. matching the name of the provided <package-name> tag.
  24. To insert the value of a variable from BitBake's package-data-file different to
  25. `PV` (e.g. `PKGV`) you can append the variable name to the tag:
  26. `$swupdate_get_pkgvar(<package-name>@<package-data-variable>)`
  27. SWU image signing
  28. -----------------
  29. There are 3 signing mechanisms supported by meta-swupdate at the moment:
  30. 1. RSA signing:
  31. * Set variable: `SWUPDATE_SIGNING = "RSA"`
  32. * Set `SWUPDATE_PRIVATE_KEY` to the full path of private key file
  33. 2. CMS signing:
  34. * Set variable: `SWUPDATE_SIGNING = "CMS"`
  35. * Set `SWUPDATE_CMS_CERT` to the full path of certificate file
  36. * Set `SWUPDATE_CMS_KEY ` to the full path of private key file
  37. * (Optional) Set `SWUPDATE_CMS_EXTRA_CERTS` to a space delimited list of intermediate certificate files
  38. 3. Custom signing tool:
  39. * Set variable: `SWUPDATE_SIGNING = "CUSTOM"`
  40. * Set variable `SWUPDATE_SIGN_TOOL' to custom string that needs to be
  41. executed in order to perform the signing
  42. sw-description is signed and the signature is written to sw-description.sig
  43. which is included in the SWU file.
  44. Encrypted private keys are not currently supported since a secure
  45. mechanism must exist to provide the passphrase.
  46. Maintainer
  47. ----------
  48. Stefano Babic <sbabic@denx.de>
  49. Submitting patches
  50. ------------------
  51. You can submit your patches (or post questions regarding
  52. this layer to the swupdate Mailing List:
  53. swupdate@googlegroups.com
  54. When creating patches, please use something like:
  55. git format-patch -s --subject-prefix='meta-swupdate][PATCH' <revision range>
  56. Please use 'git send-email' to send the generated patches to the ML
  57. to bypass changes from your mailer.