{"id":13648822,"url":"https://github.com/fitzgen/mach","last_synced_at":"2025-04-04T17:08:27.671Z","repository":{"id":26677153,"uuid":"30133810","full_name":"fitzgen/mach","owner":"fitzgen","description":"A rust interface to the Mach 3.0 kernel that underlies OSX.","archived":false,"fork":false,"pushed_at":"2022-08-19T20:25:59.000Z","size":149,"stargazers_count":82,"open_issues_count":8,"forks_count":28,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-04T13:50:26.067Z","etag":null,"topics":["ffi","mach","macos","osx","rust"],"latest_commit_sha":null,"homepage":"https://docs.rs/mach","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fitzgen.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}},"created_at":"2015-02-01T02:26:53.000Z","updated_at":"2025-01-21T17:41:57.000Z","dependencies_parsed_at":"2022-09-26T20:21:32.124Z","dependency_job_id":null,"html_url":"https://github.com/fitzgen/mach","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fitzgen%2Fmach","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fitzgen%2Fmach/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fitzgen%2Fmach/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fitzgen%2Fmach/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fitzgen","download_url":"https://codeload.github.com/fitzgen/mach/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247217184,"owners_count":20903009,"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":["ffi","mach","macos","osx","rust"],"created_at":"2024-08-02T01:04:34.462Z","updated_at":"2025-04-04T17:08:27.646Z","avatar_url":"https://github.com/fitzgen.png","language":"Rust","readme":"[![Build Status][travis_ci_badge]][travis_ci] [![Latest Version]][crates.io] [![docs]][docs.rs]\n\nA Rust interface to the **user-space** API of the Mach 3.0 kernel exposed in\n`/usr/include/mach` that underlies macOS and is linked via `libSystem` (and\n`libsystem_kernel`).\n\nThis library does not expose the **kernel-space** API of the Mach 3.0 kernel\nexposed in\n`SDK/System/Library/Frameworks/Kernel.framework/Versions/A/Headers/mach`. \n\nThat is, if you are writing a kernel-resident device drivers or some other\nkernel extensions you have to use something else. The user-space kernel API is\noften API-incompatible with the kernel space one, and even in the cases where\nthey match, they are sometimes ABI incompatible such that using this library\nwould have **undefined behavior**.\n\n# Usage\n\nAdd the following to your `Cargo.toml` to conditionally include mach on those\nplatforms that support it.\n\n```toml\n[target.'cfg(any(target_os = \"macos\", target_os = \"ios\"))'.dependencies.mach]\nversion = \"0.3\"\n```\n\nThe following crate features are available:\n\n* **deprecated** (disabled by default): exposes deprecated APIs that have been\n  removed from the latest versions of the MacOS SDKs. The behavior of using\n  these APIs on MacOS versions that do not support them is undefined (hopefully\n  a linker error).\n\n# Platform support\n\nThe following table describes the current CI set-up:\n\n| Target                | Min. Rust | XCode         | build | ctest | run |\n|-----------------------|-----------|---------------|-------|-------|-----|\n| `x86_64-apple-darwin` | 1.33.0    | 6.4 - 10.0    | ✓     | ✓     | ✓   |\n| `i686-apple-darwin`   | 1.33.0    | 6.4 - 10.0    | ✓     | ✓     | ✓   |\n| `i386-apple-ios`      | 1.33.0    | 6.4 - 9.4 [0] | ✓     | -     | -   |\n| `x86_64-apple-ios`    | 1.33.0    | 6.4 - 10.0    | ✓     | -     | -   |\n| `armv7-apple-ios`     | nightly   | 6.4 - 10.0    | ✓     | -     | -   |\n| `aarch64-apple-ios`   | nightly   | 6.4 - 10.0    | ✓     | -     | -   |\n\n[0] `i386-apple-ios` is deprecated in XCode 10.0.\n\n# License\n\nThis project is licensed under either of\n\n* A 2-clause BSD License ([LICENSE-BSD](LICENSE-BSD)), or\n* Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or\n  http://www.apache.org/licenses/LICENSE-2.0)\n* MIT license ([LICENSE-MIT](LICENSE-MIT) or\n  http://opensource.org/licenses/MIT)\n\nat your option.\n\n# Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in `mach` by you, as defined in the Apache-2.0 license, shall be\ntriple licensed as above, without any additional terms or conditions.\n\nTo locally test the library, run:\n\n```\nTARGET=x86_64-apple-darwin TRAVIS_RUST_VERSION=nightly ./ci/run.sh\n```\n\nwhere you can replace the `TARGET` and `TRAVIS_RUST_VERSION` with the target you\nwant to test (e.g. `i686-apple-darwin`) and the Rust version you want to use for\nthe tests (e.g. `stable`, `1.33.0`, etc.).\n\n[travis_ci]: https://travis-ci.org/fitzgen/mach\n[travis_ci_badge]: https://travis-ci.org/fitzgen/mach.png?branch=master\n[crates.io]: https://crates.io/crates/mach\n[Latest Version]: https://img.shields.io/crates/v/mach.svg\n[docs]: https://docs.rs/mach/badge.svg\n[docs.rs]: https://docs.rs/mach/\n","funding_links":[],"categories":["Rust"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffitzgen%2Fmach","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffitzgen%2Fmach","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffitzgen%2Fmach/lists"}