Criador de pacotes para o Slackware
Publicado por Leandro Santiago 21/07/2007
[ Hits: 5.292 ]
Homepage: http://leandrosan.wordpress.com
Pequeno bash-script que cria um pacote compilado para o slackware.
Recebe um parâmetro, que é o conteúdo da descrição do pacote. É bem simples, mas me ajudou bastante. Deve ser usado no lugar do make install (como root).
Lógico que é só um núcleo. Ainda não adicionei recursos como tratamento de parâmetros ou verificação de uid, para saber se é root.
Espero que ajude alguém como me ajudou.
#!/bin/bash
# slack-pkg-create.sh
# Escrito por Leandro Santiago da Silva
## leandrosansilva $$AT$$ gmail $$DOT$$ com
## Maringá, Paraná, Brasil 11/07/07
## Script que cria um pacote compilado para o Slackware
# Deve ser usado no lugar do make install
## Define a arquitetura do Seu computador
ARQUITETURA=i686
## Release
EXTRAV=1ten
# O nome do pacote, já com a versão
NOME="`basename $PWD`"
# Cria o pacote expandido em /tmp/packages
make install DESTDIR=/tmp/packages/"$NOME"
# Acessa o diretório /tmp/packages
cd /tmp/packages/"$NOME"
# Cria os diretórios de documentos e de scripts de instalação
mkdir -p usr/doc/"$NOME" install
# Copio arquivos de documentos, etc
cp "$OLDPWD"/{INSTALL,LICENCE,AUTHORS,COPYING,TODO,VERSION,NEWS,README} usr/doc/"$NOME"
# Defino o nome do pacote, sem versão.
NOMESEMVER="`echo $NOME | rev | cut -f2- -d- | rev `"
# Crio um arquivo install/slack-desc com a descrição do pacote, com o conteúdo do arquivo recebido como primeiro parâmetro
# Que deve estar no diretório onde este script foi chamado
while read LINHA
do
echo $NOMESEMVER: $LINHA
done < "$OLDPWD"/"$1" >> install/slack-desc
# eStripo os arquivos (peguei do site http://linuxpackages.net/
{
find . | xargs file | grep "current ar archive" | cut -f 1 -d : | xargs strip --str ip-debug
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded
} &> /dev/null
# Por fim, crio o pacote no diretório onde foi chamado este script
yes | /sbin/makepkg "$OLDPWD"/$NOME-$ARQUITETURA-$EXTRAV.tgz
# Volto ao diretório original (desnecessário)
cd "$OLDPWD"
# Excluo o diretório onde foi criado o pacote
rm -rf /tmp/packages/"$NOME"
Monitoramento automático de logs e envio por e-mail – Fácil e explicado
Verifica se usuario corrente é root.
Limpando o cache da memória RAM de forma efetiva
Limpar o histórico dos documentos recentes do Ubuntu 11.10
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
Seno, Coseno, Tangente em CLIPPER (0)
Inserir uma URL num arquvo pelo Ubuntu (CLIPPER) (0)
VMWare Player não conecta na rede nem consigo intercambiar arquivos (1)









