Come installare Bazaar su un hosting con console remota SSH tipo DreamHost

Se si dispone di un hosting in cui è stato installato e reso disponibile python2.4 si può procedere all'installazione del sistema di versioning Bazaar (BZR).

Il sistema distribuito di versioni Bazaar è disponibile per qualsiasi sistema operativo tra i più diffusi: Linux, Mac, ed anche Windows.

Se non si dispone di un hosting con console remota, si può chiedere un preventivo a Bologna Informatica, offre hosting professionale per le piccole e medie imprese. Oppure registrarsi su DreamHost approfittando dello sconto offerto dal codice invito: BOINFO07

Prendiamo come esempio DreamHost come sistema di hosting. Ma credo che un qualsiasi altro hosting con console SSH possa andare bene.

  1. Prima di tutto è necessario preparare l'ambiente creando le directory utente necessarie:

    cd
    mkdir bin
    mkdir lib
    mkdir lib/python
    mkdir man

  2. In secondo luogo è necessario istruire la console remota ad utilizzare le proprie directory utente con priorità su quelle di sistema:
    nano -w ~/.bash_profile
    nel file ~/.bash_profile vanno inserite le seguenti variabili. export PATH=$HOME/bin:$PATH
    export MANPATH=$HOME/man:/usr/share/man
    export PYTHONPATH=$HOME/lib/python:/usr/lib/python2.4:/usr/local/lib/python2.4:/usr/include/python2.4

    Su DreamHost $PYTHONPATH e $MANPATH non sono definite quindi vanno forzate. Per sapere se le vostre variabili sono già definite: echo $PYTHONPATH

    Nel caso in cui siano già definite, è meglio riprenderle ed inserire il valore a quelle esistenti come ho fatto in $PATH che appunto era già definita.

  3. Dopo aver controllato che tutte le variabili siano di sistema, bisogna crearsi un link simbolico che punta esplicitamente a python2.4 perché su DreamHost di default è installato python2.3.
    cd ~/bin
    ln -s /usr/bin/python2.4 python

    Per controllare la versione di python: python -V
  4. Se i percorsi sono corretti e le variabili configurate a dovere dovreste avere la versione 2.4.x. Lanciate python e provate ad includere qualche modulo default per essere certi che tutto funziona
  5. Se tutto funziona allora è possibile scaricare le librerie necessarie per usare Bazaar tramite SFTP (ssh):

    Scaricare i sorgenti delle librerie in una directory di appoggio. Estrarre i files usando tar zxf. Il comando per installare la libreria è il seguente: cd pylibrary-0.1.2
    python setup.py install --home=$HOME

    Le librerie saranno compilate ed installate nella home directory: /home/username/lib/python. Per accertarsi che siano correttamente caricate: python -c "import Crypto"
    python -c "import paramiko"
    python -c "import cElementTree"

    Se non si verificano messaggi di errore tutto funziona correttamente. Se il messaggio di errore segnala la mancanza della libreria, controllate che la variabile $PYTHONPATH sia corretta.

    Per ripetere l'installazione dei moduli python: rm -rf ~/lib/python/* Per ogni libreria inviare il comando: python setup.py clean

  6. A questo punto rimane da installare BZR, effettuate il download dei sorgenti di Bazaar nella directory di appoggio, ed inviate il comando di installazione. Potrebbe mancare il modulo Pyrex, nel caso installate anche quello.
  7. Test finale: cd
    bzr help
    Se ricevete il riepilogo dei comandi, tutto funziona correttamente. Se ricevete qualche messaggio di errore che reclama librerie... Le variabili Path non sono corrette.

Buon divertimento con Bazaar! Nel prossimo articolo vi scrivo come usarlo brevemente dopo di che... DIY!

pyftpdlib versione 0.3.0

Nuova versione 0.3.0 per il modulo di Python che permette di allestire con poco sforzo un server ftp su qualsiasi sistema operativo in cui sia installato Python.

In particolare è stato migliorata l'iterazione della lettura del file system ed il supporto alla gestione degli utenti.

Python FTP server library

Python FTP Server Library è una libreria che permette con poche righe di attivare un server ftp sul dispositivo in cui viene interpretato lo script Python.

Supporta meglio di altre l'implementazione del protocollo FTP ed è facilmente configurabile.

Immediatamente ho pensato che si potrebbe utilizzare su PyS60 per attivare un fileserver sul proprio cellullare. Utile ad esempio per trasferire files da pc a cellulare, magari anche tramite bluetooth.

Si tratta comunque di software libero, quindi può essere integrata in qualsiasi progetto libero. Come ad esempio potrebbe esserlo per il mio progetto di CarPC libero.

©MMVIII Bologna Informatica - p.i. 0123456789