Installing Tor Browser on Kali Linux ARM64 (M3 MacBook)
The Problem: Architecture Mismatch on Apple Silicon
Running Kali Linux on an M3 MacBook Pro presents a unique challenge that many users don’t realize until they hit their first compatibility issue: your system is ARM64, not x86-64. This became painfully clear when trying to install Tor Browser.
My Journey: The Wrong Download
Like many security professionals setting up a fresh Kali VM, I went to the Tor Project website to download Tor Browser. I downloaded what looked like the standard “Linux” version, extracted it to /home/kali/Downloads/tor-browser, and found myself stuck.
When I checked what I’d actually downloaded:
1
2
$ file Browser/firefox.real
Browser/firefox.real: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV)...
Meanwhile, my system architecture was:
1
2
3
4
5
$ uname -m
aarch64
$ dpkg --print-architecture
arm64
The binary was x86-64. My system is ARM64. They’re incompatible.
Understanding CPU Architectures: ARM64 vs x86-64
Before diving into the solution, let’s understand why this matters and what these terms mean.
x86-64 (AMD64)
- Also called: x86-64, x64, AMD64, Intel 64
- Used by: Traditional Intel and AMD processors
- Architecture: CISC (Complex Instruction Set Computer)
- Characteristics:
- Desktop and server standard for decades
- High performance, power-hungry
- Most software is compiled for this architecture
- Backwards compatible with 32-bit x86
ARM64 (aarch64)
- Also called: ARM64, aarch64, ARMv8
- Used by: Apple Silicon (M1/M2/M3), Raspberry Pi 4+, mobile devices
- Architecture: RISC (Reduced Instruction Set Computer)
- Characteristics:
- Power-efficient, excellent performance-per-watt
- Originally for mobile, now dominating laptop/desktop (Apple)
- Requires software specifically compiled for ARM
- No native backwards compatibility with x86
Why This Matters for M3 MacBook Users
When you run Kali Linux on an M3 MacBook:
- Your host CPU is ARM64 (Apple M3 chip)
- Your VM must also be ARM64 (Kali Linux ARM64 edition)
- All software you install must be ARM64-compatible
You cannot run x86-64 binaries natively on ARM64. While emulation exists (like Rosetta 2 on macOS), it’s not available inside your Linux VM for x86 binaries.
The Binary Format Problem
1
2
3
4
5
# x86-64 binary (won't work on ARM64)
ELF 64-bit LSB pie executable, x86-64
# ARM64 binary (correct for M3)
ELF 64-bit LSB pie executable, ARM aarch64
These are fundamentally different machine code instructions. An x86-64 program literally speaks a different “language” than your ARM64 processor understands.
Standard Tor Browser Installation (Mac, Windows, Linux x86-64)
Before we dive into the ARM64 complications, let’s cover how most people install Tor Browser on standard systems. If you’re running:
- Windows (any version)
- macOS on Intel Macs (pre-2020)
- macOS on Apple Silicon (M1/M2/M3/M4)
- Linux on x86-64 (standard desktop/laptop)
The installation is straightforward.
Windows Installation
Step 1: Download
- Visit: https://www.torproject.org/download/
- Click Download for Windows
- Save the
.exeinstaller (e.g.,torbrowser-install-win64-13.5.7.exe)
Step 2: Install
- Run the downloaded
.exefile - Choose installation language
- Select installation location (default:
C:\Users\<YourName>\Desktop\Tor Browser) - Click Install
Step 3: Launch
- Double-click Start Tor Browser icon on your desktop
- Click Connect (or configure if behind a firewall)
- Browse anonymously!
Installation time: 2-3 minutes
macOS Installation
For Intel Macs (Pre-2020)
Step 1: Download
- Visit: https://www.torproject.org/download/
- Click Download for macOS
- Look for Intel or x86-64 version
- Save the
.dmgfile (e.g.,TorBrowser-13.5.7-macos-x86_64.dmg)
Step 2: Install
- Open the downloaded
.dmgfile - Drag Tor Browser to your Applications folder
- Eject the disk image
Step 3: Launch
- Open Applications → Tor Browser
- Right-click and select Open (first time only, to bypass Gatekeeper)
- Click Connect
For Apple Silicon Macs (M1/M2/M3/M4)
Step 1: Download
- Visit: https://www.torproject.org/download/
- Click Download for macOS
- Select Apple Silicon version
- Save the
.dmgfile (e.g.,TorBrowser-13.5.7-macos-arm64.dmg)
Step 2-3: Same as Intel Macs above
Important: macOS users have two separate downloads - Intel and Apple Silicon. Make sure you download the correct version for your Mac’s CPU!
Linux x86-64 Installation (Standard)
For Ubuntu, Debian, Fedora, Arch and other x86-64 Linux distributions:
Method 1: Using Package Manager (Recommended)
Debian/Ubuntu/Kali (x86-64):
1
2
3
4
5
6
7
8
# Update package list
sudo apt update
# Install torbrowser-launcher
sudo apt install torbrowser-launcher -y
# Launch (will download and verify Tor Browser)
torbrowser-launcher
The launcher will:
- Download the latest stable Tor Browser
- Verify GPG signatures automatically
- Install to
~/.local/share/torbrowser/ - Create menu shortcuts
Fedora:
1
2
sudo dnf install torbrowser-launcher -y
torbrowser-launcher
Arch Linux:
1
2
yay -S torbrowser-launcher
torbrowser-launcher
Method 2: Manual Download (Universal)
Step 1: Download
1
2
3
4
5
6
7
cd ~/Downloads
# Download the tarball (check website for latest version)
wget https://www.torproject.org/dist/torbrowser/13.5.7/tor-browser-linux-x86_64-13.5.7.tar.xz
# Download signature for verification (optional but recommended)
wget https://www.torproject.org/dist/torbrowser/13.5.7/tor-browser-linux-x86_64-13.5.7.tar.xz.asc
Step 2: Extract
1
tar -xf tor-browser-linux-x86_64-13.5.7.tar.xz
Step 3: Launch
1
2
cd tor-browser
./start-tor-browser.desktop
Step 4: Register (Optional)
1
2
# Create desktop entry and menu shortcut
./start-tor-browser.desktop --register-app
Quick Comparison: Standard Installations
| Platform | Download Size | Install Method | Time Required |
|---|---|---|---|
| Windows | ~100 MB | GUI Installer | 2-3 minutes |
| macOS Intel | ~110 MB | DMG Drag & Drop | 1-2 minutes |
| macOS M-Series | ~110 MB | DMG Drag & Drop | 1-2 minutes |
| Linux x86-64 | ~100 MB | Package Manager or Tarball | 3-5 minutes |
Key Point: All these installations are official stable releases that auto-update and have full Tor Project support.
The Traditional Install Method (Doesn’t Work on ARM64)
Attempt 1: Standard Package Manager
The first instinct is to use apt:
1
$ sudo apt install torbrowser-launcher
Result: Dependency hell and architecture conflicts:
1
2
3
4
5
Error: Unable to satisfy dependencies. Reached two conflicting decisions:
1. python3:arm64 is selected for removal because:
torbrowser-launcher:amd64 Depends python3-gpg:amd64
python3:amd64 is available
python3:arm64 Conflicts python3:amd64
Why this fails: The torbrowser-launcher package in Kali repositories is AMD64-only:
1
2
3
4
5
6
$ apt-cache policy torbrowser-launcher
torbrowser-launcher:amd64:
Candidate: 0.3.7-3
Version table:
0.3.7-3 500
500 http://http.kali.org/kali kali-rolling/contrib amd64 Packages
Notice amd64 everywhere? That’s x86-64. No ARM64 version exists in the repos.
Attempt 2: Manual Download from Tor Website
The official Tor Project website primarily offers:
- Windows
- macOS (Intel and Apple Silicon separate downloads)
- Linux (x86-64 only)
If you download the “Linux” version without checking architecture, you’ll get x86-64 binaries that won’t execute on your ARM64 system.
The Solution: Official ARM64 Nightly Builds
Good News: Official ARM64 Support Exists!
As of 2025, Tor Browser provides official nightly builds for ARM64 Linux. These are alpha versions but generally stable and updated daily.
Why “Nightly” is Okay
- Nightly = Bleeding Edge: Latest features, daily updates
- Not Experimental: These builds are tested and functional
- Necessary for ARM64: Stable releases don’t support ARM yet
- Community Tested: Widely used by Raspberry Pi and ARM Linux users
Installation Methods
Option 1: .deb Package (Recommended)
Easiest method with proper system integration.
Step 1: Download the Package
1
2
3
4
cd /home/kali/Downloads
# Download today's ARM64 .deb package
wget https://nightlies.tbb.torproject.org/nightly-builds/tor-browser-builds/tbb-nightly.2025.11.17/nightly-linux-aarch64/tor-browser_14.5a8_arm64.deb
Note: Replace the date (2025.11.17) with the current date to get the latest build. Check available dates at: https://nightlies.tbb.torproject.org/nightly-builds/tor-browser-builds/
Step 2: Install the Package
1
sudo dpkg -i tor-browser_14.5a8_arm64.deb
Step 3: Fix Dependencies (if needed)
1
sudo apt --fix-broken install -y
Step 4: Launch Tor Browser
1
tor-browser
Or find it in your applications menu: Applications → Internet → Tor Browser
Option 2: Portable tar.xz Archive
Best for: Users who want a portable installation or don’t want system-wide install.
Step 1: Download and Extract
1
2
3
4
5
6
7
cd /home/kali/Downloads
# Download the tar.xz archive
wget https://nightlies.tbb.torproject.org/nightly-builds/tor-browser-builds/tbb-nightly.2025.11.17/nightly-linux-aarch64/tor-browser-linux-aarch64-tbb-nightly.2025.11.17.tar.xz
# Extract (creates tor-browser directory)
tar -xf tor-browser-linux-aarch64-tbb-nightly.2025.11.17.tar.xz
Step 2: Launch Tor Browser
1
2
cd tor-browser
./start-tor-browser.desktop
Optional: Create Desktop Shortcut
1
2
# Register the launcher
./start-tor-browser.desktop --register-app
Verification: Ensure You Got the Right Version
After installation, verify you have an ARM64 binary:
1
2
3
4
5
# For .deb install
file /opt/tor-browser/Browser/firefox.real
# For portable install
file ~/Downloads/tor-browser/Browser/firefox.real
Expected output:
1
Browser/firefox.real: ELF 64-bit LSB pie executable, ARM aarch64, version 1 (SYSV)...
If you see ARM aarch64, you’re golden!
Troubleshooting
“Cannot execute binary file: Exec format error”
Cause: You downloaded the x86-64 version instead of ARM64.
Solution: Remove the old version and download the ARM64 nightly build.
1
2
rm -rf /home/kali/Downloads/tor-browser
# Then follow Option 1 or 2 above
Dependency Errors with torbrowser-launcher
Cause: Package only exists for AMD64 architecture.
Solution: Don’t use torbrowser-launcher on ARM64. Use the manual download methods instead.
How to Find Latest Nightly Builds
The nightly build URL changes daily. To find the latest:
- Visit: https://nightlies.tbb.torproject.org/nightly-builds/tor-browser-builds/
- Find the most recent
tbb-nightly.YYYY.MM.DD/directory - Navigate to
nightly-linux-aarch64/ - Download either:
tor-browser_*_arm64.deb(for .deb install)tor-browser-linux-aarch64-tbb-nightly.*.tar.xz(for portable)
Performance on M3 MacBook
Expected Performance: Excellent! The M3’s ARM64 architecture means:
- Native execution (no emulation overhead)
- Better battery life
- Smooth browsing experience
- Fast Tor circuit establishment
Quick Reference: Architecture Detection
Save these commands for future compatibility checks:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# Check your CPU architecture
uname -m
# Output: aarch64 (ARM64) or x86_64 (x86-64)
# Check system package architecture
dpkg --print-architecture
# Output: arm64 or amd64
# Check a binary's architecture
file /path/to/binary
# Look for "ARM aarch64" or "x86-64"
# Check available package architectures
apt-cache policy package-name
Understanding Your M3 Kali VM Setup
The Full Stack
1
2
3
4
5
6
7
8
9
10
11
12
13
┌─────────────────────────────────────┐
│ Kali Linux ARM64 VM │
│ (Your working environment) │
├─────────────────────────────────────┤
│ Virtualization Layer │
│ (VMware/Parallels/UTM) │
├─────────────────────────────────────┤
│ macOS (ARM64) │
│ (Apple's operating system) │
├─────────────────────────────────────┤
│ Apple M3 Chip (ARM64) │
│ (Physical hardware) │
└─────────────────────────────────────┘
Key Point: Everything in this stack is ARM64. Installing x86-64 software breaks the chain.
Common ARM64 Limitations on Kali
Not all security tools are ARM64-compatible yet. You might encounter issues with:
- Closed-source tools (Burp Suite Pro, some exploits)
- Legacy tools (older exploits, some Windows PE tools)
- Docker images built for x86-64
Solutions:
- Check for ARM64 alternatives
- Use cloud-based x86-64 VMs for specific tools
- Compile from source when possible
- Use Docker with
--platform linux/arm64
Conclusion
Running Kali on Apple Silicon (M1/M2/M3) requires awareness of architecture compatibility. While most modern tools support ARM64, you’ll occasionally hit roadblocks like this Tor Browser installation.
Key Takeaways:
- Always check architecture before downloading binaries
- ARM64 ≠ x86-64 - they’re incompatible without emulation
- Nightly builds are perfectly fine for ARM64 users
- Official ARM64 support is growing rapidly
- M3 native performance is excellent when you use the right binaries
The extra effort is worth it—native ARM64 performance on M3 is exceptional, and as more tools adopt ARM64 support, the ecosystem will only improve.
Additional Resources
- Tor Browser Nightly Builds: https://nightlies.tbb.torproject.org/nightly-builds/tor-browser-builds/
- Tor Project ARM Discussion: https://forum.torproject.org/t/tor-browser-for-arm-linux/5240
- Kali ARM Documentation: https://www.kali.org/docs/arm/
- Apple Silicon Support Tracker: https://isapplesiliconready.com/
Note: This guide was written on 2025-11-17. Nightly build URLs and version numbers will change. Adjust dates in download URLs accordingly.
Support This Content
If this guide helped you get Tor Browser running on your ARM64 system, consider supporting more tutorials like this!
Every coffee helps fuel more deep-dive guides on Kali, security tools, and Apple Silicon compatibility. Cheers!