Aaah… l’emozione di una versione di sviluppo! La possibilità di sperimentare prima degli altri nuove funzioni, crash improvvisi e instabilità generale! Come poterci rinunciare? Lampante il caso di Tranmission, che nelle beta mette sempre qualcosa di utilissimo! Ad esempio nelle nuove beta del famoso client BitTorrent c’è il supporto all'”encryption”, decisamente utile perché ormai i client più diffusi (µTorrent e Azureus in primis) ne fanno largo uso. Ecco dunque come è possibile ottenre facilmente e rapidamente una versione della beta di Transmission compilandola automaticamente e senza alcuno sforzo! Ovviamente la seguente procedura, con opportune modifiche, vale per qualunque altra applicazione distribuita in modo analogo. Cominciamo!

Ingredienti

  • Xcode, presente nei Developer Tools. Iscrivetevi gratuitamente alla Apple Developer Connection per ottenere la copia più aggiornata
  • SVN: è indispensabile per scaricare le “subversion”. Potete trovarne una versione facilissima da installare qui, per Mac Intel e PPC

Preparazione
La preparazione è molto semplice, ma presuppone un minimo di conoscenze. SVN non fa altro che procurarsi da un dato server i file sorgente per la compilazione, sistemandoli in una cartella. È quindi opportuno avere una connessione internet, possibilmente veloce, e predisporre uno spazio per contenere la cartella con i file sorgente. Per farla breve io ho creato una cartella chiamata “TTrunk” all’interno della cartella Download che c’è nella mia Home, con un perco risultante: ~/Download/TTrunk. All’interno di questa cartella SVN ne creerà un’altra chiamata Transmission. Ricapitolando, create una cartella dove volete e ricordatevene il percorso (~ è la vostra Home). Mettiamo che i vostro percorso sia percorsox. A questo punto aprite TextEdit e scrivete questo codice:

#! /bin/bash
cd percorsox
svn co svn://svn.m0k.org/Transmission/trunk Transmission
cd percorsox/Transmission/
xcodebuild -configuration Release
mv percorsox/Transmission/build/Release/Transmission.app ~/Desktop

dove a percorsox sostituite il percorso vero (ad esempio nel mio caso ~/Download/TTrunk). Il comando mv serve a spostare l’applicazione compilata sul desktop (potete cambiare la cartella). Preferisco, infatti, che l’applicazione non sovrascriva la precedente versione così posso provarla senza, in caso di danno, dover ripristinare la vecchia versione.
Ok, fatto ciò salvate il vostro script con un nome a piacere e l’estensione sh: ad esempio nomescript.sh. Il consiglio è di salvarlo nella stessa cartella che avete creato prima, e il seguito della spiegazione farà riferimento a questo caso.
Dopo averlo salvato aprite il terminale e digitate:

cd percorsox
chmod 755 nomescript.sh

in questo modo avete dato allo script la possibilità di essere eseguito. Ora per avviare il vostro script non dovrete fare altro che (dopo esservi spostati in percorsox) digitare

./nomescript.sh

Non vi basta? Volete qualcosa di più comodo? Allora aprite lo Script Editor e scriveteci dentro

do shell script “percorsox/nomescript.sh”

Quindi salvate come Script (volendo spuntate Esegui soltanto) e il gioco e fatto!

Varianti
potete aggiungere, dopo il comando mv dello script principale la linea:

rm -rf percorsox/Transmission

(rm sta per “remove” e non c’è via di scampo!!!!). Questo però è sconsigliabile perché ogni volta dovrete scaricare da zero tutti i file sorgenti, mentre lasciando la cartella scaricherete solo i file effettivamente modificati

Ok, ora non vi resta che lanciare lo script ogni volta che vorrete installare una nuova versione. C’è chi lo fa ogni notte, compilando quelle che in gergo vengono dette appunto nightly, e chi invece aspetta un po’. Se siete fuori di testa (come me) potete automatizzare l’esecuzione dello script con iCal, ad esempio. In questo modo potete avere ad intervalli regolari una versione aggiornata della vostra beta preferita!

’nuff said