fix(v0.7): bluebuild type:copy + livemedia-creator clean resultdir

bluebuild (159): 'type: files' module fails 'chmod: Operation not
permitted' inside its own bind-mounted /tmp/modules/files/files.sh
under buildah + privileged-podman in our runner. Switch all four
`type: files` modules to `type: copy` (low-level COPY, no chmod, no
helper script needed).

installer-iso (160): livemedia-creator refused build/out which
checkout had already created (Forgejo runner reuses workspace dir
between runs). rm -rf build/out before invocation; mkdir not needed,
livemedia-creator creates the dir itself.
This commit is contained in:
obsidian-ai 2026-05-07 01:55:08 +01:00
parent e71ccaf198
commit 0e99a32084
2 changed files with 20 additions and 19 deletions

View file

@ -62,7 +62,9 @@ jobs:
- name: Build installer ISO with livemedia-creator
run: |
set -euxo pipefail
mkdir -p build/out /var/lmc
# livemedia-creator refuses an existing non-empty resultdir.
rm -rf build/out
mkdir -p /var/lmc
ln -sfn "$GITHUB_WORKSPACE" /work
# livemedia-creator does NOT support --title (that's livecd-creator).
# --volid replaces it for the ISO volume label.

View file

@ -23,21 +23,21 @@ image-version: latest
modules:
# ── 1. veilor branding overlay ──────────────────────────────────
# Stamps our overlay/* tree onto the OCI image. KDE color scheme,
# Plymouth theme, SDDM theme, fontconfig, os-release.
- type: files
files:
- source: ../overlay
# `type: copy` is a low-level direct COPY (no chmod, no script).
# `type: files` was failing with `chmod: Operation not permitted` on
# the BlueBuild-shipped /tmp/modules/files/files.sh under buildah +
# podman privileged in our runner — the script tries to make itself
# executable inside its own bind-mounted layer.
- type: copy
source: ../overlay
destination: /
- type: files
files:
- source: ../assets
- type: copy
source: ../assets
destination: /usr/share/veilor-os/assets
- type: files
files:
- source: ../scripts
- type: copy
source: ../scripts
destination: /usr/share/veilor-os/scripts
# ── 2. Branding overrides at build time ─────────────────────────
@ -123,9 +123,8 @@ modules:
- htop
# ── 7. ujust recipes for opt-in components ──────────────────────
- type: files
files:
- source: config/just
- type: copy
source: config/just
destination: /usr/share/ublue-os/just
# ── 8. Service tuning: tailscale pre-disabled, yggdrasil idle ───