A highly stable custom atomic OS image built with BlueBuild.
| Feature | Choice |
|---|---|
| Base | ghcr.io/ublue-os/base-main:42 |
| Desktop | COSMIC |
| Kernel | Bazzite |
| Terminal | Ghostty |
| App store | Bazaar |
| Shell | Fish (system-wide default) |
| Dotfiles | Chezmoi (sourced from this repo) |
| Extras | Terra repo, RPM Fusion free+nonfree, Framework Laptop akmods |
Warning
This is an experimental feature, try at your own discretion.
-
Rebase to the unsigned image first, to install the signing keys:
rpm-ostree rebase ostree-unverified-registry:ghcr.io/givensuman/goose:latest systemctl reboot
-
Then rebase to the signed image:
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/givensuman/goose:latest systemctl reboot
After installation, a set of ujust commands is available for managing the OS:
| Command | Description |
|---|---|
ujust bootstrap-goose |
Clone this repository to /etc/goose for local rebuilds |
ujust rebuild |
Rebuild the image locally from /etc/goose using the BlueBuild CLI |
ujust rebase |
Rebase to the latest published image from GHCR |
ujust update |
Apply pending rpm-ostree + Flatpak updates |
# 1. Bootstrap the source into /etc/goose
ujust bootstrap-goose
# 2. Edit the recipe or files in /etc/goose, then rebuild locally
ujust rebuild
# 3. Push your changes and let CI/CD build a new image
cd /etc/goose
git add .
git commit -m "my change"
git push # triggers the GitHub Actions buildDotfiles are managed via chezmoi and are sourced from the home/ directory of this repository (configured via .chezmoiroot).
On first login, chezmoi will automatically initialise from https://github.com/givensuman/goose and apply your dotfiles.
To add a dotfile:
chezmoi add ~/.config/fish/config.fishThe file will be tracked in home/ within this repository.
Images are signed with Sigstore's cosign. Verify with:
cosign verify --key cosign.pub ghcr.io/givensuman/goose