784cda
--- rustc-beta-src/Cargo.lock.orig	2022-10-04 10:55:48.797517289 -0700
784cda
+++ rustc-beta-src/Cargo.lock	2022-10-04 10:55:48.799517248 -0700
784cda
@@ -1026,7 +1026,6 @@
c3bb10
 dependencies = [
c3bb10
  "cc",
c3bb10
  "libc",
c3bb10
- "libnghttp2-sys",
c3bb10
  "libz-sys",
c3bb10
  "openssl-sys",
c3bb10
  "pkg-config",
784cda
@@ -1993,16 +1992,6 @@
601eff
 checksum = "7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a"
c3bb10
 
c3bb10
 [[package]]
c3bb10
-name = "libnghttp2-sys"
c3bb10
-version = "0.1.4+1.41.0"
c3bb10
-source = "registry+https://github.com/rust-lang/crates.io-index"
c3bb10
-checksum = "03624ec6df166e79e139a2310ca213283d6b3c30810c54844f307086d4488df1"
c3bb10
-dependencies = [
c3bb10
- "cc",
c3bb10
- "libc",
c3bb10
-]
c3bb10
-
c3bb10
-[[package]]
c3bb10
 name = "libz-sys"
bbd8b7
 version = "1.1.3"
c3bb10
 source = "registry+https://github.com/rust-lang/crates.io-index"
784cda
--- rustc-beta-src/src/tools/cargo/Cargo.toml.orig	2022-10-04 10:55:48.799517248 -0700
784cda
+++ rustc-beta-src/src/tools/cargo/Cargo.toml	2022-10-04 11:00:55.057162743 -0700
784cda
@@ -21,7 +21,7 @@
784cda
 cargo-platform = { path = "crates/cargo-platform", version = "0.1.2" }
0bc56f
 cargo-util = { path = "crates/cargo-util", version = "0.2.1" }
6a704c
 crates-io = { path = "crates/crates-io", version = "0.34.0" }
0bc56f
-curl = { version = "0.4.43", features = ["http2"] }
0bc56f
+curl = { version = "0.4.43", features = [] }
0bc56f
 curl-sys = "0.4.55"
bbd8b7
 env_logger = "0.9.0"
c3bb10
 pretty_env_logger = { version = "0.4", optional = true }
784cda
--- rustc-beta-src/src/tools/cargo/src/cargo/sources/registry/http_remote.rs.orig	2022-09-24 10:23:17.000000000 -0700
784cda
+++ rustc-beta-src/src/tools/cargo/src/cargo/sources/registry/http_remote.rs	2022-10-04 10:55:48.799517248 -0700
0bc56f
@@ -192,16 +192,8 @@
5737f7
         }
5737f7
         self.fetch_started = true;
5737f7
 
5737f7
-        // We've enabled the `http2` feature of `curl` in Cargo, so treat
5737f7
-        // failures here as fatal as it would indicate a build-time problem.
5737f7
-        self.multiplexing = self.config.http_config()?.multiplexing.unwrap_or(true);
5737f7
-
5737f7
-        self.multi
5737f7
-            .pipelining(false, self.multiplexing)
5737f7
-            .with_context(|| "failed to enable multiplexing/pipelining in curl")?;
5737f7
-
5737f7
-        // let's not flood the server with connections
5737f7
-        self.multi.set_max_host_connections(2)?;
5737f7
+        // Multiplexing is disabled because the system libcurl doesn't support it.
5737f7
+        self.multiplexing = false;
5737f7
 
5737f7
         self.config
5737f7
             .shell()
784cda
--- rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs.orig	2022-09-24 10:23:17.000000000 -0700
784cda
+++ rustc-beta-src/src/tools/cargo/src/cargo/core/package.rs	2022-10-04 10:55:48.800517227 -0700
5737f7
@@ -403,16 +403,9 @@
5737f7
         sources: SourceMap<'cfg>,
5737f7
         config: &'cfg Config,
5737f7
     ) -> CargoResult<PackageSet<'cfg>> {
5737f7
-        // We've enabled the `http2` feature of `curl` in Cargo, so treat
5737f7
-        // failures here as fatal as it would indicate a build-time problem.
c3bb10
-        let mut multi = Multi::new();
c3bb10
-        let multiplexing = config.http_config()?.multiplexing.unwrap_or(true);
c3bb10
-        multi
c3bb10
-            .pipelining(false, multiplexing)
601eff
-            .with_context(|| "failed to enable multiplexing/pipelining in curl")?;
c3bb10
-
c3bb10
-        // let's not flood crates.io with connections
c3bb10
-        multi.set_max_host_connections(2)?;
5737f7
+        // Multiplexing is disabled because the system libcurl doesn't support it.
c3bb10
+        let multi = Multi::new();
c3bb10
+        let multiplexing = false;
c3bb10
 
c3bb10
         Ok(PackageSet {
c3bb10
             packages: package_ids
5737f7
@@ -658,7 +651,7 @@
c3bb10
 macro_rules! try_old_curl {
c3bb10
     ($e:expr, $msg:expr) => {
c3bb10
         let result = $e;
c3bb10
-        if cfg!(target_os = "macos") {
c3bb10
+        if cfg!(any(target_os = "linux", target_os = "macos")) {
c3bb10
             if let Err(e) = result {
c3bb10
                 warn!("ignoring libcurl {} error: {}", $msg, e);
c3bb10
             }