Skip to content

Generate Build / config matrix dynamically instead of copy paste #23

Open

Description

@ChristopherHX

Currently it is a bit problematic to update the distro versions automatically etc. / with simple changes

Also considering using yaml anchors, so we only copy thins that changed between distribution versions.

Activity

  1. ChristopherHX commented on Dec 7, 2025

    @ChristopherHX
    MemberAuthor

    Script to check for debian trixie dependencies from ubuntu install e.g. libprotobuf32 is libprotobuf32t64 and has a red x.

    #!/bin/bash
    # Safe sandboxed apt check against Debian Trixie, ignoring keyring
    
    SANDBOX="/tmp/trixie-apt"
    
    # Clean old sandbox if exists
    rm -rf "$SANDBOX"
    mkdir -p "$SANDBOX"/{etc/apt,var/lib/apt/lists/partial,var/lib/dpkg}
    
    # Minimal dpkg status file (apt requires it)
    touch "$SANDBOX/var/lib/dpkg/status"
    
    # Sources list for Debian Trixie
    cat > "$SANDBOX/etc/apt/sources.list" <<EOF
    deb http://deb.debian.org/debian trixie main contrib non-free non-free-firmware
    deb http://security.debian.org/debian-security trixie-security main contrib non-free non-free-firmware
    EOF
    
    # Dependencies to check
    deps=(
      libc6
      ca-certificates
      libxcursor1
      libxinerama1
      libxi6
      libxrandr2
      qml6-module-qtquick
      qml6-module-qtquick-layouts
      qml6-module-qtquick-controls
      qml6-module-qtquick-window
      qml6-module-qtquick-dialogs
      qml6-module-qt-labs-settings
      qml6-module-qt-labs-folderlistmodel
      qml6-module-qtwebengine
      libqt6svg6
      libqt6concurrent6
      libqt6webenginewidgets6
      libzip5
      qml6-module-qtqml-workerscript
      qml6-module-qt-labs-platform
      qml6-module-qtquick-templates
      libprotobuf32
      libpulse0
      libatomic1
      libsecret-1-0
    )
    
    echo "Updating sandboxed apt metadata for Debian Trixie (ignoring keyring)..."
    apt-get -o Dir="$SANDBOX" \
            -o APT::Key::Verify=false \
            -o Acquire::AllowInsecureRepositories=true \
            -o Acquire::AllowDowngradeToInsecureRepositories=true \
            update >/dev/null
    
    echo "Checking packages..."
    echo "-------------------"
    
    for pkg in "${deps[@]}"; do
        info=$(apt-cache -o Dir="$SANDBOX" show "$pkg" 2>/dev/null)
        if [[ -z "$info" ]]; then
            echo "❌ $pkg: Not found in Trixie"
        else
            version=$(echo "$info" | grep -m1 "^Version:" | awk '{print $2}')
            echo "✅ $pkg: Available (version $version)"
        fi
    done
    
  2. pointydev commented on May 7, 2026

    @pointydev

    Fedora 44 is now available, as I mentioned in #21 (comment), meaning there is no Fedora 44 repository available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions