Gnome List – garnome_list
Uma das grandes dificuldades em se compilar projetos grandes como o GNOME é justamente conhecer a lista de pacotes utilizadas, além da ordem de compilação dos pacotes. A diversidade de combinações de versões em projetos como estes é imensa. E por isto, se puder pegar uma carona para facilitar o trabalho, não tem porque não o fazer.
Fiz o script garnome_mklist justamente para extrair a lista de pacotes e patchs empregados na compilação do GNOME pelo construtor GARNOME.
O garnome_mklist verifica a última versão do GARNOME, baixa ela e checa os pacotes e patchs utilizados, gerando uma lista com os seus nomes e respectivas versões. Não há a necessidade de entrar nenhum parâmetro.
Segue o script abaixo:
#!/bin/bash
# This script build a list of packages of Gnome GARNOME build sistem.
# by Rudson Alves
# 08/06/2008
#
BASEVERSION=${BASEVERSION:='2.22'}
GARNOME_URL="http://ftp.gnome.org/pub/GNOME/sources/garnome/$BASEVERSION"
GARNOME_NAME="garnome"
echo -e "\nGet $GARNOME_NAME version..."
VERSION=`eval "lynx --dump $GARNOME_URL/ |
sed -e '/LATEST\-IS\-$BASEVERSION.[0-9]$/! d'
-e '/1/! d' -e 's/.*\($BASEVERSION.[0-9]\)/\1/'"`
PKG_LIST=/tmp/${GARNOME_NAME}_list
GARNOME_NAME="${GARNOME_NAME}-${VERSION}"
echo -e "\nCheck $GARNOME_NAME..."
if [ ! -e $GARNOME_NAME.tar.bz2 ]; then
echo "Get $GARNOME_NAME..."
wget ${GARNOME_URL}/$GARNOME_NAME.tar.bz2
fi
echo -e "\nUntar ${GARNAME_NAME}.tar.bz2"
tar xvf $GARNOME_NAME.tar.bz2
cd $GARNOME_NAME
echo -e "\nCheck packages..."
for i in `find . -name checksums`; do
cat $i | sed 's/download\///' | awk '{print $2}';
done | sort > $PKG_LIST
echo -e "\nBuild list..."
cat $PKG_LIST | while read file; do
pkg_name=`echo $file | sed 's/\(.*\)\-\(.*\)\.tar\..*$/\1/'`;
pkg_version=`echo $file | sed 's/\(.*\)\-\(.*\)\.tar\..*$/\2/'`
if [ "$pkg_name" == "$pkg_version" ]; then
echo -e "patch\t${file}\t "
else
echo -e "packge\t${pkg_name}\t${pkg_version}"
fi
done | tee ../$GARNOME_NAME.list
cd ..
rm $PKG_LIST
echo -e "\nSee the complete list in $GARNOME_NAME.list"
Esta versão ainda gera uma tabela em html. Somente não a coloquei aqui por erro no html gerado. Existem ainda muitos outros scripts que utilizo na construção do GDL64. Veja todos em http://www.rra.etc.br/linux/GDL64_scripts/
Deixe uma resposta