2009-07-03

Python + S60 + Linux

Mi sono imbattuto per caso nel pacchetto PyS60.
Si tratta dell'interprete Python per SymbianOS

Possiedo un Nokia 6110Navigator con SymbianOS 3rd, lo ritengo un buon sistema operativo per cellulari anche se a volte lento e in alcune situazioni "macchinoso" per effettuare operazioni di normale routine.
Una pecca che non riesco a perdonare a questo cellulare è l'esigenza di verificare, tramite firme e certificati, la provenienza del software che permette di eseguire. Può essere un metodo sicuro per proteggere da esecuzioni "maliziose" nella maggior parte dei casi ma ritengo che possa essere anche sensato permettere la disabilitazione di tali controlli oppure tanto meglio permettere la forma in proprio senza dover acquistare il certificato, mi pare che ci si riferisca a qualcosa simile a self-signed che che per uso personale può essere più che corretto.

Questa caratteristica/difetto del mio cellulare non mi ha stimolato a sviluppare niente da farci girare sopra, PyS60 mi è sembrata la soluzione, i pacchetti da installare sono due: il Python e la corrispondente Shell, il secondo dei due va firmato, io l'ho fatto firmare dal servizio on-line di http://www.symbiansigned.com. Una volta installato l'interprete si possono eseguire tutti gli script che si vogliono e con potenzialità estreme dalla notevole semplicità di sfruttamento.

A titolo di appunti personali riporto i comandi per connettere la mia linux box ( Opensuse 11.0 su msi Wind U100 ) all'interprete Python installato nel cellulare, in altre occasioni proverò a postare esaustivi link per l'installazione.

individuare l'indirizzo del cellulare una volta attivatone il Bluetooth e reso "visibile"
$ hcitool scan
Scanning ...
XX:XX:XX:XX:XX:XX    NomeBlueTooth del Cellulare

segnarsi le sei coppie di cifre esadecimali che rappresentano l'indirizzo, io ho riportato l'esempio con un indirizzo inventato e non valido

per copiare uno script nella cartella C:\\Python che nel mio cellulare rappresenta la cartella di ricerca degli script da parte dell'interprete:
$ obexftp -b XX:XX:XX:XX:XX:XX -c E: -c Python -p hello.py
Browsing XX:XX:XX:XX:XX:XX ...
Channel: 11
Connecting...done
Sending "C:"... done
Sending "Python"... done
Sending "hello.py"... done
Disconnecting...done

$ sdptool add --channel=2 SP

$ rfcomm listen rfcomm2 2
Waiting for connection on channel 2 Connection from XX:XX:XX:XX:XX:X to /dev/rfcomm2 Press CTRL-C for hangup 
in una nuova shell che per via di qualche permesso errato deve essere aperta come root:
$ screen /dev/rfcomm2
>>>


Nessun commento:

Posta un commento