I've done some more investigation this morning, and I think I've narrowed down the problem slightly further. It seems I *can* upgrade 'dkms' (and also install 'shim'), as long as I leave 'shim-signed' uninstalled, although this has a few caveats...
It seems if I 'sudo apt-get purge bcmwl-kernel-source && sudo apt-get install bcmwl-kernel-source' while the 'shim-signed' package is installed, then this builds a "broken" 'wl' module which always gives the message 'modprobe: ERROR: could not insert 'wl': Package not installed' when you try to modprobe it (even after purging 'shim-signed' and rebooting).
However if I 'sudo apt-get purge bcmwl-kernel-source && sudo apt-get install bcmwl-kernel-source' while the 'shim-signed' package is NOT installed, then this builds a 'wl' module which works (even after installing 'shim-signed').
I also updated the BIOS on my XPS 13 9343 to version A19, but this made no difference.
Because installing or uninstalling 'shim-signed' doesn't automatically rebuild DKMS modules, this means you can easily get into some confusing "conflicting" states, e.g. you can purge-and-install 'bcmwl-kernel-source' while 'shim-signed' isn't installed (to get a working 'wl' module), and then install 'shim-signed', and your WiFi will remain working (with the old module), but the next time your DKMS modules get rebuilt your WiFi will suddenly stop working (with the newly-built module).
I've done some more investigation this morning, and I think I've narrowed down the problem slightly further. It seems I *can* upgrade 'dkms' (and also install 'shim'), as long as I leave 'shim-signed' uninstalled, although this has a few caveats...
It seems if I 'sudo apt-get purge bcmwl-kernel-source && sudo apt-get install bcmwl-kernel- source' while the 'shim-signed' package is installed, then this builds a "broken" 'wl' module which always gives the message 'modprobe: ERROR: could not insert 'wl': Package not installed' when you try to modprobe it (even after purging 'shim-signed' and rebooting). source' while the 'shim-signed' package is NOT installed, then this builds a 'wl' module which works (even after installing 'shim-signed').
However if I 'sudo apt-get purge bcmwl-kernel-source && sudo apt-get install bcmwl-kernel-
I also updated the BIOS on my XPS 13 9343 to version A19, but this made no difference.
Because installing or uninstalling 'shim-signed' doesn't automatically rebuild DKMS modules, this means you can easily get into some confusing "conflicting" states, e.g. you can purge-and-install 'bcmwl- kernel- source' while 'shim-signed' isn't installed (to get a working 'wl' module), and then install 'shim-signed', and your WiFi will remain working (with the old module), but the next time your DKMS modules get rebuilt your WiFi will suddenly stop working (with the newly-built module).
I know very little about kernel modules and secureboot, but from what I can tell this is possibly a regression caused by https:/ /bugs.launchpad .net/ubuntu/ +source/ shim-signed/ +bug/1748983 interacting with e.g. https:/ /bugs.launchpad .net/ubuntu/ +source/ bcmwl/+ bug/1572659