Fix --without-components with subsetted components It's not entirely clear what changed in 1.66, but rust-lang/rust#105755 shows that we are failing to run the install script with --without if there are subsetted component names. This changes the behavior of the filtering to require an *exact* match rather than a partial match, which seems like the better way to go. It's not very clear to me that the previous behavior was actually a good idea.
A generator for the install.sh script commonly used to install Rust in Unix environments. It is used By Rust, Cargo, and is intended to be used by a future combined installer of Rust + Cargo.
./gen-installer.sh --product-name=Rust \
--rel-manifest-dir=rustlib \
--success-message=Rust-is-ready-to-roll. \
--image-dir=./install-image \
--work-dir=./temp \
--output-dir=./dist \
--non-installed-overlay=./overlay \
--package-name=rustc-nightly-i686-apple-darwin \
--component-name=rustc \
--legacy-manifest-dirs=rustlib \
--bulk-dirs=share/doc
Or, to just generate the script.
./gen-install-script.sh --product-name=Rust \
--rel-manifest-dir=rustlib \
--success-message=Rust-is-ready-to-roll. \
--output-script=install.sh \
--legacy-manifest-dirs=rustlib
Note: the dashes in success-message are converted to spaces. The script's argument handling is broken with spaces.
To combine installers.
./combine-installers.sh --product-name=Rust \
--rel-manifest-dir=rustlib \
--success-message=Rust-is-ready-to-roll. \
--work-dir=./temp \
--output-dir=./dist \
--non-installed-overlay=./overlay \
--package-name=rustc-nightly-i686-apple-darwin \
--legacy-manifest-dirs=rustlib \
--input-tarballs=./rustc.tar.gz,cargo.tar.gz
This software is distributed under the terms of both the MIT license and/or the Apache License (Version 2.0), at your option.
See LICENSE-APACHE, LICENSE-MIT for details.