Skip to content

Instantly share code, notes, and snippets.

@jamespamplin
Last active July 26, 2025 11:17
Show Gist options
  • Select an option

  • Save jamespamplin/7a803fd5be61d4f93e0c5dcdea3f99ee to your computer and use it in GitHub Desktop.

Select an option

Save jamespamplin/7a803fd5be61d4f93e0c5dcdea3f99ee to your computer and use it in GitHub Desktop.

The current kernel/drivers of Fedora 24 do not support the Wifi chip used on my Mac Book Pro. Proprietary Broadcom drivers are packaged and available in the rpmfusion repo.

Verify that your card is a Broadcom using: lspci -vnn -d 14e4:

Sample output:

02:00.0 Network controller [0280]: Broadcom Corporation BCM4360 802.11ac Wireless Network Adapter [14e4:43a0] (rev 03)

Install

Install the rpmfusion repo, note only "nonfree" is required, as the Broadcom Driver is proprietry: http://rpmfusion.org/

su -c 'dnf install -y http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm'

Then install the akmods and kernel-devel packages (special thanks to @celsom3 for providing this):

sudo dnf install -y akmods "kernel-devel-uname-r == $(uname -r)"

Finally install broadcom-wl package from the rpmfusion repo, which will install kmod-wl, akmod-wl, and other dependencies.

sudo dnf install -y broadcom-wl

Next run akmods to rebuild the kernel extension in the broadcom-wl package:

sudo akmods

Finally, reboot Fedora.

Troubleshooting

  • lsmod to list all kernel modules
  • sudo modprobe wl will force the wireless kernel extension to load.
  • sudo systemctl restart NetworkManager
@wwweeds

wwweeds commented Jul 25, 2016

Copy link
Copy Markdown

Celsom3, that worked perfectly for me on my new fedora24 build on my MacBook! Thanks!

@g13n

g13n commented Aug 10, 2016

Copy link
Copy Markdown

Celsom3, I can also confirm your instructions worked perfectly on Fedora 24 on my MacBook Pro.
Thanks!

@shi27feng

Copy link
Copy Markdown

What about the Macbook pro made in late 2014 or earlier 2015? How to solve it since there's no wire connection available, dnf won't work. Thanks a lot!

@alan-soares-dev

Copy link
Copy Markdown

Celsom3, Worked for me too! MacBook Pro late 2011.

@jamespamplin

Copy link
Copy Markdown
Author

@celsom3 thanks so much for providing your fix! Confirmed on a clean install of mine too. I've updated the instructions to reflect.

@jamespamplin

Copy link
Copy Markdown
Author

@shi27feng sorry I missed your question, theres no notifications on gist 😦

The easiest way is to use a lightning to ethernet adapter. Otherwise you might be able to download the packages individually from another computer, but that will be difficult with their dependencies. Not sure of a simple way to do this, sorry.

@caa

caa commented Oct 17, 2016

Copy link
Copy Markdown

I had issues getting RPM Fusion working. They seem to have changed to HTTPS-only?

http://rpmfusion.org/Configuration

su -c 'dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm'

I got WiFi working on Fedora 25 Beta. Thanks for the gist!

@hngouveia01

Copy link
Copy Markdown

Do you want to share your ethernet connection through your WiFi?

If so, you can take full advantage of your driver by downloading the broadcom driver, compiling and installing it:

(AND for those using Fedora 24 kernel 4.7.x and having trouble with this solution):

You can clone this repository that I've made and run install.sh
https://github.com/hngouveia01/hybrid-v35_64-nodebug-pcoem-6_30_223_271

Or you can also download the driver at http://www.broadcom.com/support/802.11
(64 bits) http://www.broadcom.com/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz

apply the patch found at
https://github.com/USA-RedDragon/broadcom-wl-dkms/commit/52ef285fd9c688bb8b161b64d5dd1c4a8f2a1c4f

compile it and install it.

@danilogco

Copy link
Copy Markdown

Thank you!

@rtjfarrimond

Copy link
Copy Markdown

Total Linux noob here, trying to do this on macbook pro early 2008 model with Fedora 25. When running sudo dnf install -y akmods "kernel-devel-uname-r == $(uname -r)" I get the following output:

Last metadata expiration check: 0:26:40 ago on Sat Jan 7 14:51:05 2017. No package akmods available. Error: Unable to find a match.

Any clues as to why this might not work?

@default-writer

default-writer commented Jan 22, 2017

Copy link
Copy Markdown

@rtjfarrimond:

Use https versions

su -c 'dnf install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm'
su -c 'dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm'

@poltys

poltys commented Feb 27, 2017

Copy link
Copy Markdown

Since the last update, I have lost my Wifi and I am totally clueless here:

akmods
Checking kmods exist for 4.8.6-300.fc25.x86_64 [ OK ]

sudo modprobe wl
modprobe: ERROR: could not insert 'wl': Permission denied

NB: I removed and reinstalled everything.

If someone has any tips to share, it would be fantastic!

@poltys

poltys commented Feb 27, 2017

Copy link
Copy Markdown

Okay SELinux was to blame:
https://bugzilla.redhat.com/show_bug.cgi?id=1426741

sudo setenforce 0
sudo modprobe wl
sudo setenforce 1

@pietroiusti

Copy link
Copy Markdown

Thank you! It worked perfectly. MacBook Pro late 2011 Fedora 25

@samiraguiar

Copy link
Copy Markdown

Thank you @jamespamplin and @celsom3, it worked perfectly on Fedora 25 running on Macbook Pro Early 2011!

@davidaparicio

Copy link
Copy Markdown

Thanks you! It worked perfectly. MacBook Air late 2014 Fedora 26 :)

@NixImagery

Copy link
Copy Markdown

Thank you so much for this. It worked perfectly on a mid 2009 Macbook Pro with Fedora 27.

@Xiol

Xiol commented Feb 14, 2018

Copy link
Copy Markdown

All good on a MacBook 11,x (late-2013) with Fedora 27. Thanks.

@Gh0stlyKn1ght

Copy link
Copy Markdown

Thank you works like a charm!

@alexismansilla

Copy link
Copy Markdown

Thank you 👍

@ryancheta

Copy link
Copy Markdown

well this is completely useless when you've a MacBook pro WITHOUT an ethernet port. How are we suppose to install a repo when we aint got internet connection in the first place!!??? Guess y'all didn't consider that

@Minkiu

Minkiu commented Sep 27, 2018

Copy link
Copy Markdown

well this is completely useless when you've a MacBook pro WITHOUT an ethernet port. How are we suppose to install a repo when we aint got internet connection in the first place!!??? Guess y'all didn't consider that

Use your phone (usb) tethering.

On another note, just report that this steps worked for Fedora 28 on a MacBook Pro (13-inch, Early 2011).

@remipoulenard

Copy link
Copy Markdown

Thank you so much, it worked perfectly fine on a dual-boot with osx mojave on a macbook pro retina mid-2014 !

@fredfortier

fredfortier commented Apr 17, 2019

Copy link
Copy Markdown

I tried this tutorial with a mid-2014 MacBook Pro and Fedora 29. Note that UnitedRPMs also publish the driver: https://github.com/UnitedRPMs/broadcom-wl-dkms

$ modinfo wl
filename:       /lib/modules/5.0.7-200.fc29.x86_64/extra/wl/wl.ko
license:        MIXED/Proprietary
alias:          pci:v*d*sv*sd*bc02sc80i*
depends:        cfg80211
retpoline:      Y
name:           wl
vermagic:       5.0.7-200.fc29.x86_64 SMP mod_unload
parm:           passivemode:int
parm:           wl_txq_thresh:int
parm:           oneonly:int
parm:           piomode:int
parm:           instance_base:int
parm:           nompc:int
parm:           intf_name:string

It works but it's highly unreliable for me. The wl adapter drops its internet access frequently. I tried finding errors in the system logs but nothing stood out. Anyone else having similar issues?

As a workaround, I created a cron job with the following script to keep the connection alive:

#!/bin/bash
x=`ping -c1 google.com 2>&1 | grep unknown`
if [ ! "$x" = "" ]; then
   echo "Network down!! Attempting to restart."
   systemctl restart NetworkManager
else
   echo "Network up"
fi

@DangerFone

DangerFone commented May 26, 2019

Copy link
Copy Markdown

Okay SELinux was to blame:
https://bugzilla.redhat.com/show_bug.cgi?id=1426741

sudo setenforce 0
sudo modprobe wl
sudo setenforce 1

Worked perfectly for me on Mid-2013 Macbook Air running F30; but I had to run @poltys inputs. Maybe this step should be included in the instructions now, too. Keeping an eye on connection stability a la @fredfortier. So far so good.

@acypert

acypert commented Jul 17, 2019

Copy link
Copy Markdown

Mostly worked like a charm on Fedora 30 on late 2008 model Macbook (unibody). I just had to adjust NetworkManager.conf file with then reboot:

Try to put:

[device]
wifi.scan-rand-mac-address=no

in /etc/NetworkManager/NetworkManager.conf

See: https://ask.fedoraproject.org/t/wifi-not-working-on-mac-mini-after-installing-fedora/827/4

@Villarrealized

Copy link
Copy Markdown

I had to omit the second equal sign for the following line on Fedora 32:

sudo dnf install -y akmods "kernel-devel-uname-r == $(uname -r)"

Running it with both equal signs produced the following error:

$ sudo dnf install akmods "kernel-devel-uname-r == $(uname -r)"
Last metadata expiration check: 0:15:14 ago on Fri 15 May 2020 12:41:50 PM MDT.
Package akmods-0.5.6-25.fc32.noarch is already installed.
No match for argument: kernel-devel-uname-r == 5.6.6-300.fc32.x86_64
Error: Unable to find a match: kernel-devel-uname-r == 5.6.6-300.fc32.x86_64

@orrmy

orrmy commented Oct 30, 2020

Copy link
Copy Markdown

Thanks a lot! I had almost given up when I found this...

But now I can confirm it works flawlessly in Fedora 33 on my late 2013 15" MBP, with Villarealized's modification.

@zwalex

zwalex commented Sep 7, 2022

Copy link
Copy Markdown

Trying this on a late 2009 Mac Mini with Fedora Server 36.
After running akmods, I saw the following on dmesg:
[ 1251.670088] wl: loading out-of-tree module taints kernel.
[ 1251.670097] wl: module license 'MIXED/Proprietary' taints kernel.
[ 1251.670099] Disabling lock debugging due to kernel taint
[ 1251.676955] wl: module verification failed: signature and/or required key missing - tainting kernel
That made me a little nervous but there were no more dmesg like that any more after review (not sure what happened).
After finding out how to configure the wireless adapter (BCM4321, btw.) headless via nmcli it's now working fine.

@zwalex

zwalex commented Sep 7, 2022

Copy link
Copy Markdown

Hahaha - meant to say "after reboot" (not review ...)

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