Skip to content
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

illumos toolchain builds #279

Closed
jclulow opened this issue Apr 28, 2020 · 8 comments
Closed

illumos toolchain builds #279

jclulow opened this issue Apr 28, 2020 · 8 comments
Labels
major-change A proposal to make a major change to rustc major-change-accepted A major change proposal that was accepted T-compiler Add this label so rfcbot knows to poll the compiler team

Comments

@jclulow
Copy link

jclulow commented Apr 28, 2020

TL;DR

Now that the illumos target has been integrated into Rust (see rust-lang/rust#55553 and rust-lang/rust#71145) we would like to have the official project CI produce x86_64-unknown-illumos toolchain binaries that can be installed with rustup. We are keen to build Rust-based software on illumos systems, and indeed even to allow Rust as an implementation language alongside C for core illumos programs, libraries, and kernel modules.

Links and Details

illumos is an open source UNIX operating system, with several actively maintained distributions such as OmniOS and SmartOS. Following some work by Rust community members, staff at Joyent, and most recently @pfmooney and myself, the toolchain and many crates are working quite well on our platform.

The Rust ecosystem has done a great job in producing documentation and tools, and in particular with easy toolchain management through rustup. We would like to get illumos toolchains to be built along with all of the other nightly (and eventually beta/stable) toolchains that are built today, so that users on illumos can also use rustup to install official binaries. Through some initial testing, we've been able to produce a functional prototype rustup that works on various illumos distributions today, albeit from one of our own webservers and with only the binaries we have built by hand.

In addition to binary availability through rustup we are keen to be active maintainers of our port, helping to ensure that any platform-specific issues are caught during CI and that we can help with any required fixes. To that end, @pfmooney and I (@jclulow) would agree to sign up to whatever GitHub group and/or to be notified or consulted on any issues that appear illumos-specific. I'm a member of the illumos core team, and Patrick has been working on illumos for quite some time, so we should be well-placed to help.

As part of our attempt to add an illumos host built to the CI environment, we initially created a new dist-x86_64-illumos image, in a similar vein to the existing dist-x86_64-freebsd and -netbsd builder images. Unfortunately it doesn't seem like there is capacity in the CI environment for an entirely new image, so as requested we have instead folded the build into the existing dist-various-2 builder image. That work is ongoing in rust-lang/rust#71272, which is what spurred the creation of this MCP.

Mentors or Reviewers

None as yet. Would welcome guidance! It seems like we at least need some folks from the infrastructure/CI side of things as well as whatever folks from the toolchain side.

@jclulow jclulow added the major-change A proposal to make a major change to rustc label Apr 28, 2020
@rustbot rustbot added the to-announce Announce this issue on triage meeting label Apr 28, 2020
@jclulow jclulow changed the title (My major change proposal) illumos toolchain builds Apr 28, 2020
@spastorino spastorino removed the to-announce Announce this issue on triage meeting label Apr 30, 2020
@davidtwco
Copy link
Member

@rustbot second

Personally, I'm interested in seeing better illumos support in Rust, it's a fascinating target. rust-lang/rust#71272 looks to be progressing and this MCP lists folks who would be willing to help review and maintain the target.

@rustbot rustbot added the final-comment-period The FCP has started, most (if not all) team members are in agreement label Jun 9, 2020
@nikomatsakis

This comment has been minimized.

@nikomatsakis
Copy link
Contributor

PS sorry @jclulow for the procedural hiccups, bear with us :)

@nikomatsakis nikomatsakis added the T-compiler Add this label so rfcbot knows to poll the compiler team label Jun 18, 2020
@nikomatsakis
Copy link
Contributor

It's not clear at the moment what protocol to use for approving things for distribution. But in our discussion on #312 we decided to start with a full check-off, since enabling rustup distribution is something that is hard (though not impossible, for sure) to walk back.

Therefore, I would like to propose to @rust-lang/compiler that we elevate illumos to a rustup-distributed target. I've discussed with @jclulow and gotten a preliminary list of names of folks that would help with maintenance.

@rfcbot fcp merge

@rfcbot
Copy link

rfcbot commented Jun 19, 2020

Team member @nikomatsakis has proposed to merge this. The next step is review by the rest of the tagged team members:

No concerns currently listed.

Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@jclulow
Copy link
Author

jclulow commented Jun 19, 2020

PS sorry @jclulow for the procedural hiccups, bear with us :)

No worries! Thanks for taking the time!

@rfcbot
Copy link

rfcbot commented Jun 22, 2020

🔔 This is now entering its final comment period, as per the review above. 🔔

psst @nikomatsakis, I wasn't able to add the final-comment-period label, please do so.

@rfcbot
Copy link

rfcbot commented Jul 2, 2020

The final comment period, with a disposition to merge, as per the review above, is now complete.

As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed.

The RFC will be merged soon.

psst @nikomatsakis, I wasn't able to add the finished-final-comment-period label, please do so.

@nikomatsakis nikomatsakis added the finished-final-comment-period The FCP has finished, action upon the disposition label needs to be taken label Jul 2, 2020
@spastorino spastorino added major-change-accepted A major change proposal that was accepted and removed final-comment-period The FCP has started, most (if not all) team members are in agreement finished-final-comment-period The FCP has finished, action upon the disposition label needs to be taken labels Jul 8, 2020
@rustbot rustbot added the to-announce Announce this issue on triage meeting label Jul 8, 2020
@spastorino spastorino removed the to-announce Announce this issue on triage meeting label Jul 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
major-change A proposal to make a major change to rustc major-change-accepted A major change proposal that was accepted T-compiler Add this label so rfcbot knows to poll the compiler team
Projects
None yet
Development

No branches or pull requests

6 participants