distros/skills/ubuntu-debootstrap/SKILL.md
Bootstrap-from-scratch Ubuntu 24.04 rootfs via debootstrap inside a privileged builder (from: builder:debootstrap, bootstrap_builder_image: ubuntu-debootstrap-builder). Retained for offline/air-gapped builds. Lives in the overthinkos/ubuntu submodule (box/ubuntu). MUST be invoked before building or troubleshooting ubuntu-debootstrap.
npx skillsauth add overthinkos/overthink-plugins ubuntu-debootstrapInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Bootstrap-from-scratch Ubuntu 24.04 (noble) root filesystem, built via
debootstrap inside the privileged /charly-distros:ubuntu-debootstrap-builder
container (from: builder:debootstrap,
bootstrap_builder_image: ubuntu-debootstrap-builder).
Lives in
overthinkos/ubuntu(git submodule atbox/ubuntu). Build:charly -C box/ubuntu box build ubuntu-debootstrap.
The canonical Ubuntu base (/charly-distros:ubuntu) pulls the upstream-published
ubuntu:24.04 OCI image from Docker Hub — that is the recommended, faster path.
This debootstrap variant exists for offline / air-gapped builds and as a
worked example of the from: builder:debootstrap pattern.
| Property | Value |
|----------|-------|
| From | builder:debootstrap |
| bootstrap_builder_image | ubuntu-debootstrap-builder |
| Distro | ubuntu:24.04, ubuntu, debian |
| Build | deb |
| Home repo | overthinkos/ubuntu (box/ubuntu) |
The ubuntu distro config (inherits: debian; debootstrap suite noble,
mirror http://archive.ubuntu.com/ubuntu, components main,universe) lives in
the embedded build vocabulary (charly/charly.yml, baked into the charly
binary). The embedded vocabulary carries BOTH the ubuntu and debian distro
configs, so the inherits: debian resolution needs no reference to
overthinkos/debian.
/charly-distros:ubuntu — the recommended Docker-Hub base/charly-distros:ubuntu-debootstrap-builder — the privileged builder it uses/charly-vm:ubuntu — the VM built via the same debootstrap pathMUST be invoked before building or debugging the Ubuntu debootstrap rootfs. Invoke BEFORE reading source code or launching Explore agents.
tools
Use when authoring or modifying a charly PLUGIN — a candy with a `plugin:` block that contributes Providers (verbs/kinds/deploy-targets/steps/builders/commands), its own CUE schema, builtin (compiled-in) or external (out-of-tree git repo). Covers the unified Provider model, the per-plugin CUE-schema contract (single source → Go params for dev + schema-over-Describe RPC for runtime), the SDK, and the loader.
tools
The CUE data-validation / configuration CLI (cue), pinned to v0.16.1. Use when working with the cue candy, installing the cue binary into a box or onto a target:local dev host, or running the offline schema-vendoring pipeline that feeds charly's egress validation.
tools
CUE EGRESS validation — validating (and, where it adds value, generating) the config files charly WRITES to a system BEFORE the bytes hit disk. MUST be invoked before working on charly/egress.go, the vendored schemas under candy/plugin-egress/egress-schemas/vendor/, the ValidateEgress / registerVendoredEgressKind path, the offline `task cue:vendor` pipeline, or adding an egress schema for any written artifact (cloud-init, k8s manifests, traefik routes, runtime config, install ledger, systemd/quadlet units, ssh_config, libvirt XML).
tools
Kubernetes cluster-probe declarative check verb — the `kube:` check verb (nodes, pods, ingress, storage class, addon health, apply/delete, and arbitrary resource GETs) served out-of-process by the candy/plugin-kube plugin (vendored client-go; no external kubectl required).