-
Notifications
You must be signed in to change notification settings - Fork 13k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rewrite the rust-installer submodule in Rust #41569
Comments
I understand writing the package generators in Rust, but how can you do that for the installer itself? Doesn't that need to be platform-neutral? |
Oh sorry right I should clarify! I definitely do not think we should rewrite |
Great, makes sense. I'd like to work on this, if you don't already have someone else... |
Nah you're definitely more than welcome! |
@cuviper the "installer" logic is technically ported to rust already, it's built into rustup ( |
Ah, thanks! |
Here's my work in progress: https://github.com/cuviper/rust-installer/tree/oxidize One script down ( |
OK, I think that branch is ready to start reviewing. @alexcrichton I did this as an in-place port, but re-reading your original description, it sounds like you envisioned something entirely new. Well, from here we can take this whatever direction you want. Do you think this should still be used as a rust-installer submodule, or a new crate pulled into rust's own repo? Either way, we should be able to get rustbuild using this as a library, doing everything in-process. I haven't started on that yet, but the |
It's probably easiest to review if you put up the code as a PR. Could you do that? |
OK, see rust-lang/rust-installer#62. |
…richton Update to the Rusty rust-installer This updates the rust-installer submodule to the new version written in Rust (rust-lang/rust-installer#62), now moved to `src/tools/rust-installer` and invoked in `dist.rs` as a cargo-based tool command. All of the former shell-script invocations now invoke the tool, otherwise keeping the same arguments as before. As a small bonus, `rustc-src` now also uses the same tarball generator, so it gains a smaller `.tar.xz` too. Fixes rust-lang#41569. r? @alexcrichton
…richton Update to the Rusty rust-installer This updates the rust-installer submodule to the new version written in Rust (rust-lang/rust-installer#62), now moved to `src/tools/rust-installer` and invoked in `dist.rs` as a cargo-based tool command. All of the former shell-script invocations now invoke the tool, otherwise keeping the same arguments as before. As a small bonus, `rustc-src` now also uses the same tarball generator, so it gains a smaller `.tar.xz` too. Fixes rust-lang#41569. r? @alexcrichton
…richton Update to the Rusty rust-installer This updates the rust-installer submodule to the new version written in Rust (rust-lang/rust-installer#62), now moved to `src/tools/rust-installer` and invoked in `dist.rs` as a cargo-based tool command. All of the former shell-script invocations now invoke the tool, otherwise keeping the same arguments as before. As a small bonus, `rustc-src` now also uses the same tarball generator, so it gains a smaller `.tar.xz` too. Fixes rust-lang#41569. r? @alexcrichton
…richton Update to the Rusty rust-installer This updates the rust-installer submodule to the new version written in Rust (rust-lang/rust-installer#62), now moved to `src/tools/rust-installer` and invoked in `dist.rs` as a cargo-based tool command. All of the former shell-script invocations now invoke the tool, otherwise keeping the same arguments as before. As a small bonus, `rustc-src` now also uses the same tarball generator, so it gains a smaller `.tar.xz` too. Fixes rust-lang#41569. r? @alexcrichton
Update to the Rusty rust-installer This updates the rust-installer submodule to the new version written in Rust (rust-lang/rust-installer#62), now moved to `src/tools/rust-installer` and invoked in `dist.rs` as a cargo-based tool command. All of the former shell-script invocations now invoke the tool, otherwise keeping the same arguments as before. As a small bonus, `rustc-src` now also uses the same tarball generator, so it gains a smaller `.tar.xz` too. Fixes #41569. r? @alexcrichton
The rust-installer repository has long served the purpose of generating manifests and installers for all of our standard artifacts. Over time though it's unfortunately really showing its age as it's become more and more difficult to maintain over time. With rustbuild nowadays let's take this opportunity to rewrite it into Rust!
This transition would most likely look like:
src/tools/installer
src/tools/installer/Cargo.toml
dist.rs
torust-installer/*.sh
to calls into this new project. For an example of invoking a tool written in Rust, you can see how we callcargotest
This'd be a great opportunity for anyone looking to get their feet wet with Rust's distribution infrastructure and build system! It's also a relatively meaty project to boot :)
The text was updated successfully, but these errors were encountered: