PyGTK su N900

pygtk_logo

pygtk_logoCome programmatore avere un cellulare che in pratica è un computer (oramai il 100% dei telefoni di fascia alta così detti smartphone lo sono) ma che non si può programmare in maniera semplice e veloce è sempre stata un grave mancanza! Finalmente con N900 le cose stanno cambiando…

La sua somiglianza con la distribuzione Debian e la versatilità nell’accedere ai permessi di root (come già fatto vedere qui) rendono questa macchina l’ideale per gli smanettoni come me! :)

In questo articolo vedremo come installare e creare una piccola applicazione con PyGTK.

Prima di tutto installiamo il sistema di base. Maemo è molto simile a Debian, quindi si può usare il comando apt-get e i tool relativi:

Nokia-N900:~# apt-cache search PyGTK
python-glade2 – GTK+ bindings: Glade support
python-gtk2 – Python bindings for the GTK+ widget set
pygtkeditor – PyGTKEditor is a source code editor specially designed for devices running Maemo.
python-gtk2-dev – GTK+ bindings: devel files

Il pacchetto che ci interessa è python-gtk2. Installiamolo:

Nokia-N900:~# apt-get install python-gtk2
Reading package lists… Done
Building dependency tree       
Reading state information… Done
The following extra packages will be installed:
pymaemo-optify python python-cairo python-central python-gobject
python-minimal python-numeric python-support python2.5 python2.5-minimal
Suggested packages:
python-doc python-tk python-profiler python-gobject-dbg python-gtk2-doc
python-numeric-tutorial python-numeric-ext python-numeric-dbg python2.5-doc
binfmt-support
The following NEW packages will be installed:
pymaemo-optify python python-cairo python-central python-gobject python-gtk2
python-minimal python-numeric python-support python2.5 python2.5-minimal
0 upgraded, 11 newly installed, 0 to remove and 1 not upgraded.
Need to get 5636kB of archives.
After this operation, 20.3MB of additional disk space will be used.
Do you want to continue [Y/n]?

Rispondiamo Y e PyGTK verrà installato nell’N900.

A questo punto ci conviene installare anche altri due pacchetti di utilità: wget e vim. Il primo è un tool da linea di comando per scaricare file via HTTP e il secondo è il mio editor di testi preferito (naturalmente voi scaricate quello che più vi aggrada).

Ora proviamo subito il nostro nuovo sistema di sviluppo, andiamo sul sito del progetto PyGTK e dalle pagine del tutorial del progetto (che consiglio di leggere a tutto coloro che iniziano ad usare questo sistema) prendiamo il classico Hello World; cioè, dall’N900 (via terminale SSH, per fare prima) diamo il comando:

Nokia-N900:~# wget http://www.pygtk.org/pygtk2tutorial/examples/helloworld.py
–09:57:14–  http://www.pygtk.org/pygtk2tutorial/examples/helloworld.py
=> `helloworld.py’
Risoluzione di www.pygtk.org in corso… 209.132.180.167
Connessione a www.pygtk.org|209.132.180.167:80… connesso.
HTTP richiesta inviata, aspetto la risposta… 200 OK
Lunghezza: 3.093 (3.0K) [text/plain]

100%[====================================>] 3.093         –.–K/s             

09:57:18 (39.03 KB/s) – “helloworld.py” salvato [3093/3093]

Quindi diamo i permessi di esecuzione al file appena scaricato:

Nokia-N900:~# chmod +x helloworld.py

e lanciamo il programma:

Nokia-N900:~# ./helloworld.py

Ecco che sul display dell’N900 apparirà l’output del programma come riportato in figura.

PyGTK-ss01

Ma non solo! Il supporto per N900 di PyGTK è completo, quindi una qualsiasi applicazione PyGTK funzionerà senza problemi (a meno di altre dipendenze, ovviamente)! Ad esempio, se andiamo nella sezione Applications del sito di PyGTK possiamo trovare una serie di applicazioni già pronte da scaricare; io ho scelto Lybniz, una simpatica applicazione che può servire per lo studio delle funzioni e che è già presente nei repository dell’N900; infatti:

Nokia-N900:~# apt-get install lybniz
Reading package lists… Done
Building dependency tree       
Reading state information… Done
The following extra packages will be installed:
python-dbus python-hildon python-notify python-osso
Suggested packages:
python-dbus-doc python-dbus-dbg
Recommended packages:
gnome-python
The following NEW packages will be installed:
lybniz python-dbus python-hildon python-notify python-osso
0 upgraded, 5 newly installed, 0 to remove and 1 not upgraded.
Need to get 392kB of archives.
After this operation, 1659kB of additional disk space will be used.
Do you want to continue [Y/n]?

Poi confermiamo con il solito Y che vogliamo scaricare ed installare il programma ed una volta finito basterà lanciare il programma:

Nokia-N900:~# lybniz

e sullo schermo dell’N900 apparirà:

Lybniz-ss01

Premo Plot e…

Lybniz-ss02

Fantastico!

Su Rodolfo Giometti

Ingegnere informatico libero professionista ed esperto GNU/Linux offre supporto per: - device drivers; - sistemi embedded; - sviluppo applicazioni industriali per controllo automatico e monitoraggio remoto; - corsi di formazione dedicati. Manutentore del progetto LinuxPPS (il sottosistema Pulse Per Second di Linux) contribuisce attivamente allo sviluppo del kernel Linux con diverse patch riguardanti varie applicazioni del kernel e dispositivi (switch, fisici di rete, RTC, USB, I2C, network, ecc.). Nei 15+ anni di esperienza su Linux ha lavorato con le piattaforme x86, ARM, MIPS & PowerPC.

Lascia un commento

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fonire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o clicchi su "Accetta" permetti al loro utilizzo.

Chiudi