Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions apple/imac/14-2/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@

## Wifi
- [x] ok
> **Important:** To enable WiFi and Bluetooth functionality on this hardware, you **must** set the following option in your configuration (due to unpatched security issues in the proprietary Broadcom driver):
>
> ```nix
> hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
> ```


## Graphics
- [x] Latest unsupported Nvidia drivers available are 390.157, working with Kernel 6.10.6.
Expand Down
51 changes: 31 additions & 20 deletions apple/imac/14-2/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -11,27 +11,38 @@
../../../common/gpu/nvidia
../../../common/gpu/nvidia/kepler
../../../common/hidpi.nix
../../../common/broadcom-wifi.nix
];
# ##############################################################################
# ATTENTION / IMPORTANT NOTE:
#
# To enable WiFi and Bluetooth functionality on this hardware, you must set
# the following option in your configuration (due to unpatched security issues
# in the proprietary Broadcom driver):
#
# hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
# ##############################################################################
config = {
boot = {
initrd.kernelModules = [
"applesmc"
"applespi"
"intel_lpss_pci"
"spi_pxa2xx_platform"
"kvm-intel"
];
blacklistedKernelModules = [
"b43"
"ssb"
"brcmfmac"
"brcmsmac"
"bcma"
];
kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.0") pkgs.linuxPackages_latest;
};

boot = {
initrd.kernelModules = [
"applesmc"
"applespi"
"intel_lpss_pci"
"spi_pxa2xx_platform"
"kvm-intel"
];
blacklistedKernelModules = [
"b43"
"ssb"
"brcmfmac"
"brcmsmac"
"bcma"
];
kernelPackages = lib.mkIf (lib.versionOlder pkgs.linux.version "6.0") pkgs.linuxPackages_latest;
};

hardware = {
bluetooth.enable = lib.mkDefault true;
hardware = {
bluetooth.enable = lib.mkDefault true;
};
};
}
9 changes: 9 additions & 0 deletions apple/macbook-air/6/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Apple MacBook Air 6,x

## Wireless / Bluetooth

> **Important:** To enable WiFi and Bluetooth functionality on this hardware, you **must** set the following option in your configuration (due to unpatched security issues in the proprietary Broadcom driver):
>
> ```nix
> hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
> ```
31 changes: 22 additions & 9 deletions apple/macbook-air/6/default.nix
Original file line number Diff line number Diff line change
@@ -1,16 +1,29 @@
{ config, lib, ... }:

{
imports = [ ../. ];
imports = [
../.
../../../common/broadcom-wifi.nix
];
# ##############################################################################
# ATTENTION / IMPORTANT NOTE:
#
# To enable WiFi and Bluetooth functionality on this hardware, you MUST set
# the following option in your configuration (due to unpatched security issues
# in the proprietary Broadcom driver):
#
# hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
# ##############################################################################
config = {
boot = {
# Divides power consumption by two.
kernelParams = [ "acpi_osi=" ];

boot.blacklistedKernelModules = [ "bcma" ];
blacklistedKernelModules = [ "bcma" ];
};

boot = {
# Divides power consumption by two.
kernelParams = [ "acpi_osi=" ];
services.xserver.deviceSection = lib.mkDefault ''
Option "TearFree" "true"
'';
};

services.xserver.deviceSection = lib.mkDefault ''
Option "TearFree" "true"
'';
}
7 changes: 7 additions & 0 deletions apple/macbook-pro/11-1/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ This configuration is tested on my 13" *MacBook Pro (Retina, 13-inch, Late 2013)

The 6.11.5 kernel appears to work well with only minor adjustments on this notebook. Note that my machine has a BCM4360 wireless card (PCI-ID `14e4:43a0`) which appears to only work with the nonfree `wl` driver.

> **Important:** To enable WiFi and Bluetooth functionality on this hardware, you **must** set the following option in your configuration (due to unpatched security issues in the proprietary Broadcom driver):
>
> ```nix
> hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
> ```


## Additional resources

* Linux Wireless Documentation: [List of hardware](https://wireless.docs.kernel.org/en/latest/en/users/drivers/b43.html#list-of-hardware)
Expand Down
15 changes: 13 additions & 2 deletions apple/macbook-pro/11-1/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,18 @@
../.
../../../common/pc/ssd
../../../common/cpu/intel/haswell
../../../common/broadcom-wifi.nix
];

hardware.enableRedistributableFirmware = lib.mkDefault true;
# ##############################################################################
# ATTENTION / IMPORTANT NOTE:
#
# To enable WiFi and Bluetooth functionality on this hardware, you MUST set
# the following option in your configuration (due to unpatched security issues
# in the proprietary Broadcom driver):
#
# hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
# ##############################################################################
config = {
hardware.enableRedistributableFirmware = lib.mkDefault true; # broadcom-wl
};
}
38 changes: 38 additions & 0 deletions common/broadcom-wifi.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
{
config,
lib,
pkgs,
...
}:

{
options = {
hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = lib.mkOption {
type = lib.types.bool;
default = false;
description = ''
Enable the legacy Broadcom WiFi driver (wl) with known security vulnerabilities.

This driver is vulnerable to heap buffer overflows:
- CVE-2019-9501 (https://github.com/advisories/GHSA-vjw8-c937-7hwp)
- CVE-2019-9502 (https://github.com/advisories/GHSA-4rfg-8q34-prmp)

Attackers within WiFi range can exploit this vulnerability by sending crafted
WiFi packets, even without being connected to the same network. Simply having
WiFi enabled makes the system vulnerable to arbitrary code execution or denial-of-service.
Only enable if no alternative WiFi solution is available.
'';
};
};

config = lib.mkIf config.hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities {
boot.kernelModules = [ "wl" ];
boot.extraModulePackages = [
(config.boot.kernelPackages.broadcom_sta.overrideAttrs (oldAttrs: {
meta = oldAttrs.meta // {
knownVulnerabilities = [ ];
};
}))
];
};
}
8 changes: 8 additions & 0 deletions dell/inspiron/3442/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@ $ lspci -nn

### Extra Configuration

#### Broadcom WiFi/Bluetooth

> **Important:** To enable WiFi and Bluetooth functionality on this hardware, you **must** set the following option in your configuration (due to unpatched security issues in the proprietary Broadcom driver):
>
> ```nix
> hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
> ```

#### Bluetooth

To enable bluetooth support, set `hardware.bluetooth.enable = true;`.
Expand Down
19 changes: 15 additions & 4 deletions dell/inspiron/3442/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,21 @@
imports = [
../../../common/cpu/intel/haswell
../../../common/pc/laptop
../../../common/broadcom-wifi.nix
];

services = {
fwupd.enable = lib.mkDefault true;
thermald.enable = lib.mkDefault true;
# ##############################################################################
# ATTENTION / IMPORTANT NOTE:
#
# To enable WiFi and Bluetooth functionality on this hardware, you MUST set
# the following option in your configuration (due to unpatched security issues
# in the proprietary Broadcom driver):
#
# hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
# ##############################################################################
config = {
services = {
fwupd.enable = lib.mkDefault true;
thermald.enable = lib.mkDefault true;
};
};
}
9 changes: 9 additions & 0 deletions dell/xps/13-9343/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Dell XPS 13 (9343)

## Wireless / Bluetooth

> **Important:** To enable WiFi and Bluetooth functionality on this hardware, you **must** set the following option in your configuration (due to unpatched security issues in the proprietary Broadcom driver):
>
> ```nix
> hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
> ```
25 changes: 17 additions & 8 deletions dell/xps/13-9343/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -5,16 +5,25 @@
../../../common/cpu/intel
../../../common/pc/laptop
../../../common/pc/ssd
../../../common/broadcom-wifi.nix
];

services = {
fwupd.enable = lib.mkDefault true;
thermald.enable = lib.mkDefault true;
};

boot = {
kernelModules = [
# ##############################################################################
# ATTENTION / IMPORTANT NOTE:
#
# To enable WiFi and Bluetooth functionality on this hardware, you MUST set
# the following option in your configuration (due to unpatched security issues
# in the proprietary Broadcom driver):
#
# hardware.broadcom.wifi.enableLegacyDriverWithKnownVulnerabilities = true;
# ##############################################################################
config = {
boot.kernelModules = [
"kvm-intel"
];

services = {
fwupd.enable = lib.mkDefault true;
thermald.enable = lib.mkDefault true;
};
};
}