···
# enabled in the initrd. Its primary use is in the NixOS installation
6
-
{ config, lib, pkgs, ... }:
platform = pkgs.stdenv.hostPlatform;
···
# The initrd has to contain any module that might be necessary for
# supporting the most important parts of HW like drives.
boot.initrd.availableKernelModules =
21
-
[ # SATA/PATA support.
27
+
# SATA/PATA support.
26
-
"sata_inic162x" "sata_nv" "sata_promise" "sata_qstor"
27
-
"sata_sil" "sata_sil24" "sata_sis" "sata_svw" "sata_sx4"
28
-
"sata_uli" "sata_via" "sata_vsc"
30
-
"pata_ali" "pata_amd" "pata_artop" "pata_atiixp" "pata_efar"
31
-
"pata_hpt366" "pata_hpt37x" "pata_hpt3x2n" "pata_hpt3x3"
32
-
"pata_it8213" "pata_it821x" "pata_jmicron" "pata_marvell"
33
-
"pata_mpiix" "pata_netcell" "pata_ns87410" "pata_oldpiix"
34
-
"pata_pcmcia" "pata_pdc2027x" "pata_qdi" "pata_rz1000"
35
-
"pata_serverworks" "pata_sil680" "pata_sis"
36
-
"pata_sl82c105" "pata_triflex" "pata_via"
# SCSI support (incomplete).
40
-
"3w-9xxx" "3w-xxxx" "aic79xx" "aic7xxx" "arcmsr" "hpsa"
# USB support, especially for booting from USB CD-ROM
···
# Firewire support. Not tested.
# Virtio (QEMU, KVM etc.) support.
56
-
"virtio_net" "virtio_pci" "virtio_mmio" "virtio_blk" "virtio_scsi" "virtio_balloon" "virtio_console"
59
-
"mptspi" "vmxnet3" "vsock"
60
-
] ++ lib.optional platform.isx86 "vmw_balloon"
110
+
++ lib.optional platform.isx86 "vmw_balloon"
++ lib.optionals (pkgs.stdenv.hostPlatform.isi686 || pkgs.stdenv.hostPlatform.isx86_64) [
62
-
"vmw_vmci" "vmwgfx" "vmw_vsock_vmci_transport"
114
+
"vmw_vsock_vmci_transport"
66
-
] ++ lib.optionals pkgs.stdenv.hostPlatform.isAarch [
119
+
++ lib.optionals pkgs.stdenv.hostPlatform.isAarch [
···
77
-
] ++ lib.optionals pkgs.stdenv.hostPlatform.isAarch64 [
131
+
++ lib.optionals pkgs.stdenv.hostPlatform.isAarch64 [
# Most of the following falls into two categories:
# - early KMS / early display
# - early storage (e.g. USB) support