SBoupgrade - Atualize seu SlackBuild!

Publicado por edps em 23/04/2015

[ Hits: 2.323 ]

Blog: https://edpsblog.wordpress.com/

 


SBoupgrade - Atualize seu SlackBuild!



Olá, pessoal.

Hoje veremos um script, cuja finalidade é a atualização de SlackBuilds.

Escrito por Michales Michaloudes, a.k.a korgman, mantenedor do pacote qmmp para o SlackBuild, esse script simples lhe poupará algum trabalho na hora de atualizar qualquer Slackbuild.

Vejamos, então:

#!/bin/bash
# Script written by Michales Michaloudes (korgie@gmail.com) for the SlackBuild community.
# Feel free to modify it, or to take the project to higher levels :)
#
# Use it at your own risk.

# Variables
SOURCES=${SOURCES:-../../sources} # the folder with the sources. I suggest to use relative path.
TEMPLATEFOLDER=${TEMPLATEFOLDER:-~/SlackBuilds} # the folder with template.README template.SlackBuild template.info template.slack-desc

if [ "$2" = "" ]; then
	APPNAME=$(ls *.SlackBuild | gawk -F'.SlackBuild' ' { print $1 } ')
	echo "You didn't provided program name, guessed: $APPNAME."
else
	APPNAME=$2
fi
. $APPNAME.info

if [ "$1" = "" ]; then
	NEWVERSION=$(ls -t1 $APPNAME*.tar* | head -1 | sed -e 's/.*-//' -e 's/.tar.*//g')
	echo "You didn't provided version, guessed: $NEWVERSION."
else
	NEWVERSION=$1
fi

echo -e "\nUpdating with $APPNAME-$NEWVERSION."
SOURCE=$(ls $APPNAME-$NEWVERSION.tar.* | sort | head -1)

# Append the md5sum to the info file
if [ -e $SOURCE ]; then
	MD5SUMPRG=$(md5sum $SOURCE | cut -c 1-32)
else
	echo "ERROR, source absent?"
	exit 1
fi

#-----------------------------
#- SED bonanza               -
#-----------------------------
# All files like slack-desc, Slackbuild, info will have the correct application name to be compiled
# find $TEMPLATEFOLDER/$NEWVERSION/$APPNAME -name $APPNAME.\* -exec sed -i "s/appname/$APPNAME/g" {} \;
# APPURL=$(cat ${SOURCES}/${APPNAME}.link)

sed -i "s/VERSION:-.*}/VERSION:-$NEWVERSION}/g" ./$APPNAME.SlackBuild
sed -i "s/VERSION=\".*\"/VERSION=\"$NEWVERSION\"/g" ./$APPNAME.info
sed -i "s/MD5SUM=\".*\"/MD5SUM=\"${MD5SUMPRG}\"/g" ./$APPNAME.info
sed -i "s,$VERSION,$NEWVERSION,g" ./$APPNAME.info

echo
echo "Check for yourself for errors."
grep $APPNAME $APPNAME.info
grep VERSION $APPNAME.SlackBuild

# vi $APPNAME.info

Aqui, salvei-o tal como recebi, em minha pasta "$HOME/bin" mantendo o mesmo nome e extensão: "SBoupgrade.cvl". Salve-o onde achar melhor.

Em uso

Tomemos como exemplo o pacote DeadBeef, que tratei numa outra dica do meu blog:
Então, copiamos a pasta do mesmo contida em "/var/lib/sbopkg/SBo/14.1/audio/deadbeef/":

cp -a /var/lib/sbopkg/SBo/14.1/audio/deadbeef .

Entramos no diretório:

cd deadbeef

Baixamos o source do programa:

wget -nv http://downloads.sourceforge.net/deadbeef/deadbeef-0.6.2.tar.bz2

Com a execução do comando abaixo "SBoupgrade.cvl", todas as informações necessárias para o empacotamento serão obtidas através do novo source do programa (versão, md5 etc), as modificações serão realizadas nos arquivos ".info" e ".SlackBuild":

SBoupgrade.cvl
Linux: SBoupgrade, atualize seu SlackBuild!
Feito isto, basta executar seu SlackBuild e aguardar o término do processo:

sudo sh deadbeef.SlackBuild
Linux: SBoupgrade, atualize seu SlackBuild!
E instalar o novo pacote:

sudo installpkg /tmp/deadbeef-0.6.2-*_SBo.tgz
Linux: SBoupgrade, atualize seu SlackBuild!

Agradecimento

Aqui vai o meu agradecimento ao autor do script, não só pelo envio do mesmo, mas também pela atenção dada aos emails que lhe enviei, respeitando inclusive as diferenças linguísticas que somente o GT é capaz de dirimir, acho. (rsrs)

Dica previamente publicada em meu blog:
T+

Outras dicas deste autor

Adicionando temas no Ubuntu Lucid Lynx

VLC 2.0 no Debian Squeeze

Um painel Tint2 mais completo

Xfce 4.8 no Debian Squeeze

Adicionando Sintaxe Highlighting no Editor NANO

Leitura recomendada

Como restaurar as cores do terminal

Confirmação automática para slackpkg

Atualizar Panda antivírus para Linux via script

sudo: lendo a senha automaticamente através de shell script

Comparar pasta origem com pasta destino e copiar os arquivos que faltam

  

Comentários

Nenhum coment�rio foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts