No description
Find a file
robojerk 7a21dda165
All checks were successful
Build ostree packages from sid to trixie / build (push) Successful in 56s
Add comprehensive debugging to identify build failure
- Add debugging output to see what happens during apt source ostree
- Add error handling to catch if apt source fails
- This will help identify where the build is actually failing
2025-09-06 09:57:42 -07:00
.forgejo/workflows Add comprehensive debugging to identify build failure 2025-09-06 09:57:42 -07:00
Dockerfile Fix Dockerfile: Remove non-existent Avahi UI packages 2025-09-06 08:52:46 -07:00
README.md first commit 2025-09-06 08:39:28 -07:00

OSTree Backport from Sid to Trixie

This repository contains the backport of OSTree packages from Debian Sid to Trixie to fix the library version issue with bootc.

Problem

The bootc command fails with:

[INFO] Installing bootc image to disk...
bootc: /lib/x86_64-linux-gnu/libostree-1.so.1: version `LIBOSTREE_2025.3' not found (required by bootc)

This happens because:

  • bootc requires libostree-1.so.1 version LIBOSTREE_2025.3
  • Trixie only has version 2025.2
  • Sid has version 2025.5 which includes LIBOSTREE_2025.3

Solution

Backport the following packages from Sid to Trixie:

Core OSTree Packages

  • ostree (2025.5-1) - Main OSTree package
  • libostree-1-1 (2025.5-1) - OSTree shared library
  • libostree-dev (2025.5-1) - Development headers
  • libostree-doc (2025.5-1) - Documentation
  • ostree-boot (2025.5-1) - Boot integration
  • gir1.2-ostree-1.0 (2025.5-1) - GObject introspection

Optional Packages

  • ostree-push (1.2.0-1) - Push functionality
  • ostree-tests (2025.5-1) - Test suite

Go Bindings (if needed)

  • golang-github-ostreedev-ostree-go-dev (0.0+git20210805.719684c64e4f-2)
  • golang-github-sjoerdsimons-ostree-go-dev (0.0~git20201014.8fae757-2)

Building

The CI workflow automatically:

  1. Clones ostree source from Debian Sid
  2. Builds all packages with proper dependencies
  3. Uploads to Forgejo Debian Registry
  4. Makes packages available for apt install

Usage

After the packages are built and uploaded:

# Add the repository (if not already added)
echo "deb [signed-by=/etc/apt/keyrings/forgejo-particle-os.asc] https://git.raines.xyz/api/packages/particle-os/debian trixie main" | sudo tee -a /etc/apt/sources.list.d/forgejo.list

# Update package lists
sudo apt update

# Install the updated ostree packages
sudo apt install ostree libostree-1-1

# Verify the version
ldd /usr/bin/bootc | grep libostree

CI Workflow

The .forgejo/workflows/ci.yml file:

  • Uses Docker to build packages in a clean environment
  • Downloads source from Debian Sid
  • Builds all OSTree packages
  • Uploads to Forgejo Debian Registry
  • Creates artifacts for manual installation

Manual Build

If you need to build manually:

# Clone this repository
git clone https://git.raines.xyz/particle-os/ostree.git
cd ostree

# Build with Docker
docker build -t ostree-build .
docker run -v $(pwd):/workspace ostree-build

# Install the built packages
sudo dpkg -i *.deb