Skip to content

feat(repo): centralized repositories.json catalog, multi-distro expansion & worker live sync - #8

Merged
brasga-a merged 1 commit into
mainfrom
feat/centralized-repositories-catalog
Sep 19, 2026
Merged

brasga-a merged 1 commit into
mainfrom
feat/centralized-repositories-catalog

Conversation

@brasga-a

Copy link
Copy Markdown
Owner

Summary

This PR establishes a centralized repository catalog repositories.json in the Git repository root as the single source of truth for official repositories, expands distribution coverage to 22 official repositories, and integrates live synchronization into the Cloudflare Worker.

1. Centralized repositories.json Catalog

  • Defined top-level repositories.json adhering to schema_version: "1.0".
  • Expanded from 10 to 22 official repositories across:
    • Arch Linux: arch-core, arch-extra, arch-multilib (ALPM)
    • Ubuntu: ubuntu-noble (24.04), ubuntu-resolute (26.04), ubuntu-jammy (22.04), ubuntu-focal (20.04) (DEB)
    • Debian: debian-bookworm (12), debian-trixie (13), debian-sid (unstable), debian-bullseye (11) (DEB)
    • Fedora: fedora-41, fedora-42, fedora-40 (RPM)
    • openSUSE: opensuse-tumbleweed, opensuse-leap-15-6 (RPM)
    • Alpine Linux: alpine-v3.20, alpine-edge (APK)
    • AlmaLinux & Rocky Linux: almalinux-9-baseos, almalinux-9-appstream, rocky-9-baseos, rocky-9-appstream (RPM)

2. Zero Duplication in pkg-core

  • crates/pkg-core/src/repository/config.rs now embeds repositories.json at compile-time via include_str!("../../../../repositories.json").
  • Added heuristic fallbacks for openSUSE, Alpine, AlmaLinux, and Rocky Linux.

3. Cloudflare Worker Dynamic Sync

  • infra/cloudflare/src/index.js fetches repositories.json directly from GitHub (raw.githubusercontent.com) with 5-minute CDN edge caching (cacheTtl: 300).
  • Any repository added or updated in git is instantly reflected on https://pkg.atlantic.sh/repositories without requiring manual worker redeployments.
  • Static fallback preserved for resilience against network failures.

4. Tests & Verification

  • Full test suite passing (cargo test --workspace).
  • cargo fmt --all --check and cargo clippy 100% clean.

@brasga-a
brasga-a merged commit 01fed48 into main Sep 19, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant