Unable to use wifi card 16.04 MacOS dual boot
Solution 1:
I have been looking for a proven reliable way to use the SD card as an apt repository and simply apt get install the driver. I have, so far, been unsuccessful. I propose another method that will get your wireless working now.
This method, although it is tedious, will work. The list of deb files you need is this: https://paste.ubuntu.com/p/GbZ689gYXw/
Create a folder on your desktop to hold the files. I suggest:
mkdir ~/Desktop/debs
Browse the SD card and look in pool/restricted/b and find the deb package for bcmwl-kernel-source and drag and drop it to the debs folder.
Look in pool/main/b for build-essential; in pool/main/d for dkms and dpkg-dev; in pool/main/f for fakeroot and so on. Continue until every package on the list I provided is in the debs folder.
Now, back to the terminal:
cd ~/Desktop/debs
sudo dpkg -i *.deb
If all goes well, as I expect, at the end, load the driver:
sudo modprobe wl
Note that you will have to disable secure boot, if applicable.
Solution 2:
For Ubuntu 20.04, down below is the list I had to copy.
In addition, it seems sudo dpkg -i *.deb
didn't always work. But by sequentially installing any missing package mentioned in the error message, I finally got the driver installed.
For example, here's an error message:
Errors were encountered while processing:
libgcc-9-dev:amd64
libstdc++-9-dev:amd64
g++-9
gcc-9
g++
gcc
build-essential
dkms
bcmwl-kernel-source
xxx@yyy:~/Desktop$ lspci | grep Wireless
02:00.0 Network controller: Broadcom Inc. and subsidiaries BCM4360 802.11ac Wireless Network Adapter (rev 03)
xxx@yyy:~/Desktop$ sudo dpkg -i libgcc-9-dev_9.3.0-10ubuntu2_amd64.deb
(Reading database ... 185531 files and directories currently installed.)
Preparing to unpack libgcc-9-dev_9.3.0-10ubuntu2_amd64.deb ...
Unpacking libgcc-9-dev:amd64 (9.3.0-10ubuntu2) over (9.3.0-10ubuntu2) ...
dpkg: dependency problems prevent configuration of libgcc-9-dev:amd64:
libgcc-9-dev:amd64 depends on libatomic1 (>= 9.3.0-10ubuntu2).
libgcc-9-dev:amd64 depends on liblsan0 (>= 9.3.0-10ubuntu2); however:
Package liblsan0 is not installed.
As shown in the last line, run sudo dpkg -i liblsan0-xxx-xx-xxx.deb
before running the command for libgcc-9-dev
. Do this for other packages shown in the first few lines shown above, and slowly but surely all errors will be resolved.
Here's the list of debs I copied from the USB (searching from the top bar of a file navigator makes it really fast to locate them):
├── bcmwl-kernel-source_6.30.223.271+bdcom-0ubuntu5_amd64.deb
├── binutils_2.34-6ubuntu1_amd64.deb
├── binutils-common_2.34-6ubuntu1_amd64.deb
├── binutils-x86-64-linux-gnu_2.34-6ubuntu1_amd64.deb
├── build-essential_12.8ubuntu1_amd64.deb
├── dkms_2.8.1-5ubuntu1_all.deb
├── dpkg-dev_1.19.7ubuntu3_all.deb
├── fakeroot_1.24-1_amd64.deb
├── g++_9.3.0-1ubuntu2_amd64.deb
├── g++-9_9.3.0-10ubuntu2_amd64.deb
├── gcc-10-base_10-20200411-0ubuntu1_i386.deb
├── gcc_9.3.0-1ubuntu2_amd64.deb
├── gcc-9_9.3.0-10ubuntu2_amd64.deb
├── libalgorithm-diff-perl_1.19.03-2_all.deb
├── libalgorithm-diff-xs-perl_0.04-6_amd64.deb
├── libalgorithm-merge-perl_0.08-3_all.deb
├── libasan5_9.3.0-10ubuntu2_amd64.deb
├── libatomic1_10-20200411-0ubuntu1_amd64.deb
├── libatomic1_10-20200411-0ubuntu1_i386.deb
├── libbinutils_2.34-6ubuntu1_amd64.deb
├── libc6_2.31-0ubuntu9_i386.deb
├── libc6-dev_2.31-0ubuntu9_amd64.deb
├── libc-dev-bin_2.31-0ubuntu9_amd64.deb
├── libcrypt1_4.4.10-10ubuntu4_i386.deb
├── libcrypt-dev_4.4.10-10ubuntu4_amd64.deb
├── libctf0_2.34-6ubuntu1_amd64.deb
├── libctf-nobfd0_2.34-6ubuntu1_amd64.deb
├── libfakeroot_1.24-1_amd64.deb
├── libgcc-9-dev_9.3.0-10ubuntu2_amd64.deb
├── libgcc-s1_10-20200411-0ubuntu1_i386.deb
├── libitm1_10-20200411-0ubuntu1_amd64.deb
├── liblsan0_10-20200411-0ubuntu1_amd64.deb
├── libquadmath0_10-20200411-0ubuntu1_amd64.deb
├── libstdc++-9-dev_9.3.0-10ubuntu2_amd64.deb
├── libtsan0_10-20200411-0ubuntu1_amd64.deb
├── libubsan1_10-20200411-0ubuntu1_amd64.deb
├── linux-libc-dev_5.4.0-26.30_amd64.deb
├── make_4.2.1-1.2_amd64.deb
├── manpages-dev_5.05-1_all.deb