{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang/rust/issues/34687","repository_url":"https://api.github.com/repos/rust-lang/rust","labels_url":"https://api.github.com/repos/rust-lang/rust/issues/34687/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang/rust/issues/34687/comments","events_url":"https://api.github.com/repos/rust-lang/rust/issues/34687/events","html_url":"https://github.com/rust-lang/rust/issues/34687","id":164125741,"number":34687,"title":"rustbuild: Ensure that it's ready for distros","user":{"login":"alexcrichton","id":64996,"avatar_url":"https://avatars.githubusercontent.com/u/64996?v=3","gravatar_id":"","url":"https://api.github.com/users/alexcrichton","html_url":"https://github.com/alexcrichton","followers_url":"https://api.github.com/users/alexcrichton/followers","following_url":"https://api.github.com/users/alexcrichton/following{/other_user}","gists_url":"https://api.github.com/users/alexcrichton/gists{/gist_id}","starred_url":"https://api.github.com/users/alexcrichton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexcrichton/subscriptions","organizations_url":"https://api.github.com/users/alexcrichton/orgs","repos_url":"https://api.github.com/users/alexcrichton/repos","events_url":"https://api.github.com/users/alexcrichton/events{/privacy}","received_events_url":"https://api.github.com/users/alexcrichton/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/rust-lang/rust/labels/A-rustbuild","name":"A-rustbuild","color":"d7e102"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":10,"created_at":"2016-07-06T17:03:21Z","updated_at":"2016-07-09T01:39:42Z","closed_at":null,"body":"When moving to rustbuild we're going to be using Cargo as part of the build system which has historically been difficult to work with the requirements that Linux distributions have. Let's be sure that the transition process from the makefiles to rustbuild is a smooth one though and get ahead of any concerns here!\r\n\r\nMy current plan is to do the following:\r\n\r\n* Assume that distros arrange for us to have the correct stage0 rustc binary somewhere, configured via `--enable-local-rust` or `build.rustc` in `config.toml`.\r\n* Assume that distros arrange for us to have the correct stage0 cargo binary somewhere, configured similar to rustc above.\r\n* Use the [workspaces feature](https://github.com/rust-lang/cargo/pull/2759) in Cargo to ensure that there's only one `Cargo.lock` for the entire rust repo, so there's one list of what we depend on as part of the build with Cargo.\r\n* Use a vendoring solution similar to [what was proposed before](https://github.com/rust-lang/cargo/pull/2361) where our source tarballs will contain all our crates.io dependencies (e.g. gcc-rs, cmake-rs, and eventually other crates from crates.io used to build rustc).\r\n\r\nGiven all that, we will be able to build deterministically without network access, but perhaps this is not enough! I'm curious what others think about the assumptions here about rustc/cargo, or if there are other gotchas we should take care of as well.\r\n\r\ncc @cuviper, @anguslees, @lucab, @jauhien, @fabiand"},"comment":{"url":"https://api.github.com/repos/rust-lang/rust/issues/comments/231507350","html_url":"https://github.com/rust-lang/rust/issues/34687#issuecomment-231507350","issue_url":"https://api.github.com/repos/rust-lang/rust/issues/34687","id":231507350,"user":{"login":"alexcrichton","id":64996,"avatar_url":"https://avatars.githubusercontent.com/u/64996?v=3","gravatar_id":"","url":"https://api.github.com/users/alexcrichton","html_url":"https://github.com/alexcrichton","followers_url":"https://api.github.com/users/alexcrichton/followers","following_url":"https://api.github.com/users/alexcrichton/following{/other_user}","gists_url":"https://api.github.com/users/alexcrichton/gists{/gist_id}","starred_url":"https://api.github.com/users/alexcrichton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexcrichton/subscriptions","organizations_url":"https://api.github.com/users/alexcrichton/orgs","repos_url":"https://api.github.com/users/alexcrichton/repos","events_url":"https://api.github.com/users/alexcrichton/events{/privacy}","received_events_url":"https://api.github.com/users/alexcrichton/received_events","type":"User","site_admin":false},"created_at":"2016-07-09T01:39:42Z","updated_at":"2016-07-09T01:39:42Z","body":"Ok, awesome, thanks for the input everyone! Sounds like this can be a placeholder bug in that case for implementing two tasks:\r\n\r\n* Cargo workspaces\r\n* Vendoring sources in release artifacts\r\n\r\nI'll update the description accordingly."}}
{"actor":{"display_login":"alexcrichton"}}