diff options
| author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-11-07 13:31:53 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-11-07 13:31:53 +0000 |
| commit | 8c22ff0d8b70d9b12f0487ef696a7e915b9e3173 (patch) | |
| tree | efdc32587159d0050a69009bdf2330a531727d95 /meta/recipes-core/images | |
| parent | d412d2747595c1cc4a5e3ca975e3adc31b2f7891 (diff) | |
| download | poky-8c22ff0d8b70d9b12f0487ef696a7e915b9e3173.tar.gz | |
The poky repository master branch is no longer being updated.
You can either:
a) switch to individual clones of bitbake, openembedded-core, meta-yocto and yocto-docs
b) use the new bitbake-setup
You can find information about either approach in our documentation:
https://docs.yoctoproject.org/
Note that "poky" the distro setting is still available in meta-yocto as
before and we continue to use and maintain that.
Long live Poky!
Some further information on the background of this change can be found
in: https://lists.openembedded.org/g/openembedded-architecture/message/2179
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-core/images')
15 files changed, 0 insertions, 587 deletions
diff --git a/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Guest_Additions.txt b/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Guest_Additions.txt deleted file mode 100644 index e7298f2c3c..0000000000 --- a/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Guest_Additions.txt +++ /dev/null | |||
| @@ -1,75 +0,0 @@ | |||
| 1 | |||
| 2 | Installing VirtualBox Guest Additions | ||
| 3 | ===================================== | ||
| 4 | |||
| 5 | In order to use VirtualBox guest additions, they have to be build | ||
| 6 | first. They may have to be rebuilt each time the time you upgrade to | ||
| 7 | a new version of VirtualBox. | ||
| 8 | |||
| 9 | Make sure VM is configured with an Optical Drive. | ||
| 10 | |||
| 11 | Please follow these steps to install the VirtualBox Guest Additions on the | ||
| 12 | Build Appliance VM: | ||
| 13 | |||
| 14 | 1. Boot VM, select root "Terminal" instead of the default "Terminal <2>" | ||
| 15 | |||
| 16 | 2. Insert Guest additions CD into VM optical drive: | ||
| 17 | VM menu "Devices"->"Optical Drives"-> Select "VBoxGuestAdditions<version>.iso" | ||
| 18 | |||
| 19 | 3. Find your CDROM device. Typically it is /dev/hda for IDE. You can determine | ||
| 20 | the actual name <cdromedev> by viewing the cdrom info: | ||
| 21 | |||
| 22 | # cat /proc/sys/dev/cdrom/info | ||
| 23 | |||
| 24 | Mount the cdrom drive: | ||
| 25 | # mount -t iso9660 <cdromdev> /media/cdrom | ||
| 26 | i.e.: | ||
| 27 | # mount -t iso9660 /dev/hda /media/cdrom | ||
| 28 | |||
| 29 | 4. Build the additions: | ||
| 30 | |||
| 31 | First, we need to build of some prerequisite utilities. | ||
| 32 | (This is only needed to be done once) | ||
| 33 | |||
| 34 | # cd /lib/modules/<kernel-version>-yocto-standard/build | ||
| 35 | # make scripts | ||
| 36 | |||
| 37 | Now build the guest additions: | ||
| 38 | |||
| 39 | # /media/cdrom/VBoxLinuxAdditions.run --nox11 | ||
| 40 | |||
| 41 | At this point, providing there were no build errors, the guest additions are | ||
| 42 | built and installed. | ||
| 43 | |||
| 44 | 5. Check if vbox additions running: | ||
| 45 | |||
| 46 | # /etc/init.d/vboxadd status | ||
| 47 | |||
| 48 | If not running, try manually starting: | ||
| 49 | |||
| 50 | # /etc/init.d/vboxadd start | ||
| 51 | |||
| 52 | 6. Check if additons actually work, in particular folder sharing. | ||
| 53 | |||
| 54 | Host: Devices->Shared Folders->Shared Folder Settings... | ||
| 55 | Add any host folder and name it (i.e. "images") | ||
| 56 | |||
| 57 | Guest VM: create mount point for the shared folder, i.e.: | ||
| 58 | |||
| 59 | # mkdir ~/my-host | ||
| 60 | |||
| 61 | Mount the shared folder: (Watch out for spelling: it's vboxsf NOT vboxfs) | ||
| 62 | |||
| 63 | # mount -t vboxsf images ~/my-host | ||
| 64 | |||
| 65 | Verify mount, should see the contents of the shared folder: | ||
| 66 | |||
| 67 | # ls ~/my-host | ||
| 68 | |||
| 69 | |||
| 70 | |||
| 71 | |||
| 72 | |||
| 73 | |||
| 74 | |||
| 75 | |||
diff --git a/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Toaster.txt b/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Toaster.txt deleted file mode 100644 index a0aede2fbf..0000000000 --- a/meta/recipes-core/images/build-appliance-image/README_VirtualBox_Toaster.txt +++ /dev/null | |||
| @@ -1,78 +0,0 @@ | |||
| 1 | |||
| 2 | Running Toaster in VirtualBox | ||
| 3 | ============================= | ||
| 4 | |||
| 5 | Toaster is launched via the command in VM: | ||
| 6 | |||
| 7 | $ source toaster start webport=<IPADDR:PORT> | ||
| 8 | |||
| 9 | The interaction with Toaster web server is done via a host internet | ||
| 10 | browser. | ||
| 11 | The particular steps depend on the actual networking being used | ||
| 12 | by the VirtualBox. | ||
| 13 | |||
| 14 | |||
| 15 | Bridged Network | ||
| 16 | =============== | ||
| 17 | |||
| 18 | Find out your VM network IP address: | ||
| 19 | |||
| 20 | $ ifconfig | ||
| 21 | |||
| 22 | IP address is listed under eth0 inet addr. | ||
| 23 | It should be something like: | ||
| 24 | inet addr:192.168.1.18 | ||
| 25 | |||
| 26 | Launch the Toaster web server in VM: | ||
| 27 | |||
| 28 | $ source toaster start webport=192.168.1.18:8000 | ||
| 29 | |||
| 30 | Interact with the Toaster web server with your host browser using URL: | ||
| 31 | |||
| 32 | http://192.168.1.18:8000 | ||
| 33 | |||
| 34 | |||
| 35 | NAT Network | ||
| 36 | =========== | ||
| 37 | Find out your VM network IP address: | ||
| 38 | |||
| 39 | $ ifconfig | ||
| 40 | |||
| 41 | IP address is listed under eth0 inet addr. | ||
| 42 | For NAT network it should be something like: | ||
| 43 | inet addr:10.0.2.15 | ||
| 44 | |||
| 45 | When using NAT network, the VM web server can be accessed using | ||
| 46 | Port Forwarding. | ||
| 47 | |||
| 48 | Using the VirtualBox GUI, navigate to: | ||
| 49 | Settings->Network->Adapter1 | ||
| 50 | |||
| 51 | You should set: | ||
| 52 | Attached to: NAT | ||
| 53 | |||
| 54 | Select "Advanced", click on "Port Forwarding" | ||
| 55 | |||
| 56 | This will open a new dialog box "Port Forwarding Rules". | ||
| 57 | Create a new rule that looks like this: | ||
| 58 | |||
| 59 | | Name | Protocol | Host IP | Host Port | Guest IP | Guest Port | | ||
| 60 | +-------+----------+---------+-----------+----------+------------+ | ||
| 61 | | Rule1 | TCP | | 8000 | | 8000 | | ||
| 62 | ------------------------------------------------------------------ | ||
| 63 | |||
| 64 | Now we can launch the Toaster web server in VM: | ||
| 65 | |||
| 66 | $ source toaster start webport=10.0.2.15:8000 | ||
| 67 | |||
| 68 | Interact with the Toaster web server with your host browser using URL: | ||
| 69 | |||
| 70 | http://127.0.0.1:8000 | ||
| 71 | |||
| 72 | |||
| 73 | |||
| 74 | |||
| 75 | |||
| 76 | |||
| 77 | |||
| 78 | |||
diff --git a/meta/recipes-core/images/build-appliance-image/Yocto_Build_Appliance.vmx b/meta/recipes-core/images/build-appliance-image/Yocto_Build_Appliance.vmx deleted file mode 100644 index 6472e87509..0000000000 --- a/meta/recipes-core/images/build-appliance-image/Yocto_Build_Appliance.vmx +++ /dev/null | |||
| @@ -1,46 +0,0 @@ | |||
| 1 | .encoding = "UTF-8" | ||
| 2 | config.version = "8" | ||
| 3 | virtualHW.version = "10" | ||
| 4 | numvcpus = "2" | ||
| 5 | vcpu.hotadd = "TRUE" | ||
| 6 | memsize = "4096" | ||
| 7 | mem.hotadd = "TRUE" | ||
| 8 | sata0.present = "TRUE" | ||
| 9 | sata0:0.present = "TRUE" | ||
| 10 | sata0:0.fileName = "Yocto_Build_Appliance.vmdk" | ||
| 11 | ethernet0.present = "TRUE" | ||
| 12 | ethernet0.virtualDev = "e1000" | ||
| 13 | ethernet0.wakeOnPcktRcv = "FALSE" | ||
| 14 | ethernet0.addressType = "generated" | ||
| 15 | usb.present = "TRUE" | ||
| 16 | ehci.pciSlotNumber = "0" | ||
| 17 | sound.present = "TRUE" | ||
| 18 | sound.fileName = "-1" | ||
| 19 | sound.autodetect = "TRUE" | ||
| 20 | pciBridge0.present = "TRUE" | ||
| 21 | pciBridge4.present = "TRUE" | ||
| 22 | pciBridge4.virtualDev = "pcieRootPort" | ||
| 23 | pciBridge4.functions = "8" | ||
| 24 | pciBridge5.present = "TRUE" | ||
| 25 | pciBridge5.virtualDev = "pcieRootPort" | ||
| 26 | pciBridge5.functions = "8" | ||
| 27 | pciBridge6.present = "TRUE" | ||
| 28 | pciBridge6.virtualDev = "pcieRootPort" | ||
| 29 | pciBridge6.functions = "8" | ||
| 30 | pciBridge7.present = "TRUE" | ||
| 31 | pciBridge7.virtualDev = "pcieRootPort" | ||
| 32 | pciBridge7.functions = "8" | ||
| 33 | vmci0.present = "TRUE" | ||
| 34 | hpet0.present = "TRUE" | ||
| 35 | usb.vbluetooth.startConnected = "TRUE" | ||
| 36 | displayName = "Yocto Build Appliance" | ||
| 37 | guestOS = "other3xlinux-64" | ||
| 38 | virtualHW.productCompatibility = "hosted" | ||
| 39 | gui.exitOnCLIHLT = "FALSE" | ||
| 40 | powerType.powerOff = "soft" | ||
| 41 | powerType.powerOn = "soft" | ||
| 42 | powerType.suspend = "soft" | ||
| 43 | powerType.reset = "soft" | ||
| 44 | extendedConfigFile = "Yocto_Build_Appliance.vmxf" | ||
| 45 | scsi0:0.present = "FALSE" | ||
| 46 | floppy0.present = "FALSE" | ||
diff --git a/meta/recipes-core/images/build-appliance-image/Yocto_Build_Appliance.vmxf b/meta/recipes-core/images/build-appliance-image/Yocto_Build_Appliance.vmxf deleted file mode 100644 index 9e941ff2f3..0000000000 --- a/meta/recipes-core/images/build-appliance-image/Yocto_Build_Appliance.vmxf +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | <?xml version="1.0"?> | ||
| 2 | <Foundry> | ||
| 3 | <VM> | ||
| 4 | <VMId type="string">52 a5 d8 cb ed 6c 85 48-cd 99 68 af cc 30 a0 98</VMId> | ||
| 5 | <ClientMetaData> | ||
| 6 | <clientMetaDataAttributes/> | ||
| 7 | <HistoryEventList/></ClientMetaData> | ||
| 8 | <vmxPathName type="string">Yocto_Build_Appliance.vmx</vmxPathName></VM></Foundry> | ||
diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb deleted file mode 100644 index fbd573e0e2..0000000000 --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb +++ /dev/null | |||
| @@ -1,161 +0,0 @@ | |||
| 1 | SUMMARY = "An image containing the build system itself" | ||
| 2 | DESCRIPTION = "An image containing the build system that you can boot and run using either VirtualBox, VMware Player or VMware Workstation." | ||
| 3 | HOMEPAGE = "https://docs.yoctoproject.org/overview-manual/yp-intro.html#archived-components" | ||
| 4 | |||
| 5 | LICENSE = "MIT" | ||
| 6 | LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" | ||
| 7 | |||
| 8 | IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \ | ||
| 9 | kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \ | ||
| 10 | tzdata python3-pip perl-misc" | ||
| 11 | |||
| 12 | IMAGE_FEATURES += "x11-base package-management splash" | ||
| 13 | |||
| 14 | QB_MEM ?= '${@bb.utils.contains("DISTRO_FEATURES", "opengl", "-m 512", "-m 256", d)}' | ||
| 15 | |||
| 16 | # Ensure there's enough space to do a core-image-sato build, with rm_work enabled | ||
| 17 | IMAGE_ROOTFS_EXTRA_SPACE = "41943040" | ||
| 18 | |||
| 19 | # Do a quiet boot with limited console messages | ||
| 20 | APPEND += "rootfstype=ext4 quiet" | ||
| 21 | |||
| 22 | DEPENDS = "zip-native python3-pip-native" | ||
| 23 | IMAGE_FSTYPES = "wic.vmdk wic.vhd wic.vhdx" | ||
| 24 | |||
| 25 | inherit core-image setuptools3 features_check | ||
| 26 | |||
| 27 | REQUIRED_DISTRO_FEATURES += "xattr" | ||
| 28 | |||
| 29 | SRCREV_bitbake ?= "8b582ef8dd0cef0192d4c0104bcd9b5d642d132c" | ||
| 30 | SRCREV_oe-core ?= "5298d01663f897e38380116edf23973d2a156cbc" | ||
| 31 | SRCREV_yocto ?= "fe65e142d0d9ba0e51ff9175ffa82e902f982a20" | ||
| 32 | SRCREV_FORMAT = "bitbake_oe-core_yocto" | ||
| 33 | |||
| 34 | SRC_URI = "git://git.openembedded.org/bitbake;name=bitbake;branch=master;destsuffix=bitbake \ | ||
| 35 | git://git.openembedded.org/openembedded-core;name=oe-core;branch=master;destsuffix=openembedded-core \ | ||
| 36 | git://git.yoctoproject.org/meta-yocto;name=yocto;branch=master;destsuffix=meta-yocto \ | ||
| 37 | file://Yocto_Build_Appliance.vmx \ | ||
| 38 | file://Yocto_Build_Appliance.vmxf \ | ||
| 39 | file://README_VirtualBox_Guest_Additions.txt \ | ||
| 40 | file://README_VirtualBox_Toaster.txt \ | ||
| 41 | " | ||
| 42 | RECIPE_NO_UPDATE_REASON = "Recipe is recursive and handled as part of the release process" | ||
| 43 | BA_INCLUDE_SOURCES ??= "0" | ||
| 44 | |||
| 45 | IMAGE_CMD:ext4:append () { | ||
| 46 | # We don't need to reserve much space for root, 0.5% is more than enough | ||
| 47 | tune2fs -m 0.5 ${IMGDEPLOYDIR}/${IMAGE_NAME}.rootfs.ext4 | ||
| 48 | } | ||
| 49 | |||
| 50 | fakeroot do_populate_poky_src () { | ||
| 51 | # Because fetch2's git's unpack uses -s cloneflag, the unpacked git repo | ||
| 52 | # will become invalid in the target. | ||
| 53 | for d in bitbake openembedded-core meta-yocto; do | ||
| 54 | rm -rf ${UNPACKDIR}/$d/.git | ||
| 55 | rm -f ${UNPACKDIR}/$d/.gitignore | ||
| 56 | cp -R ${UNPACKDIR}/$d ${IMAGE_ROOTFS}/home/builder/ | ||
| 57 | done | ||
| 58 | |||
| 59 | mkdir -p ${IMAGE_ROOTFS}/home/builder/openembedded-core/build/conf | ||
| 60 | echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/openembedded-core/build/conf/auto.conf | ||
| 61 | |||
| 62 | if [ ${BA_INCLUDE_SOURCES} != 0 ]; then | ||
| 63 | mkdir -p ${IMAGE_ROOTFS}/home/builder/openembedded-core/build/downloads | ||
| 64 | cp -RpL ${DL_DIR}/* ${IMAGE_ROOTFS}/home/builder/openembedded-core/build/downloads/ | ||
| 65 | # Remove the git2_* tarballs -- this is ok since we still have the git2/. | ||
| 66 | rm -rf ${IMAGE_ROOTFS}/home/builder/openembedded-core/build/downloads/git2_* | ||
| 67 | fi | ||
| 68 | |||
| 69 | # Place the README_VirtualBox_Guest_Additions file in builders home folder. | ||
| 70 | cp ${UNPACKDIR}/README_VirtualBox_Guest_Additions.txt ${IMAGE_ROOTFS}/home/builder/ | ||
| 71 | |||
| 72 | # Place the README_VirtualBox_Toaster file in builders home folder. | ||
| 73 | cp ${UNPACKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/ | ||
| 74 | |||
| 75 | echo "export LC_ALL=en_US.utf8" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 76 | echo "export TERM=xterm-color" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 77 | |||
| 78 | # Also save (for reference only) the actual SRCREV used to create this image | ||
| 79 | echo "export BA_SRCREV=${SRCREV}" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 80 | echo "" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 81 | echo 'export PATH=$PATH:/sbin' >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 82 | echo "" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 83 | |||
| 84 | echo "# If working behind a proxy and using the provided oe-git-proxy script" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 85 | echo "# you need to set ALL_PROXY based on your proxy settings." >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 86 | echo "# Example ALL_PROXY values:" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 87 | echo "# export ALL_PROXY=https://proxy.example.com:8080" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 88 | echo "# export ALL_PROXY=socks://socks.example.com:1080" >> ${IMAGE_ROOTFS}/home/builder/.bashrc | ||
| 89 | |||
| 90 | chown -R builder:builder ${IMAGE_ROOTFS}/home/builder/ | ||
| 91 | chmod -R ug+rw ${IMAGE_ROOTFS}/home/builder/ | ||
| 92 | |||
| 93 | # Assume we will need CDROM to install guest additions | ||
| 94 | mkdir -p ${IMAGE_ROOTFS}/media/cdrom | ||
| 95 | |||
| 96 | # Allow builder to use sudo | ||
| 97 | echo "builder ALL=(ALL) NOPASSWD: ALL" >> ${IMAGE_ROOTFS}/etc/sudoers | ||
| 98 | |||
| 99 | # Load tap/tun at startup | ||
| 100 | rm -f ${IMAGE_ROOTFS}/sbin/iptables | ||
| 101 | ln -rs ${IMAGE_ROOTFS}/usr/sbin/iptables ${IMAGE_ROOTFS}/sbin/iptables | ||
| 102 | echo "tun" >> ${IMAGE_ROOTFS}/etc/modules | ||
| 103 | |||
| 104 | # Use Clearlooks GTK+ theme | ||
| 105 | mkdir -p ${IMAGE_ROOTFS}/etc/gtk-2.0 | ||
| 106 | echo 'gtk-theme-name = "Clearlooks"' > ${IMAGE_ROOTFS}/etc/gtk-2.0/gtkrc | ||
| 107 | |||
| 108 | # Install modules needed for toaster | ||
| 109 | export STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE} | ||
| 110 | export STAGING_INCDIR=${STAGING_INCDIR_NATIVE} | ||
| 111 | export HOME=${IMAGE_ROOTFS}/home/builder | ||
| 112 | mkdir -p ${IMAGE_ROOTFS}/home/builder/.cache/pip | ||
| 113 | pip3_install_params="--user -I -U -v -r ${IMAGE_ROOTFS}/home/builder/bitbake/toaster-requirements.txt" | ||
| 114 | if [ -n "${http_proxy}" ]; then | ||
| 115 | pip3_install_params="${pip3_install_params} --proxy ${http_proxy}" | ||
| 116 | fi | ||
| 117 | pip3 install ${pip3_install_params} | ||
| 118 | chown -R builder:builder ${IMAGE_ROOTFS}/home/builder/.local | ||
| 119 | chown -R builder:builder ${IMAGE_ROOTFS}/home/builder/.cache | ||
| 120 | } | ||
| 121 | |||
| 122 | fakeroot do_tweak_image () { | ||
| 123 | # add a /lib64 symlink | ||
| 124 | # this is needed for building rust-native on a 64-bit build appliance | ||
| 125 | ln -rs ${IMAGE_ROOTFS}/lib ${IMAGE_ROOTFS}/lib64 | ||
| 126 | } | ||
| 127 | |||
| 128 | IMAGE_PREPROCESS_COMMAND += "do_populate_poky_src do_tweak_image" | ||
| 129 | # For pip usage above | ||
| 130 | do_image[network] = "1" | ||
| 131 | |||
| 132 | addtask rootfs after do_unpack | ||
| 133 | |||
| 134 | python () { | ||
| 135 | # Ensure we run these usually noexec tasks | ||
| 136 | d.delVarFlag("do_fetch", "noexec") | ||
| 137 | d.delVarFlag("do_unpack", "noexec") | ||
| 138 | } | ||
| 139 | |||
| 140 | # ${S} doesn't exist for us | ||
| 141 | do_qa_unpack() { | ||
| 142 | return | ||
| 143 | } | ||
| 144 | |||
| 145 | create_bundle_files () { | ||
| 146 | cd ${WORKDIR} | ||
| 147 | mkdir -p Yocto_Build_Appliance | ||
| 148 | cp ${UNPACKDIR}/*.vmx* Yocto_Build_Appliance | ||
| 149 | ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vmdk Yocto_Build_Appliance/Yocto_Build_Appliance.vmdk | ||
| 150 | ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhdx Yocto_Build_Appliance/Yocto_Build_Appliance.vhdx | ||
| 151 | ln -sf ${IMGDEPLOYDIR}/${IMAGE_NAME}.wic.vhd Yocto_Build_Appliance/Yocto_Build_Appliance.vhd | ||
| 152 | zip -r ${IMGDEPLOYDIR}/Yocto_Build_Appliance-${DATETIME}.zip Yocto_Build_Appliance | ||
| 153 | ln -sf Yocto_Build_Appliance-${DATETIME}.zip ${IMGDEPLOYDIR}/Yocto_Build_Appliance.zip | ||
| 154 | } | ||
| 155 | create_bundle_files[vardepsexclude] = "DATETIME" | ||
| 156 | |||
| 157 | python do_bundle_files() { | ||
| 158 | bb.build.exec_func('create_bundle_files', d) | ||
| 159 | } | ||
| 160 | |||
| 161 | addtask bundle_files after do_image_wic before do_image_complete | ||
diff --git a/meta/recipes-core/images/core-image-base.bb b/meta/recipes-core/images/core-image-base.bb deleted file mode 100644 index 75a08cfc92..0000000000 --- a/meta/recipes-core/images/core-image-base.bb +++ /dev/null | |||
| @@ -1,8 +0,0 @@ | |||
| 1 | SUMMARY = "A console-only image that fully supports the target device \ | ||
| 2 | hardware." | ||
| 3 | |||
| 4 | IMAGE_FEATURES += "splash" | ||
| 5 | |||
| 6 | LICENSE = "MIT" | ||
| 7 | |||
| 8 | inherit core-image | ||
diff --git a/meta/recipes-core/images/core-image-initramfs-boot.bb b/meta/recipes-core/images/core-image-initramfs-boot.bb deleted file mode 100644 index 7258944751..0000000000 --- a/meta/recipes-core/images/core-image-initramfs-boot.bb +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | SUMMARY = "Basic initramfs to boot a fully-featured rootfs" | ||
| 2 | DESCRIPTION = "Small initramfs that contains just udev and init, to find the real rootfs." | ||
| 3 | LICENSE = "MIT" | ||
| 4 | |||
| 5 | INITRAMFS_SCRIPTS ?= "initramfs-framework-base initramfs-module-udev" | ||
| 6 | |||
| 7 | PACKAGE_INSTALL = "${INITRAMFS_SCRIPTS} ${VIRTUAL-RUNTIME_base-utils} base-passwd" | ||
| 8 | |||
| 9 | # Ensure the initramfs only contains the bare minimum | ||
| 10 | IMAGE_FEATURES = "" | ||
| 11 | IMAGE_LINGUAS = "" | ||
| 12 | |||
| 13 | # Don't allow the initramfs to contain a kernel, as kernel modules will depend | ||
| 14 | # on the kernel image. | ||
| 15 | PACKAGE_EXCLUDE = "kernel-image-*" | ||
| 16 | |||
| 17 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" | ||
| 18 | IMAGE_NAME_SUFFIX ?= "" | ||
| 19 | IMAGE_ROOTFS_SIZE = "8192" | ||
| 20 | IMAGE_ROOTFS_EXTRA_SPACE = "0" | ||
| 21 | |||
| 22 | inherit image | ||
diff --git a/meta/recipes-core/images/core-image-minimal-dev.bb b/meta/recipes-core/images/core-image-minimal-dev.bb deleted file mode 100644 index 93ead20553..0000000000 --- a/meta/recipes-core/images/core-image-minimal-dev.bb +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | require core-image-minimal.bb | ||
| 2 | |||
| 3 | DESCRIPTION = "A small image just capable of allowing a device to boot and \ | ||
| 4 | is suitable for development work." | ||
| 5 | |||
| 6 | IMAGE_FEATURES += "dev-pkgs" | ||
| 7 | |||
diff --git a/meta/recipes-core/images/core-image-minimal-initramfs.bb b/meta/recipes-core/images/core-image-minimal-initramfs.bb deleted file mode 100644 index 4e210d1bf3..0000000000 --- a/meta/recipes-core/images/core-image-minimal-initramfs.bb +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | # Simple initramfs image. Mostly used for live images. | ||
| 2 | SUMMARY = "Small image capable of booting a device." | ||
| 3 | DESCRIPTION = "Small image capable of booting a device. The kernel includes \ | ||
| 4 | the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \ | ||
| 5 | first 'init' program more efficiently." | ||
| 6 | |||
| 7 | INITRAMFS_SCRIPTS ?= "\ | ||
| 8 | initramfs-framework-base \ | ||
| 9 | initramfs-module-setup-live \ | ||
| 10 | initramfs-module-udev \ | ||
| 11 | initramfs-module-install \ | ||
| 12 | initramfs-module-install-efi \ | ||
| 13 | " | ||
| 14 | |||
| 15 | PACKAGE_INSTALL = "${INITRAMFS_SCRIPTS} ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" | ||
| 16 | |||
| 17 | # Do not pollute the initrd image with rootfs features | ||
| 18 | IMAGE_FEATURES = "" | ||
| 19 | |||
| 20 | # Don't allow the initramfs to contain a kernel | ||
| 21 | PACKAGE_EXCLUDE = "kernel-image-*" | ||
| 22 | |||
| 23 | IMAGE_NAME_SUFFIX ?= "" | ||
| 24 | IMAGE_LINGUAS = "" | ||
| 25 | |||
| 26 | LICENSE = "MIT" | ||
| 27 | |||
| 28 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" | ||
| 29 | inherit core-image | ||
| 30 | |||
| 31 | IMAGE_ROOTFS_SIZE = "8192" | ||
| 32 | IMAGE_ROOTFS_EXTRA_SPACE = "0" | ||
| 33 | |||
| 34 | # Use the same restriction as initramfs-module-install | ||
| 35 | COMPATIBLE_HOST = '(x86_64.*|i.86.*|arm.*|aarch64.*)-(linux.*|freebsd.*)' | ||
diff --git a/meta/recipes-core/images/core-image-minimal-mtdutils.bb b/meta/recipes-core/images/core-image-minimal-mtdutils.bb deleted file mode 100644 index c92234c082..0000000000 --- a/meta/recipes-core/images/core-image-minimal-mtdutils.bb +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | require core-image-minimal.bb | ||
| 2 | |||
| 3 | DESCRIPTION = "Small image capable of booting a device with support for the \ | ||
| 4 | Minimal MTD Utilities, which let the user interact with the MTD subsystem in \ | ||
| 5 | the kernel to perform operations on flash devices." | ||
| 6 | |||
| 7 | IMAGE_INSTALL += "mtd-utils" | ||
diff --git a/meta/recipes-core/images/core-image-minimal.bb b/meta/recipes-core/images/core-image-minimal.bb deleted file mode 100644 index 84343adcd8..0000000000 --- a/meta/recipes-core/images/core-image-minimal.bb +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | SUMMARY = "A small image just capable of allowing a device to boot." | ||
| 2 | |||
| 3 | IMAGE_INSTALL = "packagegroup-core-boot ${CORE_IMAGE_EXTRA_INSTALL}" | ||
| 4 | |||
| 5 | IMAGE_LINGUAS = " " | ||
| 6 | |||
| 7 | LICENSE = "MIT" | ||
| 8 | |||
| 9 | inherit core-image | ||
| 10 | |||
| 11 | IMAGE_ROOTFS_SIZE ?= "8192" | ||
| 12 | IMAGE_ROOTFS_EXTRA_SPACE:append = "${@bb.utils.contains("DISTRO_FEATURES", "systemd", " + 4096", "", d)}" | ||
diff --git a/meta/recipes-core/images/core-image-ptest-all.bb b/meta/recipes-core/images/core-image-ptest-all.bb deleted file mode 100644 index d4edb0fd05..0000000000 --- a/meta/recipes-core/images/core-image-ptest-all.bb +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | SUMMARY = "Recipe to trigger execution of all ptest images." | ||
| 2 | HOMEPAGE = "https://www.yoctoproject.org/" | ||
| 3 | |||
| 4 | LICENSE = "MIT" | ||
| 5 | |||
| 6 | inherit features_check nopackages | ||
| 7 | REQUIRED_DISTRO_FEATURES = "ptest" | ||
| 8 | |||
| 9 | require conf/distro/include/ptest-packagelists.inc | ||
| 10 | |||
| 11 | # Include the full set of ptests | ||
| 12 | PTESTS = "${PTESTS_FAST} ${PTESTS_SLOW}" | ||
| 13 | |||
| 14 | do_testimage[noexec] = "1" | ||
| 15 | do_testimage[depends] = "${@' '.join(['core-image-ptest-'+x+':do_testimage' for x in d.getVar('PTESTS').split()])}" | ||
| 16 | |||
| 17 | do_build[depends] = "${@' '.join(['core-image-ptest-'+x+':do_build' for x in d.getVar('PTESTS').split()])}" | ||
| 18 | |||
| 19 | # normally image.bbclass would do this | ||
| 20 | EXCLUDE_FROM_WORLD = "1" | ||
| 21 | |||
| 22 | python () { | ||
| 23 | if bb.utils.contains('IMAGE_CLASSES', 'testimage', True, False, d): | ||
| 24 | bb.build.addtask("do_testimage", "", "", d) | ||
| 25 | } | ||
diff --git a/meta/recipes-core/images/core-image-ptest-fast.bb b/meta/recipes-core/images/core-image-ptest-fast.bb deleted file mode 100644 index a5364e6cbf..0000000000 --- a/meta/recipes-core/images/core-image-ptest-fast.bb +++ /dev/null | |||
| @@ -1,6 +0,0 @@ | |||
| 1 | require core-image-ptest-all.bb | ||
| 2 | |||
| 3 | SUMMARY = "Recipe to trigger execution of all fast ptest images." | ||
| 4 | |||
| 5 | PTESTS = "${PTESTS_FAST}" | ||
| 6 | |||
diff --git a/meta/recipes-core/images/core-image-ptest.bb b/meta/recipes-core/images/core-image-ptest.bb deleted file mode 100644 index 017f05f81b..0000000000 --- a/meta/recipes-core/images/core-image-ptest.bb +++ /dev/null | |||
| @@ -1,50 +0,0 @@ | |||
| 1 | inherit features_check | ||
| 2 | REQUIRED_DISTRO_FEATURES = "ptest" | ||
| 3 | |||
| 4 | require core-image-minimal.bb | ||
| 5 | require conf/distro/include/ptest-packagelists.inc | ||
| 6 | |||
| 7 | DESCRIPTION += "Also including the ${MCNAME} ptest package." | ||
| 8 | SUMMARY ?= "${MCNAME} ptest image." | ||
| 9 | HOMEPAGE = "https://www.yoctoproject.org/" | ||
| 10 | |||
| 11 | PTESTS = "${PTESTS_SLOW} ${PTESTS_FAST}" | ||
| 12 | |||
| 13 | IMAGE_INSTALL:append = " ${MCNAME}-ptest openssh" | ||
| 14 | |||
| 15 | BBCLASSEXTEND = "${@' '.join(['mcextend:'+x for x in d.getVar('PTESTS').split()])}" | ||
| 16 | |||
| 17 | # The image can sufficiently large (~1.8GB) that we need to be careful that it fits in a live | ||
| 18 | # image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the | ||
| 19 | # box) and explicitly add up to 1500MB. | ||
| 20 | # strace-ptest in particular needs more than 500MB | ||
| 21 | IMAGE_OVERHEAD_FACTOR = "1.0" | ||
| 22 | IMAGE_ROOTFS_EXTRA_SPACE = "324288" | ||
| 23 | IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-mdadm = "1524288" | ||
| 24 | IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-strace = "1524288" | ||
| 25 | IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-lttng-tools = "1524288" | ||
| 26 | IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-util-linux = "1524288" | ||
| 27 | |||
| 28 | # tar-ptest in particular needs more space | ||
| 29 | IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-tar = "1524288" | ||
| 30 | |||
| 31 | # python3-numpy-ptest requires a lot of extra space | ||
| 32 | IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-python3-numpy = "3048576" | ||
| 33 | |||
| 34 | # ptests need more memory than standard to avoid the OOM killer | ||
| 35 | QB_MEM = "-m 1024" | ||
| 36 | QB_MEM:virtclass-mcextend-lttng-tools = "-m 4096" | ||
| 37 | QB_MEM:virtclass-mcextend-python3 = "-m 2048" | ||
| 38 | QB_MEM:virtclass-mcextend-python3-cryptography = "-m 5100" | ||
| 39 | QB_MEM:virtclass-mcextend-python3-numpy = "-m 4096" | ||
| 40 | QB_MEM:virtclass-mcextend-tcl = "-m 5100" | ||
| 41 | |||
| 42 | TEST_SUITES = "ping ssh parselogs ptest" | ||
| 43 | |||
| 44 | # Sadly at the moment the full set of ptests is not robust enough and sporadically fails in random places | ||
| 45 | PTEST_EXPECT_FAILURE = "1" | ||
| 46 | |||
| 47 | python () { | ||
| 48 | if not d.getVar("MCNAME"): | ||
| 49 | raise bb.parse.SkipRecipe("No class extension set") | ||
| 50 | } | ||
diff --git a/meta/recipes-core/images/core-image-tiny-initramfs.bb b/meta/recipes-core/images/core-image-tiny-initramfs.bb deleted file mode 100644 index c2aa68c788..0000000000 --- a/meta/recipes-core/images/core-image-tiny-initramfs.bb +++ /dev/null | |||
| @@ -1,47 +0,0 @@ | |||
| 1 | # Simple initramfs image artifact generation for tiny images. | ||
| 2 | SUMMARY = "Tiny image capable of booting a device." | ||
| 3 | DESCRIPTION = "Tiny image capable of booting a device. The kernel includes \ | ||
| 4 | the Minimal RAM-based Initial Root Filesystem (initramfs), which finds the \ | ||
| 5 | first 'init' program more efficiently. core-image-tiny-initramfs doesn't \ | ||
| 6 | actually generate an image but rather generates boot and rootfs artifacts \ | ||
| 7 | that can subsequently be picked up by external image generation tools such as wic." | ||
| 8 | |||
| 9 | # if distro does not override VIRTUAL-RUNTIME_dev_manager and default in different, busybox is compiled without mdev support | ||
| 10 | # however this keeps the image small by not installing heavy-weight manager and in initramfs it may not even be necessary | ||
| 11 | # override in distro if needed | ||
| 12 | VIRTUAL-RUNTIME_dev_manager ?= "busybox-mdev" | ||
| 13 | |||
| 14 | PACKAGE_INSTALL = "initramfs-live-boot-tiny packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} ${VIRTUAL-RUNTIME_dev_manager} base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" | ||
| 15 | |||
| 16 | # Do not pollute the initrd image with rootfs features | ||
| 17 | IMAGE_FEATURES = "" | ||
| 18 | |||
| 19 | IMAGE_NAME_SUFFIX ?= "" | ||
| 20 | IMAGE_LINGUAS = "" | ||
| 21 | |||
| 22 | LICENSE = "MIT" | ||
| 23 | |||
| 24 | # don't actually generate an image, just the artifacts needed for one | ||
| 25 | IMAGE_FSTYPES = "${INITRAMFS_FSTYPES}" | ||
| 26 | |||
| 27 | inherit core-image | ||
| 28 | |||
| 29 | IMAGE_ROOTFS_SIZE = "8192" | ||
| 30 | IMAGE_ROOTFS_EXTRA_SPACE = "0" | ||
| 31 | |||
| 32 | # Use the same restriction as initramfs-live-install | ||
| 33 | COMPATIBLE_HOST = "(i.86|x86_64|aarch64|arm).*-linux" | ||
| 34 | |||
| 35 | python tinyinitrd () { | ||
| 36 | # Modify our init file so the user knows we drop to shell prompt on purpose | ||
| 37 | newinit = None | ||
| 38 | with open(d.expand('${IMAGE_ROOTFS}/init'), 'r') as init: | ||
| 39 | newinit = init.read() | ||
| 40 | newinit = newinit.replace('Cannot find $ROOT_IMAGE file in /run/media/* , dropping to a shell ', 'Poky Tiny Reference Distribution:') | ||
| 41 | with open(d.expand('${IMAGE_ROOTFS}/init'), 'w') as init: | ||
| 42 | init.write(newinit) | ||
| 43 | } | ||
| 44 | |||
| 45 | IMAGE_PREPROCESS_COMMAND += "tinyinitrd" | ||
| 46 | |||
| 47 | QB_KERNEL_CMDLINE_APPEND += "debugshell=3 init=/bin/busybox sh init" | ||
