diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 28cab45be40..48763213690 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -77,18 +77,13 @@ jobs:
           rustup-toolchain-install-master \
             -f \
             -n master "$RUSTC_HASH" \
+            -c cargo \
             -c rust-src \
             -c rustc-dev \
             -c llvm-tools \
             --host ${{ matrix.host_target }}
           rustup default master
 
-      # We need a nightly Cargo to run tests that depend on unstable Cargo features.
-      - name: Install latest nightly
-        uses: actions-rs/toolchain@v1
-        with:
-          toolchain: nightly
-
       - name: Show Rust version
         run: |
           rustup show
diff --git a/rustup-toolchain b/rustup-toolchain
index 3fbebe1565f..5b7e8f7fcd6 100755
--- a/rustup-toolchain
+++ b/rustup-toolchain
@@ -39,7 +39,7 @@ fi
 
 # Install and setup new toolchain.
 rustup toolchain uninstall miri
-rustup-toolchain-install-master -n miri -c rust-src -c rustc-dev -c llvm-tools -- "$NEW_COMMIT"
+rustup-toolchain-install-master -n miri -c cargo -c rust-src -c rustc-dev -c llvm-tools -- "$NEW_COMMIT"
 rustup override set miri
 
 # Cleanup.