Skip to content

Commit b046524

Browse files
committed
Add updates for phil-opp/blog_os
1 parent 9f7c299 commit b046524

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

content/this-month/2021-11/index.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,6 @@ If you maintain a Rust project related to operating system development and are l
9494

9595
In this section, we describe updates to personal projects that are not directly related to the `rust-osdev` organization. Feel free to [create a pull request](https://github.com/rust-osdev/homepage/pulls) with the updates of your OS project for the next post.
9696

97-
### [`phil-opp/blog_os`](https://github.com/phil-opp/blog_os)
98-
99-
<span class="gray">(Section written by [@phil-opp](https://github.com/phil-opp))</span>
100-
101-
This month, ...
102-
10397
### [`metta-systems/vesper`](https://github.com/metta-systems/vesper)
10498

10599
<span class="gray">(Section written by [@berkus](https://github.com/berkus))</span>
@@ -110,6 +104,14 @@ It's in very early stages of development and is a basis for a larger envisioned
110104

111105
Since [rebooting to Rust](https://metta.systems/blog/reboot-to-rust/) almost 4 years ago I've been constantly amazed by the language ecosystem and what wonders are possible. This time I want to tell about incredible tooling that makes my OSdev experience a sunny warm place in contrast to the barren lands of my previous OSdev environments. [Read the full article here](https://metta.systems/blog/osdev-tooling/).
112106

107+
### [`phil-opp/blog_os`](https://github.com/phil-opp/blog_os)
108+
109+
<span class="gray">(Section written by [@phil-opp](https://github.com/phil-opp))</span>
110+
111+
There were no visible changes to the [_Writing an OS in Rust_](https://os.phil-opp.com/) series this month, but I continued working on the new build system for the upcoming third edition. One particular change that I want to highlight is that I redesigned the configuration of the `bootloader` crate. Instead of passing it via [a `package.metadata.bootloader` section](https://docs.rs/bootloader/0.10.9/bootloader/struct.Config.html) in the kernel's `Cargo.toml`, users will pass a configuration struct to the [`entry_point`](https://docs.rs/bootloader/0.10.9/bootloader/macro.entry_point.html) macro. This struct is then serialized at compile time into a separate section in the ELF executable, which the bootloader can then read on loading. This change should make the build process easier and more flexible.
112+
113+
I plan to simplify the build system further, but I'm currently waiting on some upcoming `cargo` features for that. In particular, I think that [_artifact dependencies_](https://github.com/rust-lang/cargo/pull/9992) and [_per-packet configuration_](https://internals.rust-lang.org/t/proposal-move-some-cargo-config-settings-to-cargo-toml/13336) options will be very useful for the project, especially the config options I mentioned in my [status update comment](https://github.com/phil-opp/blog_os/issues/1063#issuecomment-968341112) on GitHub.
114+
113115
## Join Us?
114116

115117
Are you interested in Rust-based operating system development? Our `rust-osdev` organization is always open to new members and new projects. Just let us know if you want to join! A good way for getting in touch is our [gitter channel](https://gitter.im/rust-osdev/Lobby).

0 commit comments

Comments
 (0)