Rocky Linux 9.6 ARM64 installation and package update failed

on github action:

name: rocky build workflows

on:
  push:
    branches:
      - 'main'

permissions:
  contents: read

jobs:
  build:
    runs-on: ${{ matrix.runner }}
    container:
      image: rockylinux/rockylinux:${{ matrix.os_version }}
      options: --platform ${{ matrix.platform }}
    strategy:
      matrix:
        include:
          - arch: arm64
            runner: ubuntu-24.04-arm
            platform: linux/arm64
            artifact: Arm64
            os_version: 9       

    steps:
      - name: Checkout main repository code
        uses: actions/checkout@v4

      - name: Set TERM variable
        run: echo "TERM=xterm" >> $GITHUB_ENV
        
      - name: install system package
        run: |
            dnf update -y
            dnf install gcc g++ make git jq unzip wget -y

update failure:


install failure:
Complete!
Last metadata expiration check: 0:00:07 ago on Thu Jul 3 01:53:35 2025.
Error:
(try to add ‘–skip-broken’ to skip uninstallable packages or ‘–nobest’ to use not only best candidate packages)
Problem 1: package gcc-11.5.0-5.el9_5.aarch64 from appstream requires glibc-devel >= 2.2.90-12, but none of the providers can be installed

  • conflicting requests
  • nothing provides glibc = 2.34-168.el9_6.19 needed by glibc-devel-2.34-168.el9_6.19.aarch64 from appstream
    Problem 2: package gcc-c+±11.5.0-5.el9_5.aarch64 from appstream requires gcc = 11.5.0-5.el9_5, but none of the providers can be installed
  • package gcc-11.5.0-5.el9_5.aarch64 from appstream requires glibc-devel >= 2.2.90-12, but none of the providers can be installed
  • conflicting requests
  • nothing provides glibc = 2.34-168.el9_6.19 needed by glibc-devel-2.34-168.el9_6.19.aarch64 from appstream
    Error: Process completed with exit code 1.

I believe this is related to mirror propagation issues raised in https://forums.rockylinux.org/t/rocky-9-mirrors-out-of-sync-22-kernel-not-consistently-present/189211.

You can see the propagation status right now by looking at Propagation - Mirror Manager

As you can see, 50% of the mirrors do not have the most up-to-date files which I think is the cause of these update/dependency errors.

Unfortunately you will have to try again and hopefully you’ll get a mirror that has the packages. A few of the mirrors that I see in your output are unfortunately notorious for not being completely in sync with us when they should. This is something we’re looking into.

The propagation is based on repomd.xml and not individual files/packages. A mirror may have repomd.xml, but may be missing the other files either due to a sync being interrupted or another reason entirely. We have a few mirrors who are notorious for syncing repomd.xml but missing several packages, thus resulting in 404’s.

yes.
I changed it to this, and it’s sometimes good, sometimes not:

- name: install system package
  run: |
      dnf clean all
      dnf makecache
      dnf distro-sync -y
      dnf update -y
      dnf install gcc g++ make git jq unzip wget -y