Aplicar automaticamente o patch do módulo e compilar o kernel quando atualizado?

8

Recentemente, apliquei um patch de uma linha drivers/bluetooth/btusb.cpara permitir a compatibilidade com meu dispositivo Bluetooth. No entanto, sempre que recebo uma atualização do kernel, o patch será perdido até que alguém o reporte (o que não é provável). Existe uma maneira de eu executar um script e corrigir cada nova atualização do kernel automaticamente?

O DKMS parece ser uma boa solução, mas não sei como configurar as coisas. Não quero recompilar todo o kernel do Linux toda vez que receber uma atualização, mas gostaria de aplicar esse patch ao módulo btusb, recompilá-lo e inseri-lo no meu kernel a cada atualização. Como posso fazer isso usando a fonte obtida apt-get source linux-source-3.2.0? Quais arquivos eu preciso copiar? A makechamada crítica é make M=drivers/bluetooth modules, mas isso depende de outros utilitários do kernel a serem construídos primeiro. Como montar um módulo DKMS para isso?

Detalhes sobre como aplicar o patch podem ser encontrados aqui no Ask Ubuntu.

Naftuli Kay
fonte

Respostas:

3

Sim, você deve empacotar suas alterações como um módulo DKMS. Construir módulos para vários kernels instalados ou reconstruí-los automaticamente em um kernel atualizado é o principal recurso do DKMS.

A documentação da comunidade Ubuntu tem um bom artigo sobre este tópico aqui .

gertvdijk
fonte
3
Você poderia dar um exemplo de como configurar o DKMS para o meu caso de uso específico? Por exemplo, quais arquivos eu preciso copiar para o meu módulo? Como devo configurar o dkms.conf?
Naftuli Kay