Skip to content

chore: promote changes to stable - #2474

Merged
renner0e merged 58 commits into
ublue-os:stable-f44from
renner0e:promote-changes-stable
Jun 30, 2026
Merged

chore: promote changes to stable#2474
renner0e merged 58 commits into
ublue-os:stable-f44from
renner0e:promote-changes-stable

Conversation

@renner0e

@renner0e renner0e commented Jun 30, 2026

Copy link
Copy Markdown
Member

obsoletes: #2357

this PR is needed because of merge conflicts, we should look into making the pull app create a separate branch and this PR merges into stable, as we can't/shouldn't push directly to the stable/main branches and only make any changes via PRs

ubot-7274 Bot and others added 30 commits June 9, 2026 04:23
…digest to 47fe6aa (ublue-os#2355)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
Chunkah is actively maintained and the algorithm seems to be more stable
for the layer plan which results in smaller sizes for weekly updates
compared to rpm-ostree. Although it looks like daily updates are
slightly bigger for the time being.

In the future there may be a way to consume previous build manifests as
well to further shrink down image sizes.

I am not deleting the old build-chunked-oci code yet, to make this PR
easier to revert in case we have to.

Rpm-ostree is basically the only blocker for rootless CI, which is
generally what we should be doing, PolP and all that. Now we only need
root privileges for bootc install. Althought to keep this PR more simple
I will implement this later.

It seems like bootc install needs more space now, not sure exactly why
that happens but seems to be related due to pruned /sysroot.

xref ublue-os#2324

Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
We are just running a couple lines of bash here.

See: ublue-os#1728
…digest to 3222e2b (ublue-os#2359)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to 61fcd0a (ublue-os#2364)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to 4528632 (ublue-os#2373)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
This recipe doesn't actually work yet without any changes to the image
because we don't add the bootc module to the initramfs and don't install
systemd-boot.

This makes it easier to test the composefs native backend.
…t to e6540a6 (ublue-os#2366)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…t to 18e3fa7 (ublue-os#2376)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to b4a1ff3 (ublue-os#2378)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
* chore: simplify container pinning for common brew

This is just less complex and fully uses image-versions.yml

* make akmods_flavor a separate recipe

Helps in further splitting up the big monolith that is the build recipe.

* set right just group

* set full name for alpine image
…-os#2380)

We are not using docker in CI and I don't think it's worth the
complexity to keep (rather poorly) supporting builds with docker. Bootc
and Fedora only test/use the podman/buildah ecosystem so we should
probably do the same.

Docker prefixes images with docker.io instead of localhost like podman
does if you don't specific a tag prefix, so we can drop those prefixes
everywhere.

I'm sure that some things are already broken to some degree with docker
as I don't use it at all to test the various recipes.

I'm keeping the PODMAN variable to make it easy to at least replace the
path of the podman binary, compiling podman from source, homebrew...
fixup of d029a02. rpm-ostree needs the full reference.
…0032 (ublue-os#2390)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to ae0ee5d (ublue-os#2391)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
This should minimize the network flakes we run into when we have to pull
images as part of the many `FROM`s, the default is 3 tries with 2s
delay, which is really low.

I'm not 100% sure it will help us, let's just try it!

See: ublue-os#2337
…digest to 6f208c9 (ublue-os#2397)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…lue-os#2393)

* chore(backport-action): make the action fail if there is an error

* change pr title to adhere to semantic pr rules
The default is 30s, let's see if this is already enough. Most packages
should usually be cached, it's the retrieval of metadata that is often
the reason for the network related flakes.

xref: ublue-os#2337
…digest to 9636b35 (ublue-os#2403)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to 86fe5f3 (ublue-os#2405)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…t to 02dba7f (ublue-os#2407)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
I did some light testing regarding the variation of allocated space on /
and /mnt if present the other day and sadly there is still a very low
single-digit chance where our image build is just gonna fail because we
got the worst possible disk configuration with 20GB free and no
(additional) space on /mnt. This would at least address the cases where
we do have /mnt.

This came up again because we are using chunkah now which produces an
image where none of the layers with the base image are shared.

xref: ublue-os#2337
…digest to d4b28ac (ublue-os#2410)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to ad44bfe (ublue-os#2420)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
This is the right way to do this, credentials would be missing if we do
run into the case where we have to retry the login.

xref: ublue-os#2337
ubot-7274 Bot and others added 13 commits June 25, 2026 06:05
…t to 34ef110 (ublue-os#2453)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to 91ffbf1 (ublue-os#2455)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to b0ff866 (ublue-os#2461)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…s#2443)

* refactor(ci): initial work for using flag/arg-based workflow

The goal of this is to make the buildsystem function like any other CLI
program. The only recipes I haven't touched in this PR are the very
simple recipes like verify-container, retag-nvidia-ghcr and
login-registry. In the future I want to split up this Justfile in
multiple smaller ones where it feels right to do that.

resolves: ublue-os#2436

* document minimum just version

* build recipe

* feat: redo the way we do kernel pins

This allows an independent pinning of kernels for future ARM builds
regardless of x86. Probably the way we should have done it from the
beginning.

* get rid of build-ghcr and build-pipeline related things

We are not using the build-pipeline recipe anywhere right now. I think a
build-rechunk recipe is good enough for now.

I think build-ghcr doesn't make any sense anymore as it's now just a
single additional flag. The rechunk recipe with chunkah currently
doesn't alter any behavior when run in ghcr so we can delete this. But
this will likely change when chunkah implements some form of passing a
previous manifest.

I want to do a recipe at some point which replaces the general idea of
the pipeline recipe and is as close to github as possible. Build ->
Rechunk -> Secureboot-> tag + push an image to a local registry bootc
install.

* do deprecated build-chunked-oci recipe

* remove build-pipeline parts of ostree-rechunk

* export oci

* load rootful recipe

currently not used in CI as we are running everything as root.

* secureboot

* generate-point

* gen-sbom

* package cache

* bootc install

* some remaining shebangs

best practice to use env bash here instead

* push recipe

* redo generate-build-tags and tag-images

I removed the version input here. This has been broken for probably a
very long time, this didn't do anything for months at least, oldest log
I could find here:

```
Error: no such object: "aurora:latest"
Tags for this Action...
latest latest-43.20260424 latest-20260424 43 43-43.20260424 43-20260424
```

Kernel input is now done through just, so no reason to pass that, no
idea why we had that here in the first place.

* fix kernel pin for build-rechunk

This convenience recipe needs to take all the options from the build one
…b1e9 (ublue-os#2463)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to 9abf432 (ublue-os#2464)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to 9f2854d (ublue-os#2467)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…os#2470)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
…digest to ce90f03 (ublue-os#2472)

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
@renner0e
renner0e enabled auto-merge (squash) June 30, 2026 14:28
@renner0e
renner0e disabled auto-merge June 30, 2026 14:29
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@renner0e
renner0e marked this pull request as draft June 30, 2026 14:29
@renner0e
renner0e marked this pull request as ready for review June 30, 2026 14:32
@renner0e
renner0e enabled auto-merge June 30, 2026 14:32
@renner0e

Copy link
Copy Markdown
Member Author

changed a setting, merges (and squashes) are allowed for the stable branch now

@renner0e
renner0e merged commit d367af8 into ublue-os:stable-f44 Jun 30, 2026
14 checks passed
@renner0e
renner0e deleted the promote-changes-stable branch June 30, 2026 15:00
@inffy inffy mentioned this pull request Jul 2, 2026
SpeakinTelnet added a commit to SpeakinTelnet/hypr-aurora that referenced this pull request Jul 12, 2026
Since ublue-os/aurora#2474, aurora images are rechunked with Chunkah
(ublue-os/aurora@d54013a04, "feat(ci): use chunkah for rechunking") instead of
`rpm-ostree compose build-chunked-oci`. Chunkah emits plain OCI layers
and no longer embeds the ostree repo marker
(/sysroot/ostree/repo/config, mode=bare-split-xattrs) that rpm-ostree
requires to run inside a container build. As a result, the rpm-ostree
module fails on every build with:

  error: This system was not booted via libostree.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants