mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-15 07:53:23 -05:00
refactor: write one contributing text for both pages
This commit is contained in:
1 parent
5c89ac6edc
commit
3730fa78c1
3 files changed
+59
-63
No files matched your search
@@ -3108,64 +3108,11 @@ def generate_cross_reference(
|
||||
|
||||
|
||||
def generate_contributing() -> str:
|
||||
return """# Contributing - RetroBIOS
|
||||
from generate_readme import contributing_text
|
||||
|
||||
## Add a BIOS file
|
||||
|
||||
1. Fork this repository
|
||||
2. Place the file in `bios/Manufacturer/Console/filename`
|
||||
3. Variants (alternate hashes for the same file): place in `bios/Manufacturer/Console/.variants/`
|
||||
4. Open a Pull Request - hashes are verified automatically and reported as a comment
|
||||
|
||||
The [dump provenance](provenance.md) page lists catalogued dumps still missing
|
||||
from the collection, with their hashes. A file matching one of those is the
|
||||
most useful contribution.
|
||||
|
||||
## Add a platform
|
||||
|
||||
1. Create a scraper in `scripts/scraper/` (inherit `BaseScraper`)
|
||||
2. Read the platform's upstream source to determine how it checks BIOS files
|
||||
3. Add an entry to `platforms/_registry.yml`
|
||||
4. Generate the platform YAML config
|
||||
5. Test: `python scripts/verify.py --platform <name>`
|
||||
|
||||
Full walkthrough: [adding a platform](wiki/adding-a-platform.md).
|
||||
|
||||
## Add an emulator profile
|
||||
|
||||
1. Clone the emulator's source code, upstream and libretro port
|
||||
2. Trace the file loading from the entry point, not from a keyword grep
|
||||
3. Document every file the code loads, with a `source_ref` line reference
|
||||
4. Write the YAML to `emulators/<name>.yml`
|
||||
5. Test: `python scripts/cross_reference.py --emulator <name>`
|
||||
|
||||
Full walkthrough: [profiling guide](wiki/profiling.md).
|
||||
|
||||
## File conventions
|
||||
|
||||
- `bios/Manufacturer/Console/filename` for canonical files
|
||||
- `bios/Manufacturer/Console/.variants/filename.sha1prefix` for alternate versions
|
||||
- Files >50 MB go in GitHub release assets (`large-files` release)
|
||||
- RPG Maker and ScummVM directories are excluded from deduplication
|
||||
- Two paths differing only by case break clones on Windows and macOS;
|
||||
`tests/test_no_case_collisions.py` enforces this
|
||||
|
||||
## Before opening a PR
|
||||
|
||||
```bash
|
||||
python -m unittest discover tests
|
||||
python scripts/pipeline.py --offline
|
||||
```
|
||||
|
||||
## PR validation
|
||||
|
||||
CI computes SHA1/MD5/CRC32 for every new file, checks them against the platform
|
||||
configs, validates the YAML against the schemas, runs the test suite, and posts
|
||||
a report on the PR.
|
||||
|
||||
Contributors who add platform support are credited in the README, on this site,
|
||||
and in the BIOS packs.
|
||||
"""
|
||||
return contributing_text(
|
||||
lambda page: f"{page}.md", "# Contributing - RetroBIOS", "on this site"
|
||||
)
|
||||
|
||||
|
||||
# Wiki pages
|
||||
|
||||
Reference in new issue
Block a user