Modernize meta-vscode: bump to 1.120, fix per-arch, add multi-release CI#1
Merged
Conversation
…ERSION
Drop kirkstone-only compatibility and claim kirkstone through
wrynose. Anchor BBFILE_PATTERN to ^${LAYERDIR}/ so other layers
can't be accidentally matched.
The previous recipe (1.89, May 2024) shipped multi-arch tarball
URLs but the do_install body hardcoded ${WORKDIR}/VSCode-linux-arm64/*,
so x64 and armhf builds installed nothing. LIC_FILES_CHKSUM had
the same arm64-hardcoded path. Both fixed via VSCODE_ARCH-driven
S and a relative-to-S license path.
Bumped to upstream 1.120.0 (released 2026-05-13), the latest
stable on https://code.visualstudio.com/. Switched all three
URL checksums from md5 to sha256 while we're touching them.
Also drops the bin_package allarch inheritance: these binaries
are arch-specific ELFs, so allarch produces wrong sstate hashes
that would let an x86 build promote into an arm sysroot. Set
PACKAGE_ARCH = ${MACHINE_ARCH} explicitly.
Three jobs: - parse: matrix of (poky_branch x machine), where poky_branch is kirkstone..walnascar and machine is qemux86-64 / qemuarm64 / qemuarm. Catches recipe parse errors and per-arch SRC_URI resolution failures. - parse-oe-core: same per-machine matrix against oe-core whinlatter and oe-core wrynose (no poky combo for those releases). - build: end-to-end bitbake vscode on scarthgap / qemux86-64. Exercises do_install, package_qa, etc. that bitbake -p doesn't trigger.
The previous structure used include alone to introduce release + bitbake, which GHA didn't expand across the machine axis -- only 3 wrynose cells materialised and 0 whinlatter. Move release into the base matrix so (release x machine) is the cartesian product and have include just map bitbake-the-tool's version against the release key.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings the layer current with the May 2026 VSCode release (1.120) and wires up Yocto-style multi-release + multi-arch CI.
conf/layer.conf: LAYERSERIES_COMPAT widens from "kirkstone" to "kirkstone scarthgap styhead walnascar whinlatter wrynose". Adds LAYERDEPENDS on core and LAYERVERSION, and anchors BBFILE_PATTERN so other layers can't accidentally match.
recipes-devtools/vscode: bumped from 1.89 (May 2024) to 1.120.0 (May 13, 2026). Re-resolved the per-arch tarball URL timestamps and switched checksums from md5 to sha256.
Two recipe bugs fixed at the same time:
The recipe inherits bin_package, which (via allarch) was producing one set of sstate signatures across all arches even though the binaries are arch-specific. Override with PACKAGE_ARCH = ${MACHINE_ARCH} so an arm64 build and an x86_64 build produce distinct .ipks.
.github/workflows/ci.yml: three jobs.
bitbake -c fetch vscode, exercising both the recipe parser and the per-arch SRC_URI resolution.bitbake vscodeon scarthgap/qemux86-64. Catches QA failures that bitbake -p doesn't trigger.Per-release branches (kirkstone, scarthgap, styhead, walnascar, whinlatter, wrynose) will be added in a follow-up after main lands.
Verified: vscode builds clean end-to-end on scarthgap/qemux86-64 against linux-yocto 6.6 with no QA errors (one host-distro warning unrelated to this layer).