{"id":46775244,"url":"https://github.com/aws4embeddedlinux/meta-aws-demos","last_synced_at":"2026-03-09T23:42:53.476Z","repository":{"id":43092510,"uuid":"254514917","full_name":"aws4embeddedlinux/meta-aws-demos","owner":"aws4embeddedlinux","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-05T14:17:20.000Z","size":738,"stargazers_count":24,"open_issues_count":13,"forks_count":24,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-03-05T17:51:48.657Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"BitBake","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aws4embeddedlinux.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-04-10T01:22:38.000Z","updated_at":"2026-02-13T10:41:27.000Z","dependencies_parsed_at":"2022-08-19T14:40:47.676Z","dependency_job_id":"833e1e37-2730-48b0-9895-605f411b704a","html_url":"https://github.com/aws4embeddedlinux/meta-aws-demos","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":"amazon-archives/__template_MIT-0","purl":"pkg:github/aws4embeddedlinux/meta-aws-demos","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fmeta-aws-demos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fmeta-aws-demos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fmeta-aws-demos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fmeta-aws-demos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aws4embeddedlinux","download_url":"https://codeload.github.com/aws4embeddedlinux/meta-aws-demos/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws4embeddedlinux%2Fmeta-aws-demos/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30316775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T20:05:46.299Z","status":"ssl_error","status_checked_at":"2026-03-09T19:57:04.425Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-09T23:42:52.772Z","updated_at":"2026-03-09T23:42:53.462Z","avatar_url":"https://github.com/aws4embeddedlinux.png","language":"BitBake","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Demonstrations for the **[meta-aws](https://github.com/aws/meta-aws)** project\n\n[meta-aws](https://github.com/aws/meta-aws) is a [Yocto\nProject](https://www.yoctoproject.org/) Bitbake Metadata Layer. It\naccelerates building [Amazon Web Services](https://aws.amazon.com)\n(AWS) software you can install to [Embedded\nLinux](https://elinux.org/Main_Page). You can use this to build IoT\nsolutions on AWS.\n\nIn this repository, you will find\n[meta-aws](https://github.com/aws/meta-aws) demonstrations.  These\ndemos are based on both Poky (the Yocto Project reference implementation)\nand real hardware.  Many times, the hardware will be\nrepresentative of actual uses of hardware listed in the [AWS Device\nCatalog](https://devices.amazonaws.com).\n\nThe number of demonstrations will increase over time and your\ncontributions are very welcome!\n\n## Demonstration environments\n\nThe DEMOs consist of a combination of a DEVICE, which represent a hardware and an IMAGE showcasing a use-case.\n\n## Device\n\nSelect your desired target environment.  These are listed below in\nalphabetical order for ease of selection, no preference should be inferred.\n\n- [`aws-ec2-arm64` / AWS EC2](meta-aws-demos/conf/devices/aws-ec2-arm64/README.md)\n- [`aws-ec2-x86-64` / AWS EC2](meta-aws-demos/conf/devices/aws-ec2-x86-64/README.md)\n- [`imx8m` / NXP](meta-aws-demos/conf/devices/imx8m/README.md)\n- [`phyboard-electra-am64xx-2` / PHYTEC](meta-aws-demos/conf/devices/phyboard-electra-am64xx-2/README.md)\n- [`qemuarm`](meta-aws-demos/conf/devices/qemuarm/README.md)\n- [`qemuarm64`](meta-aws-demos/conf/devices/qemuarm64/README.md)\n- [`qemux86-64`](meta-aws-demos/conf/devices/qemux86-64/README.md)\n- [`raspberrypi-64` / Raspberry Pi Foundation](meta-aws-demos/conf/devices/raspberrypi-64/README.md)\n- [`raspberrypi4-tpm` / Raspberry Pi Foundation](meta-aws-demos/conf/devices/raspberrypi4-tpm/README.md)\n- [`raspberrypi2` / Raspberry Pi Foundation](meta-aws-demos/conf/devices/raspberrypi2/README.md)\n- [`raspberrypi0-wifi` / Raspberry Pi Foundation](meta-aws-demos/conf/devices/raspberrypi0-wifi/README.md)\n- [`rockchip-rv1106`](meta-aws-demos/conf/devices/rockchip-rv1106/README.md)\n- [`stm32mp13-disco` / STM](meta-aws-demos/conf/devices/stm32mp13-disco/README.md)\n- [`ti-am572x-idk` / Texas Instruments](meta-aws-demos/conf/devices/ti-am572x-idk/README.md)\n- [`xilinx-zcu104-zynqmp` / Xilinx](meta-aws-demos/conf/devices/xilinx-zcu104-zynqmp/README.md)\n\n## Images\n\nGenerally you can build all images for all \"Devices\", but some combinations do not work or do not make sense!\n\n- [aws-demo-image](meta-aws-demos/recipes-core/images/aws-demo-image/README.md)\n- [aws-iot-device-client-demo-image](meta-aws-demos/recipes-core/images/aws-iot-device-client-demo-image/README.md)\n- [aws-iot-fleetwise-test-image-agl](meta-aws-demos/recipes-core/images/aws-iot-fleetwise-test-image-agl/README.md)\n- [aws-iot-fleetwise-test-image](meta-aws-demos/recipes-core/images/aws-iot-fleetwise-test-image/README.md)\n- [aws-iot-greengrass-demo-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-demo-image/README.md)\n- [aws-iot-greengrass-demo-simple-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-demo-simple-image/README.md)\n- [aws-iot-greengrass-lite-container-demo-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-container-demo-image/README.md)\n- [aws-iot-greengrass-lite-demo-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-demo-image/README.md)\n- [aws-iot-greengrass-lite-demo-ec2-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-demo-ec2-image/README.md)\n- [aws-iot-greengrass-lite-demo-simple-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-demo-simple-image/README.md)\n- [aws-iot-greengrass-lite-demo-simple-image-tpm](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-demo-simple-image-tpm/README.md)\n- [aws-iot-greengrass-lite-demo-swupdate-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-demo-swupdate-image/README.md)\n- [aws-iot-greengrass-lite-demo-tiny-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-demo-tiny-image/README.md)\n- [aws-iot-greengrass-lite-webrtc-demo-image](meta-aws-demos/recipes-core/images/aws-iot-greengrass-lite-webrtc-demo-image/README.md)\n- [aws-webrtc-demo-image](meta-aws-demos/recipes-core/images/aws-webrtc-demo-image/README.md)\n\n\u003e [!IMPORTANT]\n\u003e Be careful some of the images require additional local.conf entries, those config.conf files are located in the respective image.\n\u003e They are automatically included if the correct environment variables (IMAGE + DEVICE) are set!\n\n## Quick Start\n\nTo try out this project in QEMU (default device is `qemuarm64`), run the following commands:\n\n```bash\ngit submodule update --init --recursive\n. init-build-env\nexport IMAGE=aws-demo-image\nbitbake $IMAGE\nrunqemu slirp nographic\n```\n\n## Build requirements\n\nPlease also consider these build host [requirements](https://docs.yoctoproject.org/ref-manual/system-requirements.html#required-packages-for-the-build-host).\n-\u003e At least 100GB of free hard disk space is required!\n\n### Ubuntu 24.04\n\n- `sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0`  is needed for bitbake\n\n## Setup\n\nThis repository uses submodules and a simple wrapper script to set the default\n`TEMPLATECONF` that allows users to select the device they want to build. The\nfirst step is to clone down the submodules:\n\n```bash\ngit submodule update --init --recursive\n```\n\n## Building\n\nNext, initialize the build environment, and optionally specify the build directory:\n\n```bash\n. init-build-env [BUILDDIR]\n```\n\nFinally, the images can be built - details in linked readme for each DEMO. Default device is `qemuarm64`:\n\n```bash\nexport DEVICE=[DEVICE]\nexport IMAGE=[IMAGE]\nbitbake $IMAGE\n```\n\nTo build for a different device, set the `DEVICE` (see [here](#Demonstration-environments)) and `IMAGE` environment variable,\nlike this:\n\n```bash\nexport DEVICE=aws-c2-arm64\nexport IMAGE=aws-demo-image\nbitbake $IMAGE\n```\n\nFor a list of all possible devices, see `meta-aws-demos/conf/devices`.\n\nThe `init-build-env` script adds a helper function called `get_devices` which\nwill list all devices that can be configured. This can be used to build all devices with:\n\n```bash\nfor d in $(get_devices); do for i in $(get_images); do DEVICE=$d IMAGE=$i \u0026\u0026 echo $DEVICE \u0026\u0026 echo $IMAGE \u0026\u0026 bitbake $i; done; done\n```\n\n## Adding new images, devices\n\nNew platforms can be added by adding a new directory under\n`meta-aws-demos/conf/devices`. This directory should contain 2 files:\n\n`layers.conf`: This is the file that will be required in `bblayers.conf` when\nthe device is selected\n\n`config.conf`: This is the file that will be required in `local.conf` when the\ndevice is selected\n\nNew images can be added by adding a new directory under\n`meta-aws-demos/recipes-core/images/`. This directory can contain 2 files:\n\n`layers.conf`: This is the file that will be optionally included in `bblayers.conf` when\nthe image is selected\n\n`config.conf`: This is the file that will be optionally included in `local.conf` when the\nimage is selected\n\n## Updating submodules to latest version of specified branch is easy.\n\nThe following will update upstream submodule changes recursively:\n```bash\ngit submodule update --remote --init --recursive\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws4embeddedlinux%2Fmeta-aws-demos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faws4embeddedlinux%2Fmeta-aws-demos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws4embeddedlinux%2Fmeta-aws-demos/lists"}