Module-Assistant

Para quem por qualquer motivo compilar o seu próprio kernel precisar de compilar também módulos, por exemplo nvidia, gspca, xdslusb, alsa, etc, o module-assistant é a ferramenta a utilizar.

Para começar deveremos ter o pacote virtual build-essential instalado, bem como o module-assistant.

Agora devemos correr o module-assistant como root, ou usando o sudo.

sudo m-a

Nota: m-a é um alias para module-assistant

Devemos ter algo assim:

Devemos começar por escolher no menu UPDATE que irá obter informações dos módulos disponíveis nos repositórios.

De seguida podemos ir ao PREPARE, que não faz mais que obter os pacotes necessários para a compilação de pacotes. Isto irá obter diversos pacotes aos repositórios, deixando-nos o sistema preparado para o próximo passo.

Estamos agora em condições para escolher os módulos que nos interessa compilar para o kernel que estamos a correr.
Devemos então escolher SELECT. Ser-nos-á apresentada uma lista de módulos que podemos compilar, podemos movimentar-nos pela lista com as teclas cursor e escolher um determinado módulo com a tecla Espaço.

Após termos escolhido os módulos teremos novas opções disponíveis no menu.

No topo estará a lista de módulos que escolhemos, agora deveremos escolher BUILD.
Isto iniciará o processo de compilação do módulo e consequente construção do pacote.
Após este passo o m-a deverá perguntar se queremos que o pacote seja automaticamente instalado.

Após estes passos devemos ter os módulos que escolhemos no nosso sistema, adequados ao kernel que temos.

O module-assistant pode ser utilizado apenas pela linha de comandos, sendo que a sintaxe é algo como:

m-a update
m-a prepare
m-a a-i gspca

Nota: m-a a-i é o mesmo que m-a auto-install que contrói e instala automaticamente um determinado módulo

Como podem ver isto simplifica e automatiza bastante o processo de instalação de módulos num kernel, principalmente se mudamos de versão de kernel frequentemente.

Para quem não quiser usar o código-fonte de um módulo que esteja nos repositórios, existe uma forma de utilizar o código-fonte upstream. Isto significa que podemos obter as últimas versões de um determinado módulo, mesmo que ainda não esteja disponível na distribuição.

Se repararmos por exemplo no gspca, o código-fonte deste módulo foi colocado em /usr/src/gspca. Dentro deste directório temos um outro chamado "debian". É neste local que está a informação de como construir o pacote do módulo devidamente.

Podemos remover tudo o que estiver dentro de /usr/src/gspca e deixar apenas o directório debian.
Após termos obtido o tarball descompactamos para o /usr/src/gspca e podemos prosseguir com os mesmo passos anteriores. O module-assistant irá usar a source que colocámos no local anterior. (Obviamente quando fazemos isto não deveremos usar a função update do m-a, já que irá colocar o código-fonte dos repositórios em cima do código-fonte upstream)

Comentários

Opções de visualização dos comentários

Seleccione a sua forma preferida de visualização de comentários e clique "Gravar configuração" para activar as suas alterações.

# make # make install acho

# make
# make install

acho mais simples

Se tiveres que fazer isso em

Se tiveres que fazer isso em mais que uma máquina deixa de ser tão mais simples :)
Sem o pacote do módulo deixas de ter as vantagens de usar um sistema de pacotes.