Skip to content

Commit bd9066d

Browse files
committed
feat: make this repo ready to be used as a template
1 parent 5e37e3a commit bd9066d

File tree

4 files changed

+18
-37
lines changed

4 files changed

+18
-37
lines changed

README.md

Lines changed: 11 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,31 @@
1-
# vanillin   [![build-ublue](https://github.com/xynydev/vanillin/actions/workflows/build.yml/badge.svg)](https://github.com/xynydev/vanillin/actions/workflows/build.yml)
1+
# BlueBuild VanillaOS Testing   [![build-ublue](https://github.com/xynydev/vanillin/actions/workflows/build.yml/badge.svg)](https://github.com/xynydev/vanillin/actions/workflows/build.yml)
22

3-
See the [BlueBuild docs](https://blue-build.org/how-to/setup/) for quick setup instructions for setting up your own repository based on this template.
3+
This is a template / testing ground for building custom images based on VanillaOS using BlueBuild.
44

5-
After setup, it is recommended you update this README to describe your custom image.
5+
To use this, generate a new repo based on the template. To make the builds not fail at the signing steps, follow the instructions here: https://blue-build.org/how-to/cosign/ (you can install `skopeo` on Vanilla with `sudo apt install skopeo`).
66

77
## Installation
88

9-
> **Warning**
10-
> [This is an experimental feature](https://www.fedoraproject.org/wiki/Changes/OstreeNativeContainerStable), try at your own discretion.
9+
To rebase an existing VanillaOS installation to the latest build:
1110

12-
To rebase an existing atomic Fedora installation to the latest build:
13-
14-
- First rebase to the unsigned image, to get the proper signing keys and policies installed:
15-
```
16-
rpm-ostree rebase ostree-unverified-registry:ghcr.io/xynydev/vanillin:latest
17-
```
18-
- Reboot to complete the rebase:
19-
```
20-
systemctl reboot
11+
- First change your base image to the custom image:
2112
```
22-
- Then rebase to the signed image, like so:
13+
IMAGE=xynydev/vanillin # change this
14+
host-shell -- run0 bash -c "jq -r '.name |= \"$IMAGE\"' /etc/abroot/abroot.json > /etc/abroot/abroot_tmp.json && mv /etc/abroot/abroot_tmp.json /etc/abroot/abroot.json"
2315
```
24-
rpm-ostree rebase ostree-image-signed:docker://ghcr.io/xynydev/vanillin:latest
16+
- Upgrade and reboot to complete the installation:
2517
```
26-
- Reboot again to complete the installation
27-
```
28-
systemctl reboot
18+
abroot upgrade
19+
host-shell -- systemctl reboot
2920
```
3021

3122
The `latest` tag will automatically point to the latest build. That build will still always use the Fedora version specified in `recipe.yml`, so you won't get accidentally updated to the next major version.
3223

33-
## ISO
34-
35-
If build on Fedora Atomic, you can generate an offline ISO with the instructions available [here](https://blue-build.org/learn/universal-blue/#fresh-install-from-an-iso). These ISOs cannot unfortunately be distributed on GitHub for free due to large sizes, so for public projects something else has to be used for hosting.
36-
3724
## Verification
3825

3926
These images are signed with [Sigstore](https://www.sigstore.dev/)'s [cosign](https://github.com/sigstore/cosign). You can verify the signature by downloading the `cosign.pub` file from this repo and running the following command:
4027

4128
```bash
4229
cosign verify --key cosign.pub ghcr.io/xynydev/vanillin
4330
```
31+

files/scripts/abroot.sh

Lines changed: 0 additions & 5 deletions
This file was deleted.

recipes/recipe.yml

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
1-
# yaml-language-server: $schema=https://schema.blue-build.org/recipe-v1.json
1+
# yaml-language-server: $schema=https://json.schemastore.org/yamllint.json
22

33
# image will be published to ghcr.io/<user>/<name>
44
name: vanillin
5+
56
# description will be included in the image's metadata
6-
description: Custom image based on VanillaOS testing.
7+
description: Custom image based on VanillaOS.
78

89
# the base image to build on top of (FROM) and the version tag to use
910
base-image: ghcr.io/vanilla-os/desktop
10-
image-version: main # latest is also supported if you want new updates ASAP
11+
image-version: main
1112

13+
# vanilla specific config, unstable, might change later
1214
base-image-type: vanilla
13-
# blue-build-tag: vanilla
15+
blue-build-tag: vanilla
1416

1517
# module configuration, executed in order
1618
# you can include multiple instances of the same module
@@ -34,9 +36,5 @@ modules:
3436
install:
3537
- io.github.flattool.Warehouse
3638

37-
- type: script
38-
scripts:
39-
- abroot.sh
40-
41-
# - type: signing # this sets up the proper policy & signing files for signed images to work fully
39+
- type: signing # this sets up the proper policy & signing files for signed images to work fully
4240

0 commit comments

Comments
 (0)