Commit graph

90 commits

Author SHA1 Message Date
renner
6668764606
chore: drop beta/latest compatibility tag 2026-05-08 17:41:38 +02:00
renner
de8a17af3a
Merge branch 'beta' into promote-beta-to-main44 and resolve conflicts 2026-05-08 17:36:42 +02:00
Alex Meyer
5526112293
fix(beta): make sbverify check not fail if missing (#2157) 2026-05-06 05:12:10 +00:00
renner
037fe6533f
feat(ci): introduce temporary compatibility tag for f44 (#2107)
* feat(ci): introduce temporary compatibility tag for f44

Instead of having 2 workflows for building beta and latest, which will
produce functionally the same image, we have one workflow instead.
Latest workflow will tag beta images.

* trigger latest workflow on beta
2026-04-28 11:07:02 +03:00
renner
1215fca6d1 feat(ci): keyless OIDC verification for get-aurora-dev/common (#2095)
We are dealing with less long-lived keys now and we are supposed to use
this more modern way of signing our artifacts anyway where we can.

Sister PR to: https://github.com/get-aurora-dev/common/pull/158
2026-04-26 18:57:19 +02:00
renner
7b684ade56
feat(ci): keyless OIDC verification for get-aurora-dev/common (#2095)
We are dealing with less long-lived keys now and we are supposed to use
this more modern way of signing our artifacts anyway where we can.

Sister PR to: https://github.com/get-aurora-dev/common/pull/158
2026-04-26 14:55:40 +00:00
renner
53b751154e
feat(ci): rolling dnf cache (#2031)
Due to the nature of these caches being immutable (hihi) we can only
initially create caches with a certain key and can't update them with
fresh packages, this means they would get stale after a certain time. To
workaround this we restore from cache x and write and publish to cache
y, this has the drawback that this growth will never stop as we don't
delete old and unused packages residing inside the cache. This is not a
super big issue as the vast majority of packages don't change too often
but is still an annoyance.

As per the eviction policy [1], caches not accessed for 7 days will be
deleted automatically. This should result in a cycle where a scheduled
stable (or other manually triggered) workflows will create new cache
that will be used by all workflows until the next one is created again.

With this change, manual intervention should never be needed while
always having a fresh cache.

This also addresses that the aurora-dx-nvidia-open image got falsely
recognized as aurora-dx and attempted to write cache previously.

[1]: https://docs.github.com/en/actions/reference/workflows-and-actions/dependency-caching#usage-limits-and-eviction-policy
2026-04-10 03:30:58 +00:00
renner
33f5915395
feat: only pull when image actually exists
We need to check if the previous build was actually made with
rpm-ostree, otherwise this isn't going to do anything, implemented like
how upstream checks for this, see the comment.
2026-04-04 00:32:22 +02:00
renner
bde32f5f38
feat: add capability to manually trigger a fresh rechunking plan
Over time the layer plan due to reuse of the previous build's rechunking
plan might become undesirable/inefficient or due to bugs in rpm-ostree
itself that would trigger issues in the rechunker during the build might
force us to reset the layer plan where we do not consume our previous
build.
2026-04-04 00:32:22 +02:00
renner
a9607a2e4f
feat(ci): on rechunk consume previous build
Currently we compose a fresh rechunked image every build. This is not
ideal for image layer difference reduction and thereforce update sizes
as we do not take the rechunking plan/package layout from the previous
build (that users will likely have downloaded) into account.

When we have a new release of rpm-ostree we can replace most of the
pulling logic here with the new `--previous-build` flag.
2026-04-04 00:31:15 +02:00
renner
cb8bbcc020
chore: remove things related to legacy-rechunk 2026-04-03 21:39:03 +02:00
Dylan M. Taylor
7c5cd133e9
chore: bump Fedora to 44 (#1994)
* chore: bump Fedora to 44

* chore: simplify Containerfile.in ARG defaults
2026-04-03 21:34:39 +02:00
renner
2d1b039237
chore(beta): adjust fedora version logic for beta in rechunker (#1972)
* chore(ci): remove akmods check for fedora version (#1966)

This is unnecessary and doesn't work all that well, caching is not super
well implemented anyway. Setting the fedora version per image tag
statically works just fine and if we were to set some version that is
not yet available then it will simply fail a couple seconds later on the
cosign verification or akmods image pull.

* chore(beta): adjust fedora version logic for beta in rechunker
2026-03-28 21:59:02 +02:00
renner
89aed616a2
chore(ci): remove akmods check for fedora version (#1966)
This is unnecessary and doesn't work all that well, caching is not super
well implemented anyway. Setting the fedora version per image tag
statically works just fine and if we were to set some version that is
not yet available then it will simply fail a couple seconds later on the
cosign verification or akmods image pull.
2026-03-27 19:42:32 +00:00
renner
aab5038c5d
fix(ci): make cache use proper fedora version (#1961)
This always defaulted to latest, which resolves to F43 currently,
meaning F44 beta images will never make their own cache otherwise.
2026-03-25 21:24:47 +01:00
renner
a3cb401ffd
fix(ci): actually hardcode the cache restore key to aurora-dx (#1956)
We are writing cache to the proper location but not adjusting the
restore keys properly, i.e. aurora wants to look for cache at aurora
even tho we are purposefully only allowing aurora-dx cache to be
created.
2026-03-25 21:24:47 +01:00
renner
d7fd6e4c56
fix(ci): be smarter about DNF package caching (#1952)
Currently we are very inefficient with our cache usage as every image
has it's own cache where most of the packages are the same across
variants anyway. See 973333f.

This should fix a couple problems around this as we are now also
considering the Fedora version in the cache key and only allowing one
blessed image to create cache. Which is why I decided to implement this
into the Justfile even tho this is only needed when running from github
as it just makes things easier to troubleshoot.

aurora-dx makes the most sense here as that is the heaviest image. We
don't need a separate nvidia image cache as the biggest RPMs exclusive
to that variant are cached in akmods anyway and don't have to be
downloaded.

Only allowing cache to be created at all on workflow_dispatch and on
schedule happens to go hand in hand with the limitation/design of the
cache action as we only build images from the main branch in those two
cases, rest is merge queue, which also happens to address the
"infighting" across stable and latest builds when they kick off at the
same time.

This should make it easier going forward especially when we take future
possible ARM, testing images or any other reason for our matrix to get
bigger into consideration.
2026-03-25 20:21:10 +01:00
renner
63c903ae17
fix(ci): make cache use proper fedora version (#1961)
This always defaulted to latest, which resolves to F43 currently,
meaning F44 beta images will never make their own cache otherwise.
2026-03-25 18:05:08 +00:00
renner
6c38d843ab
fix(ci): actually hardcode the cache restore key to aurora-dx (#1956)
We are writing cache to the proper location but not adjusting the
restore keys properly, i.e. aurora wants to look for cache at aurora
even tho we are purposefully only allowing aurora-dx cache to be
created.
2026-03-24 17:54:26 +00:00
renner
50ba0fcd2d
fix(ci): be smarter about DNF package caching (#1952)
Currently we are very inefficient with our cache usage as every image
has it's own cache where most of the packages are the same across
variants anyway. See 973333f.

This should fix a couple problems around this as we are now also
considering the Fedora version in the cache key and only allowing one
blessed image to create cache. Which is why I decided to implement this
into the Justfile even tho this is only needed when running from github
as it just makes things easier to troubleshoot.

aurora-dx makes the most sense here as that is the heaviest image. We
don't need a separate nvidia image cache as the biggest RPMs exclusive
to that variant are cached in akmods anyway and don't have to be
downloaded.

Only allowing cache to be created at all on workflow_dispatch and on
schedule happens to go hand in hand with the limitation/design of the
cache action as we only build images from the main branch in those two
cases, rest is merge queue, which also happens to address the
"infighting" across stable and latest builds when they kick off at the
same time.

This should make it easier going forward especially when we take future
possible ARM, testing images or any other reason for our matrix to get
bigger into consideration.
2026-03-23 17:26:57 +00:00
renner
096b890dee
feat(ci): enable zstd:chunked compression (#1951)
* feat(ci): enable zstd:chunked compression

https://github.com/projectbluefin/common/issues/239

* fix: only use zstd compression for artifacts

The old podman version we use on the 24.04 runners seems to be really
slow with pushing zstd:chunked compressed images (to tarballs), we are
only using the newer podman version from brew when we actually push
images to the registry. For testing PRs this is good enough.

This makes the Exporting to OCI Archive step take 1m30s again and 4m for
DX, with :chunked it took 4m and 7m respectively.
2026-03-23 15:46:29 +00:00
renner
d707c687b0
fix(beta): make docker able to pull the image (#1934)
* fix(beta): make docker able to pull the image

https://docs.docker.com/engine/storage/drivers/overlayfs-driver/#how-the-overlay2-driver-works

* fix(beta): consolidate shell scripts in aurora-config layer

It doesn't make sense for a shell script which is just a couple KiB big
to get it's own dedicated layer.
2026-03-19 17:59:18 +00:00
renner
c36243a4db
feat: rechunk with rpm-ostree (#1476)
* feat: rechunk with rpm-ostree

The legacy rechunker is basically unmaintained, this is a much safer
option to reduce our (delta) image size.

https://coreos.github.io/rpm-ostree/build-chunked-oci/

We can further reduce the layer diff by utilizing --previous-build in
the next rpm-ostree release. It still has a couple problems in the
current release in combination with non-rpm layers.

https://github.com/coreos/chunkah is very early in development, don't
bother for now.

* fix: handle dance regarding stable, stable-daily

* chore: add horrible workaround because of hhd-dev/rechunk

* fix: for layer annotations not being pushed

We need a newer podman version than ubuntu 24.04 provides,
homebrew is the most elegant solution.

We need the layer annotations for the rpm-ostree rechunker so that
updates are more efficient.

workaround for:
https://github.com/containers/podman/issues/27796

* feat: assign layers to files we download

* chore: autostart rechunker-group-fix

* fix: don't do beta tag logic

* chore: only run when deployed with ostree

so this doesn't run on the ISO etc will need to be changed on composefs
native backend.
2026-03-17 14:13:59 +00:00
Adam Fidel
bdbbac22c1
chore: bump beta to 44 (#1869)
Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
2026-03-12 11:39:30 +02:00
renner
e1733489fa
chore(just): remove SUDO_DISPLAY (#1848)
This is super annoying if you don't have it set
2026-03-06 20:32:32 +01:00
renner
22d21c197c
feat(ci): use CPP preprocessor for akmods (#1799) 2026-02-27 19:51:50 +02:00
renner
419457c519
chore: stop hardcoding base image org + cleanup (#1733)
* chore: stop hardcoding base image org + cleanup

This is closer to what bluefin-lts is doing

* fix: make check happy
2026-02-08 15:00:48 +01:00
inffy
76ee3b1ea2
refactor fedora version logic (#1696) 2026-02-01 12:28:38 +00:00
renner
b4b2ceb2fd
fix(ci): verify akmods, brew, common with local key (#1665)
Previously we were fetching the public keys over the network, this method
was not resilient against bad actors who take over one of our
dependencies and publish malicious images with those keys.
2026-01-25 06:24:40 +00:00
renner
08ee28916f
feat: enable KDE 6.6 Beta builds (#1646)
* feat: enable KDE 6.6 Beta builds

latest kernel is nasty, so just going for the coreos-stable kernel now
on beta

The panel task manager widget config is not present in the beta packages

* fix: use latest kernel

ostree hotfix and sysext is fixed in 6.18.5

* fix firewall installation
2026-01-17 12:28:12 +00:00
renner
2678890be6
feat: FROM quay.io/fedora-ostree-desktops/kinoite (#1615)
* feat: FROM quay.io/fedora-ostree-desktops/kinoite

Instead of using the ublue-os/kinoite-main base image we would be using
the ones built by Timothée over at https://gitlab.com/fedora/ostree/ci-test

This is a good path forward for Aurora because:

- we no longer have to undo things we inherit from ublue-os/main
- less overall dependencies
- we can make more conscious decisions about what goes into the image
- it's easier now to build images on top of upcoming Fedora versions
  (even KDE nightly ones) or to base on top of potential future images
  that are more aligned with our goals and needs

This would come at the cost of maintaining most of what main did
previously ourselves.

* chore: remove ublue-os-akmods-addons

* chore: codecs from negativo

* feat: add flathub

* fix: fedora flatpak be gone

* feat: miscellaneous workarounds

* feat: CoreOS rescue boot generator

* feat: allow brew programs with sudo

* chore: re-add packages from main

* chore: remove packages we removed in main

* chore: renovate

there is no latest tag

* fix: remove explicit ublue akmods copr cleanup

already included with all the others

* chore: remove added fedora flatpak service

We don't need this

* fix(renovate): set proper tag

---------

Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
2026-01-13 04:52:08 +00:00
ubot-7274[bot]
8a7838b5eb
chore(deps): update ghcr.io/ublue-os/legacy-rechunk docker tag to v1.0.1 (#1579)
Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
2026-01-04 09:51:04 +02:00
renner
fe58dbd642
feat: switch over to brew OCI from RPM (#1522)
This new brew version also includes those 2 changes:

https://github.com/ublue-os/brew/pull/2
https://github.com/ublue-os/brew/pull/1

Brew binaries have less priority than system binaries now.

This will also make our images 120MiB bigger as hhd/rechunker doesn't
handle non-RPM content at all, unlike the rpm-ostree compose
build-chunked-oci.

https://github.com/ublue-os/brew
2025-12-28 07:09:07 +00:00
renner
33586db86c
chore: remove build-iso just recipe (#1485)
We have been using titanoboa for a while now and this won't be coming
back anytime soon.

Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
2025-12-18 19:24:06 +00:00
renner
8c2ca25127
chore: move to ublue-os/legacy-rechunker (#1466)
* chore: move to ublue-os/legacy-rechunker

https://github.com/ublue-os/legacy-rechunk

* update rechunker image

---------

Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
2025-12-16 21:58:50 +00:00
Adam Fidel
b3d90b323d
chore: refactor get-aurora-dev/common image declaration (#1374)
* chore: refactor where get-aurora-dev/common image is declared

* feat: build with common sha of image-versions.yml

* feat: verify common image with cosign

* fix: just dance

* chore: don't specifcy tag of common

This is not needed, it was not broken or anything.
The build pulls in the pinned version specified in image.yml

* chore: see previous commit

* fix: add common image tag + sha to verification step

---------

Co-authored-by: renner <renner0@posteo.de>
Co-authored-by: renner <80410025+renner0e@users.noreply.github.com>
Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
2025-11-29 14:54:30 +00:00
inffy
98ad1d5158
fix(ci): fix fedora_version detection (#1309) 2025-11-17 22:21:55 +02:00
inffy
5c0171ad60
fix: update justfile to the new weekly schedule (#1259) 2025-11-06 22:28:02 +00:00
inffy
fb15c7214a
chore: more repo cleanup (#1180)
* chore: clean up repo

* chore: overrides and remove tailscale repo

* remove base image changes script

* refactor dx and build scripts

* add better way to install openrazer-daemon

* move the pinned packages to packages.sh

* fix typo

* sunshine is not excluded package anymore

* fix toolip

* update fedora version to 42

* fix: remove unnecessary bootc lint

we do that in the containerfile at the end

* remove /opt stuff

---------

Co-authored-by: renner <80410025+renner0e@users.noreply.github.com>
Co-authored-by: renner <renner0@posteo.de>
2025-10-31 22:40:15 +00:00
ubot-7274[bot]
7b1c461d3e
chore(deps): update ghcr.io/jasonn3/build-container-installer docker tag to v1.4.0 (#1212)
Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
2025-10-31 05:21:19 +00:00
inffy
0524a13111
chore: drop HWE + nvidia-legacy images (#763)
* chore: drop HWE images

This shouldn't be merged befora F43 images have released

* justfile fixes

* chore: remove hwe bazzite kernel logic

* docs: remove HWE badge from README

* update initramfs script to match main now

Co-authored-by: renner <80410025+renner0e@users.noreply.github.com>

* fix: remove leftover QUALIFIED_KERNEL

* update copilot instructions

* remove nvidia-legacy  too

* remove legacy-nvidia

* more legacy-nvidia found

* oops

* chore(ci): remove hwe workflow

* chore(just): remove nvidia closed from retagger

* chore: remove nvidia closed from image-info.sh

---------

Co-authored-by: renner <renner0@posteo.de>
Co-authored-by: renner <80410025+renner0e@users.noreply.github.com>
2025-10-24 19:11:49 +00:00
inffy
7060ab3b2f
chore: F43 building blocks (#1093)
* feat: enable testing repo for beta

* chore: beta gates for akmods

* chore: rpmfusion beta

* chore: more enablements

* fix: beta should check the beta tag on main

* sunshine copr not avaialble for f43

* update packages and repo files

* chore(deps): update ghcr.io/ublue-os/kinoite-main:latest docker digest to 55277ae (#1092)

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

* remove some packages from beta f43

* move special packages away from packages.json

* another if override for beta

* update

* cleanup for copr repos

* more cleanup

* revert akmods changes

* exclude mozilla fonts

* fix excluded packages

* Update build_files/base/03-install-kernel-akmods.sh

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* cleanup some packages

* scx-scheds be gone

---------

Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-17 12:39:28 +00:00
ubot-7274[bot]
e48c8274da
chore(deps): update ghcr.io/hhd-dev/rechunk docker tag to v1.2.4 (#1075)
Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
2025-10-12 00:17:50 +00:00
Adam Fidel
e668b6cdeb
chore: replace old Jorge references (#1043) 2025-10-03 15:20:44 +00:00
inffy
828dbb676d
feat: move to centralized flatpaks lists (#776)
* feat: move to centralized flatpaks lists

* update containerfile
2025-08-09 14:30:22 +00:00
renner
eacb42d4d7
feat(ci): consistently use rootful container storage (#732)
* feat(ci): consistently use rootful container storage

* feat(ci): add sleep before mounting container storage

would be funny if this worked

* chore: use default value for loopback-free

* chore: undo 5s wait

* revertme: use my testing branch for action

* Revert "revertme: use my testing branch for action"

This reverts commit 27b15386c3e5a9e88d8cb65dca7d0b8f46e0555a.

* chore: use newer version of the action
2025-07-27 22:32:45 +00:00
Adam Fidel
004aa2b621
fix(build): update beta path to use correct tag (#717) 2025-07-20 13:01:49 +00:00
Adam Fidel
999d14a510
fix(build): use GITHUB_TOKEN for curl when needed (#709)
* fix(build): use GITHUB_TOKEN for curl when needed

* use /tmp instead of /usr/local

* missed one

* pass -E to sudo

---------

Co-authored-by: inffy <10782843+inffy@users.noreply.github.com>
2025-07-20 03:02:41 +00:00
ubot-7274[bot]
60b7a96792
chore(deps): update ghcr.io/hhd-dev/rechunk docker tag to v1.2.3 (#689)
Co-authored-by: ubot-7274[bot] <217212047+ubot-7274[bot]@users.noreply.github.com>
2025-07-13 06:47:43 +00:00
inffy
72337c301b
feat: Create livecd with anaconda webui (#482)
* add aurora copr for anaconda live stuff

* fix(iso): Handle platform differences

* feat(iso): Live ISO using anaconda as the installer

* fix(iso): anaconda artifact name (#2539)

* fix: improve the live anaconda hook

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* add a pull request run if the configure script changes

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* set a funny name

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* fixups

* fixup! set a funny name

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* reorder

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* make our own profiles

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* desktop icon, don't constantly rebuild images

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* figure out how to get libblockdev-btrfs on lts

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>

* fix: remove gts workflow

* add flatpaks for ISO

* small fixes

* remove the unneeded LTS workflow

* don't hide the parts of the installer

* few small fixes

* remove google fonts from live iso

* remove motd and brew from iso

* un-break building

* add -live notion to ISOs

* ignore image builds

---------

Signed-off-by: m2 <69128853+m2Giles@users.noreply.github.com>
Co-authored-by: m2 <69128853+m2Giles@users.noreply.github.com>
Co-authored-by: Niklas <40402114+NiHaiden@users.noreply.github.com>
2025-05-19 09:39:33 +02:00