@@ -272,6 +272,8 @@ flag uninstall "only uninstall from the installation prefix"
272
272
valopt prefix " " " set installation prefix"
273
273
opt cargo 1 " install cargo with rust"
274
274
valopt date " " " use the YYYY-MM-DD nightly instead of the current nightly"
275
+ valopt rust-date " " " use the YYYY-MM-DD rust nightly instead of the current nightly"
276
+ valopt cargo-date " " " use the YYYY-MM-DD cargo nightly instead of the current nightly"
275
277
flag save " save the downloaded nightlies to ~/.rustup"
276
278
277
279
if [ $HELP -eq 1 ]
@@ -427,12 +429,12 @@ then
427
429
CFG_DATE=` date " +%Y-%m-%d" `
428
430
fi
429
431
430
- # If we're saving our nightlies, put them in $HOME/.rustup.
431
- if [ -n " ${CFG_SAVE} " ]
432
- then
433
- CFG_DOWNLOAD_DIR= " ${HOME} /.rustup/ ${CFG_DATE} "
434
- else
435
- CFG_DOWNLOAD_DIR =" ${CFG_TMP_DIR } "
432
+ if [ -z " ${CFG_RUST_DATE} " ] ; then
433
+ CFG_RUST_DATE= " ${CFG_DATE} "
434
+ fi
435
+
436
+ if [ -z " ${CFG_CARGO_DATE} " ] ; then
437
+ CFG_CARGO_DATE =" ${CFG_DATE } "
436
438
fi
437
439
438
440
RUST_URL=" https://static.rust-lang.org/dist"
@@ -450,10 +452,14 @@ CARGO_LOCAL_INSTALL_DIR="${CFG_TMP_DIR}/${CARGO_PACKAGE_NAME_AND_TRIPLE}"
450
452
CARGO_LOCAL_INSTALL_SCRIPT=" ${CARGO_LOCAL_INSTALL_DIR} /install.sh"
451
453
452
454
# add a date suffix if we want a particular nighly.
453
- if [ -n " ${CFG_DATE} " ];
455
+ if [ -n " ${CFG_RUST_DATE} " ];
456
+ then
457
+ RUST_URL=" ${RUST_URL} /${CFG_RUST_DATE} "
458
+ fi
459
+
460
+ if [ -n " ${CFG_CARGO_DATE} " ];
454
461
then
455
- RUST_URL=" ${RUST_URL} /${CFG_DATE} "
456
- CARGO_URL=" ${CARGO_URL} /${CFG_DATE} "
462
+ CARGO_URL=" ${CARGO_URL} /${CFG_CARGO_DATE} "
457
463
fi
458
464
459
465
verify_hash () {
@@ -494,9 +500,6 @@ download_package() {
494
500
if [ ! -e " ${local_tarball} " ]; then
495
501
msg " Downloading ${remote_tarball} to ${local_tarball} "
496
502
497
- mkdir -p " ${CFG_DOWNLOAD_DIR} "
498
- need_ok " failed to create create download directory"
499
-
500
503
" ${CFG_CURL} " -f -o " ${local_tarball} " ${remote_tarball} "
501
504
if [ $? -ne 0 ]
502
505
then
@@ -510,11 +513,10 @@ download_package() {
510
513
511
514
# Wrap all the commands needed to install a package.
512
515
install_package() {
513
- tarball_name =" $1 "
516
+ local_tarball =" $1 "
514
517
install_script=" $2 "
515
- local_tarball=" ${CFG_DOWNLOAD_DIR} /${tarball_name} "
516
518
517
- msg " Extracting ${tarball_name } "
519
+ msg " Extracting ${local_tarball } "
518
520
(cd " ${CFG_TMP_DIR} " && " ${CFG_TAR} " -xvf " ${local_tarball} " )
519
521
if [ $? -ne 0 ]; then
520
522
rm -Rf " ${CFG_TMP_DIR} "
@@ -542,8 +544,24 @@ install_packages() {
542
544
mkdir -p " ${CFG_TMP_DIR} "
543
545
need_ok " failed to create create temporary installation directory"
544
546
545
- RUST_LOCAL_TARBALL=" ${CFG_TMP_DIR} /${RUST_TARBALL_NAME} "
546
- CARGO_LOCAL_TARBALL=" ${CFG_TMP_DIR} /${CARGO_TARBALL_NAME} "
547
+ # If we're saving our nightlies, put them in $HOME /.rustup.
548
+ if [ -n " ${CFG_SAVE} " ]
549
+ then
550
+ RUST_DOWNLOAD_DIR=" ${HOME} /.rustup/${CFG_RUST_DATE} "
551
+ CARGO_DOWNLOAD_DIR=" ${HOME} /.rustup/${CFG_CARGO_DATE} "
552
+ else
553
+ RUST_DOWNLOAD_DIR=" ${CFG_TMP_DIR} "
554
+ CARGO_DOWNLOAD_DIR=" ${CFG_TMP_DIR} "
555
+ fi
556
+
557
+ mkdir -p " ${RUST_DOWNLOAD_DIR} "
558
+ need_ok " failed to create create download directory"
559
+
560
+ mkdir -p " ${CARGO_DOWNLOAD_DIR} "
561
+ need_ok " failed to create create download directory"
562
+
563
+ RUST_LOCAL_TARBALL=" ${RUST_DOWNLOAD_DIR} /${RUST_TARBALL_NAME} "
564
+ CARGO_LOCAL_TARBALL=" ${CARGO_DOWNLOAD_DIR} /${CARGO_TARBALL_NAME} "
547
565
548
566
download_package \
549
567
" ${RUST_URL} /${RUST_TARBALL_NAME} " \
@@ -556,12 +574,12 @@ install_packages() {
556
574
fi
557
575
558
576
install_package \
559
- " ${RUST_TARBALL_NAME } " \
577
+ " ${RUST_LOCAL_TARBALL } " \
560
578
" ${RUST_LOCAL_INSTALL_SCRIPT} "
561
579
562
580
if [ -z " ${CFG_DISABLE_CARGO} " ]; then
563
581
install_package \
564
- " ${CARGO_TARBALL_NAME } " \
582
+ " ${CARGO_LOCAL_TARBALL } " \
565
583
" ${CARGO_LOCAL_INSTALL_SCRIPT} "
566
584
fi
567
585
0 commit comments