deb-bootc-compose/configs/advanced-variants.treefile
2025-08-18 23:32:51 -07:00

268 lines
6.5 KiB
Text

{
"name": "debian-bootc-advanced",
"version": "13.0",
"description": "Advanced Debian bootc variants with inheritance and patterns",
"release": "trixie",
"packages": {
"required": [
"systemd",
"systemd-sysv",
"udev",
"dbus",
"network-manager",
"openssh-server"
],
"optional": [
"vim",
"curl",
"wget",
"htop"
],
"recommended": [
"ca-certificates",
"apt-transport-https"
],
"build_deps": [
"build-essential",
"devscripts"
]
},
"exclude": [
"games",
"x11-apps"
],
"repositories": [
"deb http://deb.debian.org/debian trixie main",
"deb http://deb.debian.org/debian trixie-updates main",
"deb http://security.debian.org/debian-security trixie-security main"
],
"architecture": ["amd64", "arm64"],
"variants": [
{
"name": "base",
"description": "Base system with minimal packages",
"packages": {
"required": [
"systemd",
"systemd-sysv",
"udev",
"dbus"
],
"optional": [],
"recommended": [],
"build_deps": []
},
"exclude": [],
"architecture": ["amd64", "arm64"],
"custom": false,
"output": {
"container": true,
"disk_image": true,
"live_iso": false
},
"patterns": {
"package_pattern": "^[a-z0-9-]+$",
"version_pattern": "^[0-9]+\\.[0-9]+$"
},
"inheritance": [],
"metadata": {
"category": "base",
"priority": "high",
"maintainer": "debian-bootc@lists.debian.org"
},
"build_config": {
"system": "sbuild",
"environment": "debootstrap",
"timeout": 1800
},
"ostree_config": {
"mode": "bare",
"refs": ["debian/base"],
"signing": false
},
"output_config": {
"formats": ["ostree", "container"],
"compression": true
},
"conditions": {
"architecture_support": "amd64,arm64",
"package_availability": "required"
},
"custom_fields": {
"security_level": "minimal",
"update_frequency": "monthly"
}
},
{
"name": "server",
"description": "Server variant inheriting from base",
"packages": {
"required": [
"network-manager",
"openssh-server",
"sudo",
"bash"
],
"optional": [
"vim",
"curl",
"wget"
],
"recommended": [
"ca-certificates",
"apt-transport-https"
],
"build_deps": []
},
"exclude": [],
"architecture": ["amd64", "arm64"],
"custom": false,
"output": {
"container": true,
"disk_image": true,
"live_iso": true
},
"patterns": {
"service_pattern": "^[a-z-]+@\\.service$",
"config_pattern": "^/etc/[a-z0-9/-]+$"
},
"inheritance": ["base"],
"metadata": {
"category": "server",
"priority": "medium",
"maintainer": "debian-bootc@lists.debian.org",
"use_cases": ["web_server", "database_server", "file_server"]
},
"build_config": {
"system": "sbuild",
"environment": "debootstrap",
"timeout": 2400,
"parallel": true,
"max_workers": 2
},
"ostree_config": {
"mode": "bare",
"refs": ["debian/server"],
"signing": false,
"update_summary": true
},
"output_config": {
"formats": ["ostree", "container", "disk_image", "live_iso"],
"compression": true,
"registry": "docker.io/debian"
},
"conditions": {
"architecture_support": "amd64,arm64",
"package_availability": "required",
"service_availability": "required"
},
"custom_fields": {
"security_level": "standard",
"update_frequency": "weekly",
"backup_strategy": "rsync"
}
},
{
"name": "development",
"description": "Development variant with build tools",
"packages": {
"required": [
"git",
"python3",
"python3-pip",
"cmake",
"ninja-build"
],
"optional": [
"htop",
"iotop",
"strace",
"gdb"
],
"recommended": [
"build-essential",
"devscripts",
"debhelper"
],
"build_deps": [
"build-essential",
"devscripts",
"debhelper",
"cmake",
"ninja-build"
]
},
"exclude": [],
"architecture": ["amd64", "arm64"],
"custom": false,
"output": {
"container": true,
"disk_image": true,
"live_iso": false
},
"patterns": {
"tool_pattern": "^[a-z0-9-]+$",
"dev_pattern": "^lib[a-z0-9-]+-dev$"
},
"inheritance": ["base", "server"],
"metadata": {
"category": "development",
"priority": "low",
"maintainer": "debian-bootc@lists.debian.org",
"use_cases": ["development", "testing", "debugging"],
"target_audience": "developers"
},
"build_config": {
"system": "sbuild",
"environment": "debootstrap",
"timeout": 3600,
"parallel": true,
"max_workers": 4
},
"ostree_config": {
"mode": "bare",
"refs": ["debian/development"],
"signing": false,
"update_summary": true,
"force_new_commit": false
},
"output_config": {
"formats": ["ostree", "container", "disk_image"],
"compression": true,
"registry": "docker.io/debian",
"tag_suffix": "-dev"
},
"conditions": {
"architecture_support": "amd64,arm64",
"package_availability": "required",
"build_tools_available": "required"
},
"custom_fields": {
"security_level": "development",
"update_frequency": "daily",
"debug_symbols": true,
"source_packages": true
}
}
],
"build": {
"system": "deb-orchestrator",
"environment": "deb-mock",
"dependencies": "auto",
"parallel": true,
"max_workers": 4
},
"ostree": {
"mode": "compose",
"refs": ["debian/bootc/advanced"],
"repository": "./ostree-repo",
"signing": false,
"key_file": ""
},
"output": {
"formats": ["ostree", "container", "disk_image", "live_iso"],
"registry": "localhost:5000",
"signing": false,
"compression": true
}
}