RadBuild 0.2.1

Example: RADPx OS Window Manager Image

Example: RADPx OS Window Manager Image

settings.json

{
  "radbuild_schema": "2.0",
  "radbuild_version": "0.2.1",
  "project_name": "RADPx-OS Window Manager",
  "systems": [
    {
      "id": "radpx-x86-64-grub-wm",
      "type": "os.radpx",
      "provider": "radpx-os",
      "depends_on": [],
      "config": {
        "target": "x86_64-grub-wm",
        "ui_profile": "wm",
        "source": {
          "type": "git",
          "url": "https://github.com/Radical-Computer-Technologies/RADPx-OS.git",
          "branch": "crimson-v0.1.3",
          "checkout_dir": ".radmeta/sources/RADPx-OS",
          "update": true
        },
        "feature_chunks": ["kernel.core", "kernel.x86_64", "drivers.framebuffer", "drivers.input.ps2", "drivers.block.virtio", "fs.ext4", "fs.fat", "services.radinit", "services.radcompositor", "services.slint-shell", "userspace.rash"],
        "build_dir": "build/embedded/x86_64_grub_wm",
        "smoke_script": "tools/embedded/x86_64_grub_slint_smoke.sh",
        "artifact_dir": "artifacts/radpx/x86_64-grub-wm",
        "skip_qemu": true,
        "qemu_smp": [2],
        "rkconfig": {
          "hostname": "radpx",
          "root_password": "radpx",
          "rootfs_size_mb": 256,
          "terminal_theme": "radpx-dark",
          "terminal_autocomplete": true,
          "terminal_ncurses": true,
          "terminal_vim": true,
          "terminal_vim_variant": "tiny",
          "network_enabled": true,
          "net_ipv4": "10.0.2.15",
          "net_netmask": "255.255.255.0",
          "net_gateway": "10.0.2.2",
          "net_ntp_server": "time.google.com",
          "net_ntp_port": 123,
          "net_dns_server": "10.0.2.3",
          "dns_search": "local",
          "timezone": "America/Los_Angeles"
        },
        "radpm": {
          "repository": "../RadicalPackages",
          "suite": "experimental",
          "packages": [],
          "packagegroups": ["radpx-desktop-base", "radpx-networking"]
        },
        "sdk": {
          "enabled": true,
          "name": "radpx-sdk-x86_64-grub-wm.tar.gz",
          "root_name": "radpx-sdk-x86_64-grub-wm"
        }
      }
    }
  ],
  "connections": [],
  "artifacts": [],
  "deploy": [],
  "packages": {}
}

Commands

radbuild project create ./workspace --non-interactive --template radpx-os-wm --project-name radpx-wm
radbuild menuconfig --settings settings.json --apply-profile wm --json
radbuild build os --settings settings.json --json-events

Expected Output

{"event":"system_started","system":"radpx-x86-64-grub-wm"}
{"event":"radpx_source","system":"radpx-x86-64-grub-wm","source_type":"git"}
{"event":"artifact","system":"radpx-x86-64-grub-wm","artifact_id":"iso"}
{"event":"artifact","system":"radpx-x86-64-grub-wm","artifact_id":"sdk"}