Commit graph

13 commits

Author SHA1 Message Date
inffy
f65d257565
feat(ci): add dnf-retry wrapper script (#3133)
Co-authored-by: renner <80410025+renner0e@users.noreply.github.com>
2026-11-02 14:56:28 +00:00
renner
59f4248e8f
fix: set timestamp for unpackaged content to EPOCH=1 instead of 0 (#3096)
resolves: https://github.com/ublue-os/aurora/issues/3093
2026-10-28 04:48:58 +00:00
renner
eee1a0285c
fix: only reset timestmaps for files that aren't already epoch 0 (#3051)
This caused a little regression in the build times as it would relabel
absolutely everything, vast majority of content is of course RPM
packages which already have this timestamp set.

Before the normal image build was around 5-7min, now it has gone up by
2-3min.

Follow-up of: 3ef1256cd3.

Figured out by Bazzite in [1].

[1] a4ccbec9f6
2026-10-18 11:20:42 +00:00
renner
3ef1256cd3
feat: timestamp all files with epoch 0 (#3028)
* feat: timestamp all files with epoch 0

We have been using this chunkah feature [1] to put non-rpm content like
the brew tarball in dedicated layers, we didn't actually save any
bandwith on downloads with this as the copying sets the file
modification and access time. Which makes it non-reproducible and every
single update would re-download everything not in RPMs.

This should make updates smaller especially noticeable on daily/multiple
daily image builds. I'm not sure how much of a positive effect this is
gonna have on the stable weekly images as the brew tarball is refreshed
weekly. Things like the wallpapers should at least no longer be
downloaded when they haven't changed. There are still some files we
could do but I think it's mostly not worth it.

xref: https://github.com/ublue-os/aurora/issues/2579

[1] https://github.com/coreos/chunkah#customizing-the-layers

* typo

Co-authored-by: Adam Fidel <ledif@users.noreply.github.com>

---------

Co-authored-by: Adam Fidel <ledif@users.noreply.github.com>
2026-10-16 07:11:44 +00:00
renner
1476a9093d
fix(build-prep): put shebang in first line (#3033)
shellcheck complains about this
2026-10-15 15:18:36 +02:00
renner
7d7c481881
refactor: get uupd and nerdfonts-symbols from terra (#3025)
reasons stated in URL below

resolves: https://github.com/ublue-os/aurora/issues/3024
2026-10-14 16:19:20 +00:00
renner
25f575e922
chore: use new syntax for disabling/enabling repos (#3015)
See [1]

[1] https://fosstodon.org/@carlwgeorge/116489160183936662
2026-10-12 05:12:23 +00:00
renner
b2d6f3cfb3
refactor: simplify checking for enabled 3rd party repos (#2931)
* refactor: simplify checking for enabled 3rd party repos

We are generally no longer doing the dnf enable/disable dance (except
for the nvidia install script) because we are vendoring the .repo files
which simplifies things a bit.

Also I think that the move to checking what is allowed instead of
checking what is not allowed makes more sense anyway.

resolves: https://github.com/ublue-os/aurora/issues/2854

[1] 1e4d10b9ac/build_files/nvidia/nvidia-install.sh

* get openh264 from negativo

Our base image [1] can't legally include this from fedora-cisco-openh264
repo. Comparing the spec files for Fedora [2] and Negativo [3], they
seem to be built with the same build flags, so they should not have any
differing functionality. The fedora-cisco-openh264 repo is currently
enabled (which is not the case for F44 images) because our repo
validation script broke due to the move to /usr [4].

We are already shipping various other codecs on the system, including
mesa, they get more irrelevant each day but we should have this.

I don't know why exactly but for some reason we now have a stray
/var/log/dnf5.log which makes bootc container lint fail.

[1] 54e811f17a/common.yaml (L144)
[2] cd15228484/f/openh264.spec
[3] dfac89f533/openh264.spec
[4] https://fedoraproject.org/wiki/Changes/RelocateRpmRepoConfigsToUsr
2026-09-27 05:34:43 +00:00
renner
1a4be9911d
chore: cleanup systemd services, move to presets (#2892)
* chore: cleanup systemd services, move to presets

Preset files are cooler [1] and we should be able to get rid of a little
bit of complexity on the ISOs as we simply delete the preset file to
undo things we don't want to have on the ISO (uupd, tailscale ...)
instead of playing catch-up with the image [2].

Also we don't need to enable the *service* of rpm-ostree-countme, we
want to have the *timer* enabled, which is already done by default in
Fedora. The rpm-ostreed-automatic.timer is a leftover from ublue-os/main
days as we enable that for those images but disable it here as we use
uupd.

The Bazaar service got deleted and the need for that got completely
eliminated upstream recently.

[1] https://www.freedesktop.org/software/systemd/man/latest/systemd.preset.html
[2] https://github.com/get-aurora-dev/iso/issues/100

* chore: also do DX

* sunshine

we should make this a seperate thing as we want to still have this
disabled on the live iso

* deal with homebrew nonsense

* prefix with 89

so they can be overriden by others via preset files but still have more
priority over Fedora ones

* split fedora flatpak related services

so we can more easily keep this configuration active
2026-09-19 19:44:08 +00:00
renner
70d98ffa53
feat: bump testing to Fedora 45 (#2887)
* feat: bump testing to Fedora 45

We are using docker from their repo because it usually ships newer
versions faster than Fedora. In the meantime we can just ship Fedora's
docker version which is good enough.

xref: https://github.com/ublue-os/aurora/issues/2758

* renovate

* fix: cleanup hidden files in /tmp

Something specific to the DX build creates a bunch of socket files
(/tmp/.{ICE,X11,XIM,font}-unix) now. I have no idea what it is, it is
not the new docker package.
2026-09-18 03:41:26 +00:00
renner
20574d5e9c
feat: vendor package repo configurations (#2851)
We can get rid of the copr-helper wrapper script as we are no longer
enabling and then disabling the repo, which is explained in [1] as we
are configuring them to be off by default and then very purposefully
enabling it for that one dnf transaction where we actually need it
enabled.

The files in yum.repos.d were copied from my local /usr/etc directory.

[1] https://github.com/ublue-os/aurora/issues/1115
2026-09-12 16:02:11 +00:00
renner
14900734d0
refactor: repurpose build.sh as build preparation (#2701)
* refactor: repurpose build.sh as build preparation

It currently does too many things, let's split it up. This needs to be
done as we want to move away from a system that copies (also overrides)
files from fedora RPMs and then may remove said rpms, resulting in
removing our changes, which of course defeats the entire point.

A disadvantage this has is that we need to be more mindful and
disciplined of when things are needed during the build. Currently we
actually do not need any system_files we copy in the stage where we are
installing packages/have network access.

If we do at some point we will probably either inline files in
build-prep.sh or have a 2nd directory with files strictly needed for the
build.

This is why we can copy all the files to the system after that, just
before systemd units get activated, initramfs gets generated, general
things we can do offline after we have installed packages are done.

Resolves: https://github.com/ublue-os/aurora/issues/2687

* remove useless comment

* same treatment for DX

* remove unused DX specific version logic

We don't use this, we have branches now.

* move sysctl before docker install
2026-08-09 19:11:44 +00:00
renner
6365a13e88
feat: rename build_files to build_scripts (#2691)
This is more accurately describing what it actually is.

Assisted-by: GNU sed 4.9
2026-08-09 05:58:24 +00:00