Skip to content

Instantly share code, notes, and snippets.

@jamespamplin
Last active March 6, 2023 08:30
Show Gist options
  • Star 57 You must be signed in to star a gist
  • Fork 19 You must be signed in to fork a gist
  • Save jamespamplin/7a803fd5be61d4f93e0c5dcdea3f99ee to your computer and use it in GitHub Desktop.
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
@acypert
Copy link

acypert commented Jul 17, 2019

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

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
Copy link

orrmy commented Oct 30, 2020

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
Copy link

zwalex commented Sep 7, 2022

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
Copy link

zwalex commented Sep 7, 2022

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