amsn-svn, script per automatizzare

Share in top social networks!

Dato che mi sono trovato più volte a dover aggiornare amsn in questi ultimi giorni, ho buttato giu quella decina di righe di bash che automatizzano la cosa!

Lo script scarica l’ultima versione dal repository svn di amsn, lo compila ed installa. Poi ci aggiunge tutti i plugin e skin scaricabili sempre tramite svn.
Infine viene scaricato ed abilitato tkdnd, per il drag’n'drop dei file.

Al momento sto lasciando perdere farsight e company perchè non uso la webcam e quindi non faccio videochiamate.
In ogni caso a breve vedrò di aggiungerli (per la solita dannata curiosità).

#!/bin/bash

if [ "$(whoami)" != "root" ]
then
echo 'mi devi eseguire con sudo!'
exit 1
fi
echo 'controllo le dipendenze per compilare amsn'
apt-get install subversion cvs libgstreamer0.10-0 gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer0.10-plugins-bad gstreamer0.10-plugins-farsight gstreamer0.10-tools gstreamer0.10-alsa -f -y
apt-get build-dep amsn gstreamer0.10-plugins-farsight -f -y

if [ -d 'amsn' ] #se esiste già lo aggiorno, altrimenti lo scarico da zero!
then
	echo 'Ehi, hai già amsn... Allora lo aggiorno solo'
	cd amsn
	make uninstall
	make clean
	svn up
else
	echo 'Non hai mai scaricato amsn, lo scarico da zero'
svn co https://amsn.svn.sourceforge.net/svnroot/amsn/trunk/amsn amsn
	cd amsn
fi

## inizio nice/farsight2 ##devo vedere quanto appesantisce pero...
#nice
wget http://nice.freedesktop.org/releases/libnice-0.0.6.tar.gz
tar xzvf libnice-0.0.6.tar.gz
cd libnice-0.0.6
./configure --prefix=/usr --disable-gtk-doc
make
sudo make install
cd ..
#farsight
wget http://farsight.freedesktop.org/releases/farsight2/farsight2-0.0.7.tar.gz
tar xzvf farsight2-0.0.7.tar.gz
cd farsight2-0.0.7
./configure --prefix=/usr --disable-python --disable-gtk-doc
make
sudo make install
cd ..
##fine farsight2

##compilo amsn
make clean
make uninstall
bash ./configure
make
make install

echo "ora amsn e' installato e funzionante, passiamo a plugin e skins"
##installo plugin e skins
if [ -d 'amsn-extras' ]
then
echo "Hai gia i plugins e le skins, bravo, li aggiorno"
cd amsn-extras
svn up
else
echo "Scarichiamo plugins e skins"
svn co https://amsn.svn.sourceforge.net/svnroot/amsn/trunk/amsn-extras amsn-extras
cd amsn-extras
fi

mkdir $HOME/.amsn
cp -r ./* $HOME/.amsn/
cd ..
##fine installazione plugins e skins

##aggiungo tkdnd
echo "Ok, passiamo a tkdnd"
if [ -d 'tkdnd' ]
then
	echo "Hai gia i tkdnd, ma io lo aggiorno"
	cd tkdnd
	cvs up
else
	echo "Scarichiamo tkdnd..."
cvs -z3 -d:pserver:anonymous@tkdnd.cvs.sourceforge.net:/cvsroot/tkdnd co -P tkdnd/lib #scarico tkdnd dal server, con compressione dati.
	cd tkdnd
fi

AMSNDIR='/usr/share/amsn'
sudo mkdir $AMSNDIR/utils/tkdnd
sudo cp lib/*tcl $AMSNDIR/utils/tkdnd/
sudo cp lib/Linux/libtkdnd1.0.so $AMSNDIR/utils/tkdnd/
cd ..
##fine tkdnd

echo "tanto per piacere, ti restituisco anche i permessi sulla cartella .amsn."
chmod -R 0755 $HOME/.amsn/
chown -R $SUDO_USER $HOME/.amsn/
cd ..
chmod -R 0755 amsn/
chown -R $SUDO_USER amsn/

#usiamo gli 8.5
cd /usr/local/bin
ln -s wish8.5 wish
ln -s tclsh8.5 tclsh
##fine

Lo script dovrebbe funzionare per tutti i sistemi debian-based, ma ovviamente non garantisco nulla.
Dipendenze sono (ovviamente) subversion e build-essential, in ogni caso lo script cerca di scaricarsi tutte le dipendenze da solo.

Per i puristi, so perfettamente che farlo compilare da root non è il massimo… Però mi veniva comodo così e soprattutto funziona.

Come si usa:

  1. Copiate ed incollate in un file, che io chiamerò getamsn.sh.
  2. Dategli i permessi di esecuzione con
    chmod +x getamsn.sh
  3. ok, adesso diamo il via alle danze con
    sudo getamsn.sh

Ricordo che questo script è potenzialmente pericoloso: potrebbe fare danni al vostro pc, disinstallare i vostri programmi preferiti, dare fuoco al gatto, mettere in condivisione le foto della zia Maud ecc. ecc.
Quindi non accetto responsabilità: dato che dovete copiarlo, incollarlo, dargli i permessi di esecuzione ed infine eseguirlo, se poi fa casini non venitemi a dire che “non lo avete fatto apposta” ok?

Come al solito sono graditi commenti…

UPDATE:
Ho aggiunto il supporto a farsight ed alle audio/videochiamate.
Devo ancora testare per bene il tutto in effetti però compilare si compila…
Ho usato una versione di libfarsight empiricamente ricavata (ho diminuito di una versione fino a che non si è compilata perfettamente).
Purtroppo farsight non fornisce un link all’ultima versione… Quindi lo script andrà aggiornato a mano.

Share in top social networks!
This entry was posted in Facili, Guide, Linux, Open Source, Progetti, Programmazione and tagged , , , , . Bookmark the permalink.

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

*

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>