Estou tentando instalar o Debian Bullseye em um novo laptop Lenovo (T14s Gen1). O laptop possui um chip wifi Realtek 8852AE, para o qual atualmente nenhum driver foi adicionado ao kernel. Há um repositório Github onde um driver adequado parece estar presente, e eu posso construir tanto o firmware quanto os módulos do kernel em outra máquina Debian Bullseye.
Eu criei um pendrive Debian Bullseye e adicionei meu arquivo preseed regular, que está funcionando bem. Eu tentei adicionar uma série de 'early_command's, mas di sempre lança um erro no primeiro early_command que encontra. Alguma indicação do que há de errado com isso?
### Copy the Realtek 8852AE firmware during installation
d-i preseed/early_command string \
/bin/cp /cdrom/realtek8852/rtw8852a_fw.bin /lib/firmware/rtw8852a_fw.bin;
### Modprobe the Realtek 8852AE network driver during installation
d-i preseed/early_command string \
/bin/cp /cdrom/realtek8852/rtw89core.ko /lib/modules/5.10.0-8-amd64/rtw89core.ko; \
/bin/cp /cdrom/realtek8852/rtw89pci.ko /lib/modules/5.10.0-8-amd64/rtw89pci.ko; \
/sbin/depmod -a \
/sbin/modprobe rtw89pci;
### Copy the Realtek 8852AE firmware on target machine
d-i preseed/late_command string \
/bin/cp /cdrom/realtek8852/rtw8852a_fw.bin /target/lib/firmware/rtw8852a_fw.bin;
### Modprobe the Realtek 8852AE network driver on target machine
d-i preseed/late_command string \
/bin/cp /cdrom/realtek8852/rtw89core.ko /target/lib/modules/5.10.0-8-amd64/rtw89core.ko; \
/bin/cp /cdrom/realtek8852/rtw89pci.ko /target/lib/modules/5.10.0-8-amd64/rtw89pci.ko; \
/bin/touch /target/etc/modules-load.d/rtw89.conf; \
/bin/echo "rtw89pci" >> /target/etc/modules-load.d/rtw89.conf;
Consegui fazer com que o debian-installer reconheça o chipset Realtek 8852AE e carregue os módulos de firmware e kernel, então acho que esta é a resposta para minha própria pergunta:
Minha tentativa inicial falhou porque no estágio "preseed/early_command", nenhum outro módulo foi carregado e, como resultado, o comando para modificar este módulo falha devido a dependências não atendidas.
Nota mental: os comandos early_ e late_command aceitam vários comandos encadeados entre si com dois pontos (;), mas certifique-se de que o último comando não seja seguido por esses dois pontos ...
Próximo desafio: conectar-se à rede durante a instalação :/.