{"id":51303658,"url":"https://github.com/gerph/riscos64-rust-core","last_synced_at":"2026-06-30T22:04:36.892Z","repository":{"id":363418135,"uuid":"1263229317","full_name":"gerph/riscos64-rust-core","owner":"gerph","description":"A RISC OS 64 Rust core implementation","archived":false,"fork":false,"pushed_at":"2026-06-08T19:57:54.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-06-08T21:24:39.756Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gerph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-06-08T18:47:00.000Z","updated_at":"2026-06-08T19:57:57.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/gerph/riscos64-rust-core","commit_stats":null,"previous_names":["gerph/riscos64-rust-core"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/gerph/riscos64-rust-core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos64-rust-core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos64-rust-core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos64-rust-core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos64-rust-core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gerph","download_url":"https://codeload.github.com/gerph/riscos64-rust-core/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gerph%2Friscos64-rust-core/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34984786,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-30T02:00:05.919Z","response_time":92,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-06-30T22:04:36.302Z","updated_at":"2026-06-30T22:04:36.887Z","avatar_url":"https://github.com/gerph.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# riscos64-rust-core\n\nThis repository builds packaged Rust target-library payloads for RISC OS 64-bit\nwork based on the upstream `aarch64-unknown-none` target.\n\nMilestone 2 adds upstream `alloc` while keeping the milestone 1 `core`-only\npayload available as a compatibility profile. It still does not include `std`\nor any RISC OS-specific Rust OS bindings.\n\n## What this repo produces\n\nEach build profile creates a zip file containing:\n\n- a deterministic `rustlib/aarch64-unknown-none/lib/` subtree\n- the `libcore` and `libcompiler_builtins` artifacts built from source\n- the `alloc` profile also includes `liballoc`\n- a simple manifest describing the toolchain and target used\n\nThe payload is intended to be installed into the Rust toolchain tree used in the\nRISC OS build environment.\n\nGitHub Actions publishes both profiles. Tagged releases attach:\n\n- `RISCOS64-RustCore-\u003cversion\u003e.zip` for the alloc-inclusive default payload\n- `RISCOS64-RustCore-coreonly-\u003cversion\u003e.zip` for the core-only compatibility payload\n\n## Builder model\n\nThe repo uses a repo-local Rustup installation and nightly toolchain for\nbuilding upstream Rust libraries from source. The shared user toolchain does not\nneed to be changed.\n\nThe builder uses:\n\n- nightly Cargo\n- `rust-src`\n- `-Z build-std=core,compiler_builtins` for the `core` profile\n- `-Z build-std=core,alloc,compiler_builtins` for the `alloc` profile\n\nThe scripts bootstrap their own Rustup installation under `.local-cargo/` and\n`.local-rustup/`.\n\nThe builder also needs a host C toolchain on the Linux side because\n`compiler_builtins` uses a host build script. In this environment that meant\ninstalling `build-essential`.\n\n## Quick start\n\nBuild and package the alloc-inclusive payload:\n\n```sh\n./scripts/build-alloc.sh\n```\n\nBuild the core-only compatibility payload:\n\n```sh\n./scripts/build-core.sh\n```\n\nValidate the alloc-inclusive payload:\n\n```sh\n./scripts/validate-alloc.sh\n```\n\nValidate that the core-only payload can still link a direct Rust object into an\nAIF:\n\n```sh\n./scripts/validate-link.sh\n```\n\nThe validation script intentionally compiles the test object with the same\n`build-std` flow as the packaged payload. A raw `rustc` compile against the\ntoolchain sysroot can produce mismatched `core` symbol hashes.\n\n## Output\n\nThe build products are written under `build/`:\n\n- `build/payload/core/` unpacked core-only payload tree\n- `build/payload/alloc/` unpacked alloc-inclusive payload tree\n- `build/dist/` zip release artifacts\n- `build/target/` Cargo build output\n- `build/validate/` per-profile validation outputs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgerph%2Friscos64-rust-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgerph%2Friscos64-rust-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgerph%2Friscos64-rust-core/lists"}