11fe918a0SAndrew GeisslerDESCRIPTION = "Simple initramfs image for mounting the rootfs over the verity device mapper." 21fe918a0SAndrew Geissler 3cc589285SAndrew Geisslerinherit core-image 41fe918a0SAndrew Geissler 51fe918a0SAndrew GeisslerPACKAGE_INSTALL = " \ 61fe918a0SAndrew Geissler base-files \ 7cc589285SAndrew Geissler base-passwd \ 81fe918a0SAndrew Geissler busybox \ 91fe918a0SAndrew Geissler cryptsetup \ 10cc589285SAndrew Geissler initramfs-module-dmverity \ 11cc589285SAndrew Geissler initramfs-module-udev \ 121fe918a0SAndrew Geissler lvm2-udevrules \ 13cc589285SAndrew Geissler udev \ 14cc589285SAndrew Geissler util-linux-mount \ 151fe918a0SAndrew Geissler" 161fe918a0SAndrew Geissler 17cc589285SAndrew Geissler# We want a clean, minimal image. 18cc589285SAndrew GeisslerIMAGE_FEATURES = "" 19cc589285SAndrew GeisslerIMAGE_LINGUAS = "" 20cc589285SAndrew Geissler 21*03514f19SPatrick WilliamsIMAGE_NAME_SUFFIX ?= "" 22*03514f19SPatrick Williams 231fe918a0SAndrew Geissler# Can we somehow inspect reverse dependencies to avoid these variables? 242a25492cSPatrick Williamspython __anonymous() { 252a25492cSPatrick Williams verity_image = d.getVar('DM_VERITY_IMAGE') 262a25492cSPatrick Williams verity_type = d.getVar('DM_VERITY_IMAGE_TYPE') 272a25492cSPatrick Williams 282a25492cSPatrick Williams if verity_image and verity_type: 292a25492cSPatrick Williams dep = ' %s:do_image_%s' % (verity_image, verity_type.replace('-', '_')) 302a25492cSPatrick Williams d.appendVarFlag('do_image', 'depends', dep) 312a25492cSPatrick Williams} 32cc589285SAndrew Geissler 33cc589285SAndrew Geissler# Ensure dm-verity.env is updated also when rebuilding DM_VERITY_IMAGE 34cc589285SAndrew Geisslerdo_image[nostamp] = "1" 351fe918a0SAndrew Geissler 361fe918a0SAndrew GeisslerIMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" 371fe918a0SAndrew Geissler 381fe918a0SAndrew Geisslerdeploy_verity_hash() { 39cc589285SAndrew Geissler install -D -m 0644 \ 40cc589285SAndrew Geissler ${STAGING_VERITY_DIR}/${DM_VERITY_IMAGE}.${DM_VERITY_IMAGE_TYPE}.verity.env \ 41cc589285SAndrew Geissler ${IMAGE_ROOTFS}${datadir}/misc/dm-verity.env 421fe918a0SAndrew Geissler} 43cc589285SAndrew GeisslerIMAGE_PREPROCESS_COMMAND += "deploy_verity_hash;" 44