DKMS package guidelines (Português)
Aqui estão algumas diretrizes para seguir ao criar um pacote DKMS.
Nome de pacote
Os pacotes DKMS são nomeados anexando "-dkms" ao nome do pacote original.
A variável $_pkgname é frequentemente usada abaixo de $pkgname para descrever o nome do pacote menos o sufixo "-dkms" "(por exemplo, _pkgname=${pkgname%-*}). Isso é útil para ajudar a manter semelhanças entre o pacote original PKGBUILD e a variante DKMS.
Dependências
As dependências devem ser herdadas da versão original com o dkms adicionado e o linux-headers removidos (como listado no pacote dkms como opcional).
Local de fontes de compilação
As fontes de compilação devem entrar (este é o diretório de compilação padrão do DKMS):
/usr/src/NOME_PACOTE-VERSÃO_PACOTE
No diretório do pacote, uma configuração de DKMS informa ao DKMS como compilar o módulo (dkms.conf), incluindo as variáveis NOME_PACOTE e VERSÃO_PACOTE.
NOME_PACOTE- o nome real do projeto (geralmente$_pkgnameou$_pkgbase).VERSÃO_PACOTE- por convenção, este também deve ser o .
Correções
Pode-se aplicar patches corrigindo os fontes diretamente no PKGBUILD ou através de dkms.conf.
Carregamento de módulos automaticamente em .install
Carregar ou descarregar os módulos devem ser deixados para o usuário. Considere a possibilidade de um módulo travar ao ser carregado.
Além disso, observe que você não precisa chamar explicitamente para atualizar as dependências do seu módulo do kernel. Agora, o pacman está chamando o e o dkms remove do DKMS automaticamente como ganchos (hooks). está certificando-se de que seja chamado no final de seu processo. O depende do (para compilar o fonte no kernel atual), que depende do dkms add (para adicionar um link simbólico de para ).
Exemplo
Aqui está um exemplo de pacote que edita dkms.conf de acordo com o nome e a versão do pacote.
.install
Agora, o pacman possui hooks de DKMS implementados. Você não precisa especificar a configuração específica do DKMS no seu arquivo .install. As chamadas para e dkms remove serão automáticas.