61 lines
2.0 KiB
Markdown
61 lines
2.0 KiB
Markdown
# incu-contrib
|
|
|
|
Peripheral tools, snippets, and scripts for working with [Incus](https://linuxcontainers.org/incus/),
|
|
[IncusOS](https://linuxcontainers.org/incus-os/), and the broader ecosystem.
|
|
|
|
Primarily aimed at home lab environments but useful in production as well.
|
|
|
|
## Contents
|
|
|
|
### [`incusos/`](incusos/)
|
|
|
|
Scripts for building IncusOS installation media and seed configurations:
|
|
|
|
- **`incusos-iso`** -- Build customized IncusOS ISO/IMG images using the official flasher-tool.
|
|
Supports both architectures (x86_64, aarch64), multiple applications (Incus, Operations Center),
|
|
automatic client certificate injection, and batch generation.
|
|
|
|
- **`incusos-seed`** -- Generate IncusOS seed archives (tar or FAT image) for installation
|
|
customization. Covers all seed file types: install, applications, Incus preseed,
|
|
Operations Center, network, and update configuration.
|
|
|
|
See [`incusos/README.md`](incusos/README.md) for full documentation.
|
|
|
|
### [`notes/`](notes/)
|
|
|
|
Research notes and reference material.
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
# Install the flasher-tool (requires Go 1.21+)
|
|
go install github.com/lxc/incus-os/incus-osd/cmd/flasher-tool@latest
|
|
|
|
# Build a default IncusOS ISO with your client cert injected
|
|
./incusos/incusos-iso
|
|
|
|
# Build for a specific architecture and application
|
|
./incusos/incusos-iso --arch aarch64 --app operations-center --defaults
|
|
|
|
# Generate all common ISO variants at once
|
|
./incusos/incusos-iso --batch
|
|
|
|
# Generate a standalone seed archive
|
|
./incusos/incusos-seed --app incus --defaults --output my-seed.tar
|
|
|
|
# Generate a SEED_DATA FAT image for external boot media
|
|
./incusos/incusos-seed --format fat --app incus --defaults --output seed.img
|
|
```
|
|
|
|
## Requirements
|
|
|
|
- **Go 1.21+** -- for installing the flasher-tool
|
|
- **curl** -- for downloading images from the CDN
|
|
- **tar**, **gzip** -- for seed archive creation and image decompression
|
|
- **mtools** (optional) -- for creating FAT seed images
|
|
- **incus** (optional) -- for automatic client certificate detection
|
|
|
|
## License
|
|
|
|
MIT
|