{"id":13769094,"url":"https://github.com/ids1024/rust-minix","last_synced_at":"2026-01-04T04:32:20.488Z","repository":{"id":81428297,"uuid":"171062350","full_name":"ids1024/rust-minix","owner":"ids1024","description":"WIP Port of Rust's std to Minix","archived":false,"fork":false,"pushed_at":"2020-01-14T03:36:28.000Z","size":47,"stargazers_count":43,"open_issues_count":1,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-01-23T15:16:02.502Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ids1024.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-02-16T23:20:39.000Z","updated_at":"2024-05-29T02:57:39.000Z","dependencies_parsed_at":"2023-04-07T18:48:40.043Z","dependency_job_id":null,"html_url":"https://github.com/ids1024/rust-minix","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ids1024%2Frust-minix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ids1024%2Frust-minix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ids1024%2Frust-minix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ids1024%2Frust-minix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ids1024","download_url":"https://codeload.github.com/ids1024/rust-minix/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243980479,"owners_count":20378418,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":"2024-08-03T17:00:17.165Z","updated_at":"2026-01-04T04:32:20.459Z","avatar_url":"https://github.com/ids1024.png","language":"Makefile","funding_links":[],"categories":["Embedded development"],"sub_categories":["Stack Overflow"],"readme":"[![Build Status](https://travis-ci.org/ids1024/rust-minix.svg?branch=master)](https://travis-ci.org/ids1024/rust-minix)\n\nWIP Port of Rust's std to Minix\n===============================\n\nSome additional information on this port can by found in [my blog post introducing it](https://iandouglasscott.com/2019/02/18/cross-compiling-rust-code-to-minix/).\n\nFor the moment, this is set up to allow cross compiling from Linux. Other systems with Rust compiler may work, but are not tested.\n\n`make` is used to build a copy of `std` targeting Minix. Then the `cargo-minix` script can be used instead of cargo to set all the necessary environmental variables so that the `i586-unknown-minix` target and `std` is available.\n\n`cargo-minix` should either be run in a subdirectory of this repo, or the `.cargo` directory created by `make` must be copied.\n\n```bash\nexport MINIX_TOOLDIR=~/minix/obj.i386/tooldir.Linux-4.20.1-arch1-1-ARCH-x86_64\nexport MINIX_ROOT=~/minix/obj.i386/destdir.i386\n\nmake update-submodules\nmake\n\ncargo new --bin hello\ncd hello\n../cargo-minix build --target i586-unknown-minix --release\ncd ..\n\ngit clone https://github.com/ids1024/ripgrep -b minix\ncd ripgrep\n../cargo-minix build --target i586-unknown-minix --release\ncd ..\n```\n\n**NOTE**: Using a nightly compiler to build std from a fork of the rust repository, as done here, is not supported and not guaranteed to work, since std depends on unstable features that may change in later compiler versions. But the correct solution requires compiling rustc from the same source tree (while takes a long time and a lot of disk space). So this should be fine, but may break at any time (which is fixed by using an older nightly, or merging upstream into the rust fork).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fids1024%2Frust-minix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fids1024%2Frust-minix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fids1024%2Frust-minix/lists"}