Skip to main content

Open Mirror Definition File

A tiny specification for defining mirrors, made for both humans and programs to consume.

Why does this exist?

As I started migrating to a one canonical to many read-only mirrors model for my repositories, it got really hard to communicate to people (and now AIs) where and how to find these mirrors and in what order to try them. So it sparked this, a tiny specification for me and hopefully others to specify how and where to access their code.

What does an OMDF.yml file look like?

A simple OMDF.yml file looks something like this...

# Open Mirror Definition File
# ---------------------------
# Higher equals better
# 
# View the specification and its Python type definitions here:
# https://forge.kemonomimi.moe/otakuemily/omdf

mirrors:
  github.com:
    source: https://github.com/amy/a-super-cool-project
    weight: 30
    writable: false

  gitlab.com:
    source: https://gitlab.com/amy/a-super-cool-project
    weight: 20
    writable: false

  codeberg.org:
    source: https://codeberg.org/amy/a-super-cool-project
    weight: 10
    canonical: true
    writable: true

OMDF Rules

  • A OMDF file MUST be represented in YAML (with either .yml or .yaml extention).
  • The file MUST be called OMDF.{yml,yaml}.

OMDF SDK

The specification type definitions SDK can be found on PyPI and the Kemonoforge Package Registry.

Metadata

Release files for omdf 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for omdf 0.0.2
File Size Uploaded
omdf-0.0.2.tar.gz 2.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for omdf 0.0.2
File Interpreter ABI Platform
omdf-0.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 7.7 kB

Release files / omdf-0.0.2.tar.gz

Download URL omdf-0.0.2.tar.gz
Size 2.7 kB
Tags Source
SHA-256 checksum
How to use checksums
4fb892cadd4ff7d7e2025679334d13a0cd09f213045db6b03f72edfc106d4281
BLAKE2b-256 checksum
How to use checksums
38e430f066540b60b2bf5f3873c78b62ac9d64b2e242809496e3e87fdccca171
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / omdf-0.0.2-py3-none-any.whl

Download URL omdf-0.0.2-py3-none-any.whl
Size 5.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d7154af387f95252927956101d05cc11437cdc251ea517808e77e3cfe2c3cd09
BLAKE2b-256 checksum
How to use checksums
4a5eef675b88b3a6b794b695f12be27ea2a8807ae61bba86c70ba511cd7c026a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.0.2 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page