diff --git a/presets/nixos/desktopBase.nix b/presets/nixos/desktopBase.nix index 638a475..d0e0d23 100644 --- a/presets/nixos/desktopBase.nix +++ b/presets/nixos/desktopBase.nix @@ -1,5 +1,8 @@ {tree, ...}: { imports = with tree; [ + profiles.wifiHardware + + profiles.sound.base profiles.sound.pipewire profiles.gui.base diff --git a/presets/nixos/laptop.nix b/presets/nixos/laptop.nix index 4385a6d..68a9f37 100644 --- a/presets/nixos/laptop.nix +++ b/presets/nixos/laptop.nix @@ -5,12 +5,16 @@ profiles.connectivity.networkManager profiles.connectivity.iOS + profiles.wifiHardware + profiles.tor ]; - boot.loader.systemd-boot.editor = true; - boot.loader.systemd-boot.memtest86.enable = true; - boot.loader.systemd-boot.netbootxyz.enable = true; + boot.loader.systemd-boot = { + editor = true; + memtest86.enable = true; + netbootxyz.enable = true; + }; services.fwupd.enable = true; diff --git a/presets/nixos/wslBase.nix b/presets/nixos/wslBase.nix index bbd003b..9410288 100644 --- a/presets/nixos/wslBase.nix +++ b/presets/nixos/wslBase.nix @@ -1,5 +1,6 @@ {tree, ...}: { imports = with tree; [ + profiles.sound.base profiles.sound.pipewire profiles.gui.base diff --git a/profiles/base/hardware.nix b/profiles/base/hardware.nix index 02168d5..530e3ab 100644 --- a/profiles/base/hardware.nix +++ b/profiles/base/hardware.nix @@ -8,10 +8,14 @@ is_x86 = "${pkgs.system}" == "x86_64-linux"; in { hardware = { - enableAllFirmware = true; - enableRedistributableFirmware = true; + enableAllFirmware = false; # we include a more minimal subset for base + enableRedistributableFirmware = false; wirelessRegulatoryDatabase = true; + firmware = with pkgs; [ + linux-firmware + ]; + ksm.enable = true; i2c.enable = true; diff --git a/profiles/sound/base.nix b/profiles/sound/base.nix new file mode 100644 index 0000000..f81e7c9 --- /dev/null +++ b/profiles/sound/base.nix @@ -0,0 +1,10 @@ +{ + lib, + pkgs, + ... +}: { + hardware.firmware = with pkgs; [ + alsa-firmware + sof-firmware + ]; +} diff --git a/profiles/wifiHardware.nix b/profiles/wifiHardware.nix new file mode 100644 index 0000000..0110ddc --- /dev/null +++ b/profiles/wifiHardware.nix @@ -0,0 +1,24 @@ +{ + lib, + pkgs, + ... +}: let + inherit (lib.lists) optional; +in { + hardware = { + firmware = with pkgs; + [ + # Realtek + rtl8192su-firmware + rt5677-firmware + rtl8761b-firmware + rtw88-firmware + # ZyDAS + zd1211fw + # Broadcom + b43Firmware_5_1_138 + b43Firmware_6_30_163_46 + ] + ++ optional pkgs.stdenv.hostPlatform.isAarch raspberrypiWirelessFirmware; + }; +}