Skip to contentSkip to conversation

core-image-tiny-initramfs: initramfs recipes should not generate an actual image file

PATCH In review Alejandro Hernandez 2 participants 4 messages Sep 15, 2017 – Nov 28, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 core-image-tiny-initramfs: initramfs recipes should not generate an actual image file

core-image-tiny-initramfs was used to generate a wic image, which was conceptually wrong since initrafms recipes should only generate the boot artifacts that can later be used by another recipe to generate an image using the tool of their choice.

---
 meta/recipes-core/images/core-image-tiny-initramfs.bb | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
meta/recipes-core/images/core-image-tiny-initramfs.bb +3 -4
index 184727ddf7a..a8893d1e53e 100644
@@ -1,10 +1,9 @@
 # Simple initramfs image artifact generation for tiny images.
 DESCRIPTION = "Tiny image capable of booting a device. The kernel includes \
 the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
-first 'init' program more efficiently.  core-image-tiny-initramfs doesn't \
+first 'init' program more efficiently. core-image-tiny-initramfs doesn't \
 actually generate an image but rather generates boot and rootfs artifacts \
-into a common location that can subsequently be picked up by external image \
-generation tools such as wic."
+that can subsequently be picked up by external image generation tools such as wic."
 
 PACKAGE_INSTALL = "initramfs-live-boot packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
 
@@ -17,7 +16,7 @@ IMAGE_LINGUAS = ""
 LICENSE = "MIT"
 
 # don't actually generate an image, just the artifacts needed for one
-IMAGE_FSTYPES = "${INITRAMFS_FSTYPES} wic"
+IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"
 
 inherit core-image
 
Signature · 1 line
2.12.3
#1 lore raw

Hi Alex,

Do you have a case that generating an image with wic + tiny initramfs? If so could you please show me that?

I tried to create an image with below commands directly, I'm not sure if this is a proper test case:

$ wic create mkefidisk -e core-image-tiny-initramfs

While I booting it with USB + Intel NUC, it hangs at finding rootfs.

Thanks
Wenzong

Quoted 36 lines · Alejandro Hernandez

core-image-tiny-initramfs was used to generate a wic image, which was conceptually wrong since initrafms recipes should only generate the boot artifacts that can later be used by another recipe to generate an image using the tool of their choice.

---
  meta/recipes-core/images/core-image-tiny-initramfs.bb | 7 +++----
  1 file changed, 3 insertions(+), 4 deletions(-)
meta/recipes-core/images/core-image-tiny-initramfs.bb +3 -4
index 184727ddf7a..a8893d1e53e 100644
@@ -1,10 +1,9 @@
  # Simple initramfs image artifact generation for tiny images.
  DESCRIPTION = "Tiny image capable of booting a device. The kernel includes \
  the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
-first 'init' program more efficiently.  core-image-tiny-initramfs doesn't \
+first 'init' program more efficiently. core-image-tiny-initramfs doesn't \
  actually generate an image but rather generates boot and rootfs artifacts \
-into a common location that can subsequently be picked up by external image \
-generation tools such as wic."
+that can subsequently be picked up by external image generation tools such as wic."
 
  PACKAGE_INSTALL = "initramfs-live-boot packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}"
 
@@ -17,7 +16,7 @@ IMAGE_LINGUAS = ""
  LICENSE = "MIT"
 
  # don't actually generate an image, just the artifacts needed for one
-IMAGE_FSTYPES = "${INITRAMFS_FSTYPES} wic"
+IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"
 
  inherit core-image
 
#2 lore raw

Hey Wenzong,

If you are using an Intel NUC, there is a recipe in meta-intel which is called core-image-tiny (not initramfs), that one is exactly what you are asking for, it builds the core-image-tiny-initramfs and then automatically creates a WIC image, which would be something similar to manually building core-image-tiny-initramfs and then doing:

$ wic create core-image-tiny -e core-image-tiny-initramfs

Hope that helps!

Alejandro

Quoted 48 lines · wenzong fan

Hi Alex,

Do you have a case that generating an image with wic + tiny initramfs? If so could you please show me that?

I tried to create an image with below commands directly, I'm not sure if this is a proper test case:

$ wic create mkefidisk -e core-image-tiny-initramfs

While I booting it with USB + Intel NUC, it hangs at finding rootfs.

Thanks
Wenzong

Quoted 35 lines · Alejandro Hernandez

core-image-tiny-initramfs was used to generate a wic image, which was conceptually wrong since initrafms recipes should only generate the boot artifacts that can later be used by another recipe to generate an image using the tool of their choice.

---
  meta/recipes-core/images/core-image-tiny-initramfs.bb | 7 +++----

  1 file changed, 3 insertions(+), 4 deletions(-)
meta/recipes-core/images/core-image-tiny-initramfs.bb +2 -3
index 184727ddf7a..a8893d1e53e 100644
@@ -1,10 +1,9 @@
   # Simple initramfs image artifact generation for tiny images.
   DESCRIPTION = "Tiny image capable of booting a device. The kernel includes \
   the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
-first 'init' program more efficiently. core-image-tiny-initramfs 
 doesn't \
+first 'init' program more efficiently. core-image-tiny-initramfs 
 doesn't \
   actually generate an image but rather generates boot and rootfs artifacts \
-into a common location that can subsequently be picked up by 
 external image \
-generation tools such as wic."
+that can subsequently be picked up by external image generation 

tools such as wic."
    PACKAGE_INSTALL = "initramfs-live-boot packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" @@ -17,7 +16,7 @@ IMAGE_LINGUAS = ""
  LICENSE = "MIT"
    # don't actually generate an image, just the artifacts needed for one

meta/recipes-core/images/core-image-tiny-initramfs.bb +1 -1
-IMAGE_FSTYPES = "${INITRAMFS_FSTYPES} wic"
+IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"

    inherit core-image

#3 lore raw
Quoted 8 lines · Alejandro Hernandez

Hey Wenzong,

If you are using an Intel NUC, there is a recipe in meta-intel which is called core-image-tiny (not initramfs), that one is exactly what you are asking for, it builds the core-image-tiny-initramfs and then automatically creates a WIC image, which would be something similar to manually building core-image-tiny-initramfs and then doing:

$ wic create core-image-tiny -e core-image-tiny-initramfs

Hope that helps!

Great, that's what I want.

Thank you so much!

Wenzong

Quoted 57 lines

Alejandro

Quoted 48 lines · wenzong fan

Hi Alex,

Do you have a case that generating an image with wic + tiny initramfs? If so could you please show me that?

I tried to create an image with below commands directly, I'm not sure if this is a proper test case:

$ wic create mkefidisk -e core-image-tiny-initramfs

While I booting it with USB + Intel NUC, it hangs at finding rootfs.

Thanks
Wenzong

Quoted 35 lines · Alejandro Hernandez

core-image-tiny-initramfs was used to generate a wic image, which was conceptually wrong since initrafms recipes should only generate the boot artifacts that can later be used by another recipe to generate an image using the tool of their choice.

---
  meta/recipes-core/images/core-image-tiny-initramfs.bb | 7 +++----

  1 file changed, 3 insertions(+), 4 deletions(-)
meta/recipes-core/images/core-image-tiny-initramfs.bb +2 -3
index 184727ddf7a..a8893d1e53e 100644
@@ -1,10 +1,9 @@
   # Simple initramfs image artifact generation for tiny images.
   DESCRIPTION = "Tiny image capable of booting a device. The kernel includes \
   the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \
-first 'init' program more efficiently. core-image-tiny-initramfs 
 doesn't \
+first 'init' program more efficiently. core-image-tiny-initramfs 
 doesn't \
   actually generate an image but rather generates boot and rootfs artifacts \
-into a common location that can subsequently be picked up by 
 external image \
-generation tools such as wic."
+that can subsequently be picked up by external image generation 

tools such as wic."
    PACKAGE_INSTALL = "initramfs-live-boot packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" @@ -17,7 +16,7 @@ IMAGE_LINGUAS = ""
  LICENSE = "MIT"
    # don't actually generate an image, just the artifacts needed for one

meta/recipes-core/images/core-image-tiny-initramfs.bb +1 -1
-IMAGE_FSTYPES = "${INITRAMFS_FSTYPES} wic"
+IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}"

    inherit core-image