Skip to main content

first party plugins

These executables live under cmd/corral-* and speak the corral.plugin/v1 metadata handshake. tuna-os publishes them through the curated marketplace.

PluginPurposeSupported backendsMain capabilities
aws-powerPower EC2 VM hosts on and off (host-power hook)allTag-discovered EC2 instances, start/stop
authOptional reverse-proxy authenticationall (web transport)OIDC SSO, htpasswd Basic Auth, passkeys, peer service tokens
backupVM disk backup and restoreKubeVirtKubeVirt export, rclone/S3/R2, schedules
bootcBootable-container VM workflowKubeVirtOn-cluster disk builds and rebuilds
gpuGPU/PCI passthroughKubeVirtDevice discovery, permitted devices and attachment
proxmoxProxmox VE compatibility serviceKubeVirt/api2/json HTTP API backed by KubeVirt
scheduleLifecycle windowsKubeVirtKubernetes CronJobs for VM start/stop
snapschedSnapshot retention schedulesKubeVirtKubeVirt snapshots and pruning CronJobs
windowsWindows VM creationKubeVirtUEFI, TPM, Hyper-V, installer and virtio media
vdiDesktop pools (Phase 1)KubeVirtStatic desktop pools, golden VM cloning, manual assignment

corral-vdi provides static desktop pools for Phase 1. RFC-0001 governs them, and docs/vdi.md documents them. docs/vdi-epic-status.md tracks the dependency gates of the epic. corral-incus is a compatibility binary for older installations. Incus is now a built-in backend, and tuna-os does not publish it as a marketplace plugin.

At runtime, Corral does not trust the first-party source automatically. Marketplace v2 still needs immutable URLs and SHA-256 checksums. It validates Ed25519 signatures, which are optional, displays permissions, and records installed provenance.

The matrix is deliberately honest: core inventory and lifecycle support for a backend does not imply that every workflow plugin supports it. The extension issues #129 through #134 track adapter work. Until those land, the marketplace and web UI expose the limitation before install.