Linux WiFi drivers for 2012 MacBook Pro (Offline method)

Most Linux distributions don’t ship with the wireless drivers for the MacBook Pro 2012.

This method should work on any Linux distribution that supports this firmware.

This is an offline method; you will need a second computer to copy the zip archive specified and moved to the MacBook Pro 2012 or use Ethernet (with adapter) to download this archive.

The wireless chip is from Broadcom, and the firmware version is B43.

Download the zip archive by clicking this link.

Copy the file on a flash drive and move it into a folder on the MacBook Pro,

Now extract the archive.

Open Terminal and enter the commands specified below.

Let’s create the directory for the firmware.

sudo mkdir /lib/firmware/b43

Copy the firmware files into the folder, this command example assumes you copied and extracted the files on Desktop, if you choose any other location change the location after cp to the correct path.

sudo cp Desktop/b43/*  /lib/firmware/b43

After successfully copying the files it’s time to do some modprobe.

Enter the two commands specified below.

sudo modprobe -rv b43 
sudo modprobe -v b43

Now you should see the wireless applet detecting signal and the Wi-Fi option working in the network manager or gnome settings. If not, you might have to reboot.

Have a good day!

28 thoughts on “Linux WiFi drivers for 2012 MacBook Pro (Offline method)”

  1. Dear Daryl, I am so thankful for this post. I have been following all kind of complicated tutorials for two days trying to have my wifi card detected and I find your post, so simple so easy, straight to the point. Works like a charm. thank you.

  2. Unfortunately, this didn’t work for me even after a reboot. I’m running mid 2012 MacBook Air and Kali 2021.4a with a Broadcom 4360 wifi adapter. Any thoughts on why this isn’t working with this hardware configuration?

    • This method only works for 2012 MacBook Pro’s because these drivers are specific to that model of MacBooks, You would need to look for Broadcom 4360 firmware zip for Linux and follow the rest of the steps.

      I don’t have a MacBook Air, so I can’t tell what would work for it, but if I come accross something, I will post an update in a new comment.

      Have a great day.

  3. Yes, Thanks, worked straight away. I thoughtr it was going to take weeks to get working otherwise, or I was just going to try different distros to try and get something working.

  4. Thanks for this. It worked exactly as described. I’m just learning Linux, and terminal commands are new to me. Yay, it worked!
    Do I need to leave the folder on the desktop for the driver to keep working, or may I remove it once the Wifi is functioning? Thanks again.

  5. Hello Darryl,

    I got this to work on my first install but after reinstalling linux mint on my 2012 macbook pro my wifi is not detected. Any ideas why it isn’t working this time and what i can do? thank you.

    • Hi Alex, After you reinstall Linux Mint you would have to do the steps again, this install method needs to be done every time you do a fresh install or if an update overrides the driver.

      If you have more questions or comment over this feel free to reply to this and I will get back to you as soon as I can.

  6. After each shutdown or reboot you will need to open terminal and use the last two modprobe commands to get it working. To fix this, we need to make sure that the module is automatically loaded on boot with the following commands:

    sudo -i
    echo b43 >> /etc/modules
    exit
    You should be all set.

    If you find that you have a conflicting blacklist, please do so:

    sudo gedit /etc/modprobe.d/blacklist.conf

    Remove the line ‘blacklist b43’ Save and close gedit.

Leave a Comment