mirror of
https://github.com/CloudNebulaProject/refraction-forger.git
synced 2026-04-10 13:20:40 +00:00
Standalone workspace with 4 crates for building optimized OS images and publishing to OCI registries: - spec-parser: KDL image spec parsing with include resolution and profile-based conditional filtering - forge-oci: OCI image creation (tar layers, manifests, Image Layout) and registry push via oci-client - forge-engine: Build pipeline with Phase 1 (rootfs assembly via native package managers with -R) and Phase 2 (QCOW2/OCI/artifact targets), plus dyn-compatible ToolRunner trait for external tool execution - forger: CLI binary with build, validate, inspect, push, and targets commands Ported KDL specs and overlay files from the vm-manager prototype. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
47 lines
No EOL
1.4 KiB
Text
47 lines
No EOL
1.4 KiB
Text
// OmniOS bloody base configuration (ported from image-builder JSON)
|
|
|
|
metadata name="omnios-bloody-base" version="0.0.1" description="OmniOS bloody: core + extra publishers; base incorporation 'entire'"
|
|
|
|
repositories {
|
|
// Core publisher
|
|
publisher name="omnios" origin="https://pkg.omnios.org/bloody/core/"
|
|
|
|
// Extra publisher (enable via features in consumers if applicable)
|
|
publisher name="extra.omnios" origin="https://pkg.omnios.org/bloody/extra/"
|
|
}
|
|
|
|
// Prefer the standard OmniOS incorporation umbrella
|
|
incorporation "entire"
|
|
|
|
// Approve IPS CA certs used for mTLS when contacting publishers
|
|
certificates {
|
|
ca publisher="omnios" certfile="omniosce-ca.cert.pem"
|
|
}
|
|
|
|
// IPS variants to set inside the target image
|
|
variants {
|
|
// OmniOS global zone
|
|
set name="opensolaris.zone" value="global"
|
|
}
|
|
|
|
// Packages from the artifact phase JSON (finalization steps like pkg_purge_history
|
|
// and seed_smf are intentionally omitted here)
|
|
packages {
|
|
package "/editor/vim"
|
|
package "/network/rsync"
|
|
package "/system/library/gcc-runtime"
|
|
package "/system/library/g++-runtime"
|
|
package "/network/ftp"
|
|
package "/network/openssh-server"
|
|
package "/network/telnet"
|
|
package "/service/network/ntpsec"
|
|
package "/web/curl"
|
|
package "/web/wget"
|
|
package "/system/management/mdata-client"
|
|
}
|
|
|
|
// Build-only tools
|
|
packages if="build" {
|
|
package "/developer/build-essential"
|
|
package "/developer/omnios-build-tools"
|
|
} |