diff --git a/README.md b/README.md index cb44e01b5..f352b7632 100644 --- a/README.md +++ b/README.md @@ -13,14 +13,6 @@ This crate makes it easy to develop Rust software that leverages **safe**, ## Description -[UEFI] started as the successor firmware to the BIOS in x86 space and developed -to a universal firmware specification for various platforms, such as ARM. It -provides an early boot environment with a variety of [specified][spec] -ready-to-use "high-level" functionality, such as accessing disks or the network. -EFI images, the files that can be loaded by an UEFI environment, can leverage -these abstractions to extend the functionality in form of additional drivers, -OS-specific bootloaders, or different kind of low-level applications. - Our mission is to provide **safe** and **performant** wrappers for UEFI interfaces, and allow developers to write idiomatic Rust code. @@ -38,10 +30,6 @@ You can use the abstractions for example to: - create OS-specific loaders and leverage UEFI boot service - access UEFI runtime services from an OS -All crates are compatible with all platforms that both the Rust compiler and -UEFI support, such as `i686`, `x86_64`, and `aarch64`). Please note that we -can't test all possible hardware/firmware/platform combinations. - [UEFI]: https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface ![UEFI App running in QEMU](https://imgur.com/SFPSVuO.png) @@ -128,11 +116,14 @@ most of the library's functionality. Check out the testing project's [`README.md`](uefi-test-runner/README.md) for prerequisites for running the tests. -## Contributing +## Discuss and Contribute + +For general discussions, feel free to join us in our [Zulip] and ask +your questions there. -We welcome issues and pull requests! For instructions on how to set up a -development environment and how to add new protocols, check out -[CONTRIBUTING.md](CONTRIBUTING.md). +Further, you can submit bugs and also ask questions in our [issue tracker]. +Contributions in the form of a PR are also highly welcome. Check our +[contributing guide](./CONTRIBUTING.md) for details. ## License @@ -143,3 +134,4 @@ modifications to the files must be open-sourced. The full text of the license is available in the [license file](LICENSE). [UEFI]: https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface +[Zulip]: https://rust-osdev.zulipchat.com diff --git a/uefi/src/lib.rs b/uefi/src/lib.rs index b69550f9e..22e13860e 100644 --- a/uefi/src/lib.rs +++ b/uefi/src/lib.rs @@ -7,15 +7,18 @@ //! important UEFI concepts. For more details of UEFI, see the latest [UEFI //! Specification][spec]. //! -//! Feel free to file bug reports and questions in our [issue tracker], and [PR -//! contributions][contributing] are also welcome! -//! //! # Interaction with uefi services //! //! With this crate you can write code for the pre- and post-exit boot services //! epochs. However, the `uefi` crate unfolds its true potential when //! interacting with UEFI boot services. //! +//! ## Supported Architectures +//! +//! `uefi` is compatible with all platforms that both the Rust compiler and +//! UEFI support, such as `i686`, `x86_64`, and `aarch64`. Please note that we +//! can't test all possible hardware/firmware/platform combinations in CI. +//! //! # Crate organisation //! //! The top-level module contains some of the most used types and macros, @@ -74,8 +77,34 @@ //! only unfold their potential when you invoke `uefi::helpers::init` as soon //! as possible in your application. //! +//! # Discuss and Contribute +//! +//! For general discussions, feel free to join us in our [Zulip] and ask +//! your questions there. +//! +//! Further, you can submit bugs and also ask questions in our [issue tracker]. +//! Contributions in the form of a PR are also highly welcome. Check our +//! [contributing guide][contributing] for details. +//! +//! # MSRV +//! +//! +//! The minimum supported Rust version is currently 1.70. +//! Our policy is to support at least the past two stable releases. +//! +//! # License +//! +//! +//! The code in this repository is licensed under the Mozilla Public License 2. +//! This license allows you to use the crate in proprietary programs, but any +//! modifications to the files must be open-sourced. +//! +//! The full text of the license is available in the [license file][LICENSE]. +//! +//! [LICENSE]: https://github.com/rust-osdev/uefi-rs/blob/main/uefi/LICENSE //! [Rust UEFI Book]: https://rust-osdev.github.io/uefi-rs/HEAD/ //! [UEFI]: https://uefi.org/ +//! [Zulip]: https://rust-osdev.zulipchat.com //! [`BootServices`]: table::boot::BootServices //! [`GlobalAlloc`]: alloc::alloc::GlobalAlloc //! [`SystemTable`]: table::SystemTable