Skip to content

Instantly share code, notes, and snippets.

@sinwoobang
Last active August 17, 2025 19:00
Show Gist options
  • Save sinwoobang/c83af540a2df8b149a59007e5f5814ec to your computer and use it in GitHub Desktop.
Save sinwoobang/c83af540a2df8b149a59007e5f5814ec to your computer and use it in GitHub Desktop.
Install curl supporting HTTP/3 on Apple Silicon
# Referred to https://dev.to/gjrdiesel/installing-curl-with-http3-on-macos-2di2
# Clean up any old version of curl you may have already tried to install
brew remove -f curl
# Download the curl ruby install script provided by cloudflare
curl -O https://gist.githubusercontent.com/sinwoobang/bfc7cc8d4d38157bde064fc2ccb60c64/raw/bf55b7c6af9ed06d2cd909ea167a69948a800e7d/curl.rb
# Install curl via that script from the latest git repos
brew install --HEAD -s curl.rb
# Tell your cli to use the curl version just installed (if you're using zsh, othwerise you might need `~/.bashrc`)
echo 'export PATH="/opt/homebrew/opt/curl/bin:$PATH"' >> ~/.zshrc
# Reload your config
source ~/.zshrc
# Double check it's using the right curl
which curl # Should output "/opt/homebrew/opt/curl/bin/curl"
# Double check http3
curl --version | grep HTTP3
# Try curl on any HTTP/3 enabled sites.
curl --http3 https://blog.cloudflare.com -I
@NitroCao
Copy link

The latest version of cURL (8.15.0) in Homebrew already supports HTTP3.

curl 8.15.0 (aarch64-apple-darwin24.4.0) libcurl/8.15.0 OpenSSL/3.5.1 zlib/1.2.12 brotli/1.1.0 zstd/1.5.7 AppleIDN libssh2/1.11.1 nghttp2/1.66.0 ngtcp2/1.13.0 nghttp3/1.10.1 librtmp/2.3
Release-Date: 2025-07-16
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss
Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment