Skip to content

feat(osd): in-app OSD Settings menu (Keys / Updates / About), folding… #30

feat(osd): in-app OSD Settings menu (Keys / Updates / About), folding…

feat(osd): in-app OSD Settings menu (Keys / Updates / About), folding… #30

Workflow file for this run

# Free-runner-safe checks only. Chromium-scale builds run on the self-hosted runner (doc §14.3).
#
# Every job here just installs its deps and calls scripts/preflight.sh <target>. That script is the
# SAME one .githooks/pre-push runs locally, so CI and a contributor's push execute identical checks —
# they cannot drift. (They did drift once: the old pre-push mirrored only clang-format + shellcheck,
# so a stale test and a clang-only -Werror sailed past it into a red CI. See the preflight finding.)
name: lint
on:
push:
branches: [main, master]
pull_request:
jobs:
shell:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install deps
# test_video_corruption.py exercises the green-band pixel verdict and needs Pillow; without it
# the test ERRORs on import instead of running.
run: sudo apt-get update && sudo apt-get install -y shellcheck python3-pil
# shellcheck (scripts + harness) + the L0 harness suite (power-gate adjudication, exit-code
# taxonomy, cdp_lib, video-corruption). preflight prefers the system shellcheck installed above.
- name: preflight (shell)
run: ./scripts/preflight.sh shell
launcher:
# The launcher builds anywhere — no Chromium checkout needed (doc §14.3).
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: install toolchain
# Pin clang-format to a major version: an unpinned `clang-format` tracks the runner image's
# default, so a future ubuntu-latest bump would silently reformat the tree and turn this job
# red on unchanged code. The tree is formatted with clang-format 18 (preflight prefers this
# system clang-format-18 over its pinned-pip fallback).
# The launcher's system deps are optional (pkg_check_modules, not REQUIRED), but install them
# so CI builds the real, fully-featured configuration — otherwise DECKBACK_HAVE_CURL=0 and the
# CDM download path (plus its tests) never compile.
run: sudo apt-get update && sudo apt-get install -y cmake ninja-build clang-format-18 clang
libsystemd-dev libcurl4-openssl-dev libpulse-dev libxcb1-dev
# clang-format-18 check + gcc build & ctest + clang build (-Wall -Wextra -Werror).
- name: preflight (launcher)
run: ./scripts/preflight.sh launcher
gn-format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# args/*.gn are EXTRAS layered on Cobalt's chromium_linux-x64x11 config (gen.sh), not standalone
# arg sets. Codec overrides (proprietary_codecs/ffmpeg_branding) legitimately live in
# args/common.gn. preflight guards only against re-introducing platform/build_type base args.
- name: preflight (gn)
run: ./scripts/preflight.sh gn