diff mbox series

[RFC,v2,2/2] default-registry: consolidate OE and Poky release configs

Message ID 20260618-bb-setup-source-choices-integrated-tests-v2-2-66b3b438f073@toradex.com
State New
Headers show
Series bitbake-setup: add source choices | expand

Commit Message

Ernest Van Hoecke June 18, 2026, 6:04 p.m. UTC
From: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>

Replace the release-specific OE nodistro and Poky registry files with
one configuration file for each project. The new files use
source-choices to select the master, whinlatter or wrynose source set.

This keeps the shared setup configuration in one place while preserving
the different source revisions and expiry metadata for each release.

Signed-off-by: Ernest Van Hoecke <ernest.vanhoecke@toradex.com>
---
 .../configurations/oe-nodistro-master.conf.json    |  47 ------
 .../oe-nodistro-whinlatter.conf.json               |  56 -------
 .../configurations/oe-nodistro-wrynose.conf.json   |  48 ------
 .../configurations/oe-nodistro.conf.json           | 117 +++++++++++++++
 .../configurations/poky-master.conf.json           |  73 ----------
 .../configurations/poky-whinlatter.conf.json       |  80 ----------
 .../configurations/poky-wrynose.conf.json          |  74 ----------
 default-registry/configurations/poky.conf.json     | 161 +++++++++++++++++++++
 8 files changed, 278 insertions(+), 378 deletions(-)

Comments

Alexander Kanavin June 19, 2026, 11:12 a.m. UTC | #1
On Thu, 18 Jun 2026 at 20:04, Ernest Van Hoecke
<ernestvanhoecke@gmail.com> wrote:
>  .../configurations/oe-nodistro-master.conf.json    |  47 ------
>  .../oe-nodistro-whinlatter.conf.json               |  56 -------
>  .../configurations/oe-nodistro-wrynose.conf.json   |  48 ------
>  .../configurations/oe-nodistro.conf.json           | 117 +++++++++++++++
>  .../configurations/poky-master.conf.json           |  73 ----------
>  .../configurations/poky-whinlatter.conf.json       |  80 ----------
>  .../configurations/poky-wrynose.conf.json          |  74 ----------
>  default-registry/configurations/poky.conf.json     | 161 +++++++++++++++++++++

Thanks! It isn't yet clear whether the configurations in the default
bitbake registry will be replaced like this, or the new
configutrations will co-exist (for a while at least). A potential
issue is that people have existing checkouts based on the existing
configurations, and they will not appreciate no longer being able to
update them. We'll probably be able to get away with it for master,
but the release configs (whinlatter, wrynose) should be kept. This can
be decided later, this commit is intended to give an example.

Anyway! One thing we should check is: how well does 'bitbake-setup
status' (and 'update') handle the situation when a configuration file
has been removed from the registry, http location, or on local disk?
Does it print an unhelpful traceback and fail horribly? Can you check?
It would be good to ensure this is handled gracefully: e.g. no
tracebacks, but a nice note to the user that the operation cannot
proceed as the latest version of the config cannot anymore be
obtained, and a pointer to where it's supposed to be.

Other than this and the comments I made elsewhere, I think you can
start working on tests and docs, and doing this will take the patchset
out of RFC and into a real submission.

Alex
diff mbox series

Patch

diff --git a/default-registry/configurations/oe-nodistro-master.conf.json b/default-registry/configurations/oe-nodistro-master.conf.json
deleted file mode 100644
index 5aa148d4217e..000000000000
--- a/default-registry/configurations/oe-nodistro-master.conf.json
+++ /dev/null
@@ -1,47 +0,0 @@ 
-{
-    "description": "OpenEmbedded - 'nodistro' basic configuration",
-    "sources": {
-        "bitbake": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/bitbake",
-                "branch": "master",
-                "rev": "master"
-            }
-        },
-        "openembedded-core": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/openembedded-core",
-                "branch": "master",
-                "rev": "master"
-            }
-        },
-        "yocto-docs": {
-            "git-remote": {
-                "uri": "https://git.yoctoproject.org/yocto-docs",
-                "branch": "master",
-                "rev": "master"
-            }
-        }
-    },
-    "bitbake-setup": {
-        "configurations": [
-        {
-            "name": "nodistro",
-            "description": "OpenEmbedded 'nodistro'",
-            "setup-dir-name": "oe-nodistro-master",
-            "bb-layers": ["openembedded-core/meta"],
-            "oe-fragments-one-of": {
-                "machine": {
-                    "description": "Target machines",
-                    "options" : [
-                        { "name": "machine/qemux86-64", "description": "x86-64 system on QEMU" },
-                        { "name": "machine/qemuarm64", "description": "ARMv8 system on QEMU" },
-                        { "name": "machine/qemuriscv64", "description": "RISC-V system on QEMU" }
-                    ]
-                }
-            }
-        }
-        ]
-    },
-    "version": "1.0"
-}
diff --git a/default-registry/configurations/oe-nodistro-whinlatter.conf.json b/default-registry/configurations/oe-nodistro-whinlatter.conf.json
deleted file mode 100644
index 7b183ae1c438..000000000000
--- a/default-registry/configurations/oe-nodistro-whinlatter.conf.json
+++ /dev/null
@@ -1,56 +0,0 @@ 
-{
-    "description": "OpenEmbedded - 'nodistro' basic configuration, release 5.3 'whinlatter'",
-    "expires": "2026-05-31",
-    "sources": {
-        "bitbake": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.openembedded.org/bitbake"
-                    }
-                },
-                "branch": "2.16",
-                "rev": "2.16"
-            }
-        },
-        "openembedded-core": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.openembedded.org/openembedded-core"
-                    }
-                },
-                "branch": "whinlatter",
-                "rev": "whinlatter"
-            }
-        },
-        "yocto-docs": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.yoctoproject.org/yocto-docs"
-                    }
-                },
-                "branch": "whinlatter",
-                "rev": "whinlatter"
-            }
-        }
-    },
-    "bitbake-setup": {
-        "configurations": [
-        {
-            "name": "nodistro",
-            "description": "OpenEmbedded 'nodistro'",
-            "setup-dir-name": "oe-nodistro-whinlatter",
-            "bb-layers": ["openembedded-core/meta"],
-            "oe-fragments-one-of": {
-                "machine": {
-                    "description": "Target machines",
-                    "options" : ["machine/qemux86-64", "machine/qemuarm64", "machine/qemuriscv64"]
-                }
-            }
-        }
-        ]
-    },
-    "version": "1.0"
-}
diff --git a/default-registry/configurations/oe-nodistro-wrynose.conf.json b/default-registry/configurations/oe-nodistro-wrynose.conf.json
deleted file mode 100644
index 278ce4dd0296..000000000000
--- a/default-registry/configurations/oe-nodistro-wrynose.conf.json
+++ /dev/null
@@ -1,48 +0,0 @@ 
-{
-    "description": "OpenEmbedded - 'nodistro' basic configuration, release 6.0 'wrynose'",
-    "expires": "2030-05-31",
-    "sources": {
-        "bitbake": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/bitbake",
-                "branch": "2.18",
-                "rev": "2.18"
-            }
-        },
-        "openembedded-core": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/openembedded-core",
-                "branch": "wrynose",
-                "rev": "wrynose"
-            }
-        },
-        "yocto-docs": {
-            "git-remote": {
-                "uri": "https://git.yoctoproject.org/yocto-docs",
-                "branch": "wrynose",
-                "rev": "wrynose"
-            }
-        }
-    },
-    "bitbake-setup": {
-        "configurations": [
-        {
-            "name": "nodistro",
-            "description": "OpenEmbedded 'nodistro'",
-            "setup-dir-name": "oe-nodistro-wrynose",
-            "bb-layers": ["openembedded-core/meta"],
-            "oe-fragments-one-of": {
-                "machine": {
-                    "description": "Target machines",
-                    "options" : [
-                        { "name": "machine/qemux86-64", "description": "x86-64 system on QEMU" },
-                        { "name": "machine/qemuarm64", "description": "ARMv8 system on QEMU" },
-                        { "name": "machine/qemuriscv64", "description": "RISC-V system on QEMU" }
-                    ]
-                }
-            }
-        }
-        ]
-    },
-    "version": "1.0"
-}
diff --git a/default-registry/configurations/oe-nodistro.conf.json b/default-registry/configurations/oe-nodistro.conf.json
new file mode 100644
index 000000000000..02554cbf10aa
--- /dev/null
+++ b/default-registry/configurations/oe-nodistro.conf.json
@@ -0,0 +1,117 @@ 
+{
+    "description": "OpenEmbedded - 'nodistro' basic configuration",
+    "source-choices": {
+        "master": {
+            "description": "OpenEmbedded 'nodistro' development branch",
+            "sources": {
+                "bitbake": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/bitbake",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                },
+                "openembedded-core": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/openembedded-core",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                },
+                "yocto-docs": {
+                    "git-remote": {
+                        "uri": "https://git.yoctoproject.org/yocto-docs",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                }
+            }
+        },
+        "whinlatter": {
+            "description": "OpenEmbedded 'nodistro', release 5.3 'whinlatter'",
+            "expires": "2026-05-31",
+            "sources": {
+                "bitbake": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.openembedded.org/bitbake"
+                            }
+                        },
+                        "branch": "2.16",
+                        "rev": "2.16"
+                    }
+                },
+                "openembedded-core": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.openembedded.org/openembedded-core"
+                            }
+                        },
+                        "branch": "whinlatter",
+                        "rev": "whinlatter"
+                    }
+                },
+                "yocto-docs": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.yoctoproject.org/yocto-docs"
+                            }
+                        },
+                        "branch": "whinlatter",
+                        "rev": "whinlatter"
+                    }
+                }
+            }
+        },
+        "wrynose": {
+            "description": "OpenEmbedded 'nodistro', release 6.0 'wrynose'",
+            "expires": "2030-05-31",
+            "sources": {
+                "bitbake": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/bitbake",
+                        "branch": "2.18",
+                        "rev": "2.18"
+                    }
+                },
+                "openembedded-core": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/openembedded-core",
+                        "branch": "wrynose",
+                        "rev": "wrynose"
+                    }
+                },
+                "yocto-docs": {
+                    "git-remote": {
+                        "uri": "https://git.yoctoproject.org/yocto-docs",
+                        "branch": "wrynose",
+                        "rev": "wrynose"
+                    }
+                }
+            }
+        }
+    },
+    "bitbake-setup": {
+        "configurations": [
+        {
+            "name": "nodistro",
+            "description": "OpenEmbedded 'nodistro'",
+            "bb-layers": ["openembedded-core/meta"],
+            "oe-fragments-one-of": {
+                "machine": {
+                    "description": "Target machines",
+                    "options" : [
+                        { "name": "machine/qemux86-64", "description": "x86-64 system on QEMU" },
+                        { "name": "machine/qemuarm64", "description": "ARMv8 system on QEMU" },
+                        { "name": "machine/qemuriscv64", "description": "RISC-V system on QEMU" }
+                    ]
+                }
+            }
+        }
+        ]
+    },
+    "version": "1.0"
+}
diff --git a/default-registry/configurations/poky-master.conf.json b/default-registry/configurations/poky-master.conf.json
deleted file mode 100644
index 58d379648a31..000000000000
--- a/default-registry/configurations/poky-master.conf.json
+++ /dev/null
@@ -1,73 +0,0 @@ 
-{
-    "description": "Poky - The Yocto Project testing distribution configurations and hardware test platforms",
-    "sources": {
-        "bitbake": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/bitbake",
-                "branch": "master",
-                "rev": "master"
-            }
-        },
-        "openembedded-core": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/openembedded-core",
-                "branch": "master",
-                "rev": "master"
-            }
-        },
-        "meta-yocto": {
-            "git-remote": {
-                "uri": "https://git.yoctoproject.org/meta-yocto",
-                "branch": "master",
-                "rev": "master"
-            }
-        },
-        "yocto-docs": {
-            "git-remote": {
-                "uri": "https://git.yoctoproject.org/yocto-docs",
-                "branch": "master",
-                "rev": "master"
-            }
-        }
-    },
-    "bitbake-setup": {
-        "configurations": [
-        {
-            "bb-layers": ["openembedded-core/meta","meta-yocto/meta-yocto-bsp","meta-yocto/meta-poky"],
-            "setup-dir-name": "$distro-master",
-            "oe-fragments-one-of": {
-                "machine": {
-                    "description": "Target machines",
-                    "options" : [
-                        { "name": "machine/qemux86-64", "description": "x86-64 system on QEMU" },
-                        { "name": "machine/qemuarm64", "description": "ARMv8 system on QEMU" },
-                        { "name": "machine/qemuriscv64", "description": "RISC-V system on QEMU" },
-                        { "name": "machine/genericarm64", "description": "Arm64 SystemReady IR/ES platforms" },
-                        { "name": "machine/genericx86-64", "description": "x86_64 (64-bit) PCs and servers" }
-                    ]
-                },
-                "distro": {
-                    "description": "Target distributions",
-                    "options" : [
-                        { "name": "distro/poky", "description": "Yocto Project Reference Distro" },
-                        { "name": "distro/poky-altcfg", "description": "Poky alternative with systemd as init manager" },
-                        { "name": "distro/poky-tiny", "description": "Poky alternative optimized for size" }
-                    ]
-                }
-            },
-            "configurations": [
-            {
-                "name": "poky",
-                "description": "Poky - The Yocto Project testing distribution"
-            },
-            {
-                "name": "poky-with-sstate",
-                "description": "Poky - The Yocto Project testing distribution with internet sstate acceleration. Use with caution as it requires a completely robust local network with sufficient bandwidth.",
-                "oe-fragments": ["core/yocto/sstate-mirror-cdn"]
-            }
-            ]
-        }
-        ]
-    },
-    "version": "1.0"
-}
diff --git a/default-registry/configurations/poky-whinlatter.conf.json b/default-registry/configurations/poky-whinlatter.conf.json
deleted file mode 100644
index 4827ebe11483..000000000000
--- a/default-registry/configurations/poky-whinlatter.conf.json
+++ /dev/null
@@ -1,80 +0,0 @@ 
-{
-    "description": "Poky - The Yocto Project testing distribution configurations and hardware test platforms, release 5.3 'whinlatter'",
-    "expires": "2026-05-31",
-    "sources": {
-        "bitbake": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.openembedded.org/bitbake"
-                    }
-                },
-                "branch": "2.16",
-                "rev": "2.16"
-            }
-        },
-        "openembedded-core": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.openembedded.org/openembedded-core"
-                    }
-                },
-                "branch": "whinlatter",
-                "rev": "whinlatter"
-            }
-        },
-        "meta-yocto": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.yoctoproject.org/meta-yocto"
-                    }
-                },
-                "branch": "whinlatter",
-                "rev": "whinlatter"
-            }
-        },
-        "yocto-docs": {
-            "git-remote": {
-                "remotes": {
-                    "origin": {
-                        "uri": "https://git.yoctoproject.org/yocto-docs"
-                    }
-                },
-                "branch": "whinlatter",
-                "rev": "whinlatter"
-            }
-        }
-    },
-    "bitbake-setup": {
-        "configurations": [
-        {
-            "bb-layers": ["openembedded-core/meta","meta-yocto/meta-yocto-bsp","meta-yocto/meta-poky"],
-            "setup-dir-name": "$distro-whinlatter",
-            "oe-fragments-one-of": {
-                "machine": {
-                    "description": "Target machines",
-                    "options" : ["machine/qemux86-64", "machine/qemuarm64", "machine/qemuriscv64", "machine/genericarm64", "machine/genericx86-64"]
-                },
-                "distro": {
-                    "description": "Target Distributions",
-                    "options" : ["distro/poky", "distro/poky-altcfg", "distro/poky-tiny"]
-                }
-            },
-            "configurations": [
-            {
-                "name": "poky",
-                "description": "Poky - The Yocto Project testing distribution"
-            },
-            {
-                "name": "poky-with-sstate",
-                "description": "Poky - The Yocto Project testing distribution with internet sstate acceleration. Use with caution as it requires a completely robust local network with sufficient bandwidth.",
-                "oe-fragments": ["core/yocto/sstate-mirror-cdn"]
-            }
-            ]
-        }
-        ]
-    },
-    "version": "1.0"
-}
diff --git a/default-registry/configurations/poky-wrynose.conf.json b/default-registry/configurations/poky-wrynose.conf.json
deleted file mode 100644
index d27928437735..000000000000
--- a/default-registry/configurations/poky-wrynose.conf.json
+++ /dev/null
@@ -1,74 +0,0 @@ 
-{
-    "description": "Poky - The Yocto Project testing distribution configurations and hardware test platforms, release 6.0 'wrynose'",
-    "expires": "2030-05-31",
-    "sources": {
-        "bitbake": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/bitbake",
-                "branch": "2.18",
-                "rev": "2.18"
-            }
-        },
-        "openembedded-core": {
-            "git-remote": {
-                "uri": "https://git.openembedded.org/openembedded-core",
-                "branch": "wrynose",
-                "rev": "wrynose"
-            }
-        },
-        "meta-yocto": {
-            "git-remote": {
-                "uri": "https://git.yoctoproject.org/meta-yocto",
-                "branch": "wrynose",
-                "rev": "wrynose"
-            }
-        },
-        "yocto-docs": {
-            "git-remote": {
-                "uri": "https://git.yoctoproject.org/yocto-docs",
-                "branch": "wrynose",
-                "rev": "wrynose"
-            }
-        }
-    },
-    "bitbake-setup": {
-        "configurations": [
-        {
-            "bb-layers": ["openembedded-core/meta","meta-yocto/meta-yocto-bsp","meta-yocto/meta-poky"],
-            "setup-dir-name": "$distro-wrynose",
-            "oe-fragments-one-of": {
-                "machine": {
-                    "description": "Target machines",
-                    "options" : [
-                        { "name": "machine/qemux86-64", "description": "x86-64 system on QEMU" },
-                        { "name": "machine/qemuarm64", "description": "ARMv8 system on QEMU" },
-                        { "name": "machine/qemuriscv64", "description": "RISC-V system on QEMU" },
-                        { "name": "machine/genericarm64", "description": "Arm64 SystemReady IR/ES platforms" },
-                        { "name": "machine/genericx86-64", "description": "x86_64 (64-bit) PCs and servers" }
-                    ]
-                },
-                "distro": {
-                    "description": "Target distributions",
-                    "options" : [
-                        { "name": "distro/poky", "description": "Yocto Project Reference Distro" },
-                        { "name": "distro/poky-altcfg", "description": "Poky alternative with systemd as init manager" },
-                        { "name": "distro/poky-tiny", "description": "Poky alternative optimized for size" }
-                    ]
-                }
-            },
-            "configurations": [
-            {
-                "name": "poky",
-                "description": "Poky - The Yocto Project testing distribution"
-            },
-            {
-                "name": "poky-with-sstate",
-                "description": "Poky - The Yocto Project testing distribution with internet sstate acceleration. Use with caution as it requires a completely robust local network with sufficient bandwidth.",
-                "oe-fragments": ["core/yocto/sstate-mirror-cdn"]
-            }
-            ]
-        }
-        ]
-    },
-    "version": "1.0"
-}
diff --git a/default-registry/configurations/poky.conf.json b/default-registry/configurations/poky.conf.json
new file mode 100644
index 000000000000..ea4c7a0660e7
--- /dev/null
+++ b/default-registry/configurations/poky.conf.json
@@ -0,0 +1,161 @@ 
+{
+    "description": "Poky - The Yocto Project testing distribution configurations and hardware test platforms",
+    "source-choices": {
+        "master": {
+            "description": "Poky development branch",
+            "sources": {
+                "bitbake": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/bitbake",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                },
+                "openembedded-core": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/openembedded-core",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                },
+                "meta-yocto": {
+                    "git-remote": {
+                        "uri": "https://git.yoctoproject.org/meta-yocto",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                },
+                "yocto-docs": {
+                    "git-remote": {
+                        "uri": "https://git.yoctoproject.org/yocto-docs",
+                        "branch": "master",
+                        "rev": "master"
+                    }
+                }
+            }
+        },
+        "whinlatter": {
+            "description": "Poky, release 5.3 'whinlatter'",
+            "expires": "2026-05-31",
+            "sources": {
+                "bitbake": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.openembedded.org/bitbake"
+                            }
+                        },
+                        "branch": "2.16",
+                        "rev": "2.16"
+                    }
+                },
+                "openembedded-core": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.openembedded.org/openembedded-core"
+                            }
+                        },
+                        "branch": "whinlatter",
+                        "rev": "whinlatter"
+                    }
+                },
+                "meta-yocto": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.yoctoproject.org/meta-yocto"
+                            }
+                        },
+                        "branch": "whinlatter",
+                        "rev": "whinlatter"
+                    }
+                },
+                "yocto-docs": {
+                    "git-remote": {
+                        "remotes": {
+                            "origin": {
+                                "uri": "https://git.yoctoproject.org/yocto-docs"
+                            }
+                        },
+                        "branch": "whinlatter",
+                        "rev": "whinlatter"
+                    }
+                }
+            }
+        },
+        "wrynose": {
+            "description": "Poky, release 6.0 'wrynose'",
+            "expires": "2030-05-31",
+            "sources": {
+                "bitbake": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/bitbake",
+                        "branch": "2.18",
+                        "rev": "2.18"
+                    }
+                },
+                "openembedded-core": {
+                    "git-remote": {
+                        "uri": "https://git.openembedded.org/openembedded-core",
+                        "branch": "wrynose",
+                        "rev": "wrynose"
+                    }
+                },
+                "meta-yocto": {
+                    "git-remote": {
+                        "uri": "https://git.yoctoproject.org/meta-yocto",
+                        "branch": "wrynose",
+                        "rev": "wrynose"
+                    }
+                },
+                "yocto-docs": {
+                    "git-remote": {
+                        "uri": "https://git.yoctoproject.org/yocto-docs",
+                        "branch": "wrynose",
+                        "rev": "wrynose"
+                    }
+                }
+            }
+        }
+    },
+    "bitbake-setup": {
+        "configurations": [
+        {
+            "bb-layers": ["openembedded-core/meta","meta-yocto/meta-yocto-bsp","meta-yocto/meta-poky"],
+            "oe-fragments-one-of": {
+                "machine": {
+                    "description": "Target machines",
+                    "options" : [
+                        { "name": "machine/qemux86-64", "description": "x86-64 system on QEMU" },
+                        { "name": "machine/qemuarm64", "description": "ARMv8 system on QEMU" },
+                        { "name": "machine/qemuriscv64", "description": "RISC-V system on QEMU" },
+                        { "name": "machine/genericarm64", "description": "Arm64 SystemReady IR/ES platforms" },
+                        { "name": "machine/genericx86-64", "description": "x86_64 (64-bit) PCs and servers" }
+                    ]
+                },
+                "distro": {
+                    "description": "Target distributions",
+                    "options" : [
+                        { "name": "distro/poky", "description": "Yocto Project Reference Distro" },
+                        { "name": "distro/poky-altcfg", "description": "Poky alternative with systemd as init manager" },
+                        { "name": "distro/poky-tiny", "description": "Poky alternative optimized for size" }
+                    ]
+                }
+            },
+            "configurations": [
+            {
+                "name": "poky",
+                "description": "Poky - The Yocto Project testing distribution"
+            },
+            {
+                "name": "poky-with-sstate",
+                "description": "Poky - The Yocto Project testing distribution with internet sstate acceleration. Use with caution as it requires a completely robust local network with sufficient bandwidth.",
+                "oe-fragments": ["core/yocto/sstate-mirror-cdn"]
+            }
+            ]
+        }
+        ]
+    },
+    "version": "1.0"
+}