Lz4 zswap compression type not loaded at boot

I set lz4 as my zswap compression type by adding the following to my configuration:

  boot.kernelParams = [
    "zswap.enabled=1"
    "zswap.compressor=lz4"
  ];

  boot.initrd.kernelModules = [ "lz4" ];

But zstd is used instead.

On boot, I get the message:

[    0.182687] x86/cpu: SGX disabled or unsupported by BIOS.
[    0.556165] zswap: compressor lz4 not available, using default zstd

<<< NixOS Stage 1 >>>

loading module i915...
loading module lz4...
loading module btrfs...
loading module dm_mod...
running udev...
Starting systemd-udevd version 257.5

And then it asks for my disk encryption password.

I assume the issue is that it is not loading lz4 early enough; how can I do this?