[Gfoss] Sperimentazione pip plugin per qgis per installare nuovi moduli python

Luca Mandolesi mandoluca a gmail.com
Mar 4 Mar 2014 00:51:31 CET


Motu proprio...scusate la prolissità.
Allora siamo a questo punto...

Ho buttato giù in micro plugin che distribuisce dentro di se sia
l'installer di setuptools che di pip...

Cosa fa a primo avvio
all'avvio se tutto va bene installa pip e setuptools dentro al Qgis
presente sulla propria macchina: per ora sto forzando una installazione
dentro a Dufour votata a questo punto alla sperimentazione selvaggia.
Questo forse porterà a problemi di mantenimento ma vedremo. Non so nemmeno
se la cosa ha effetto sotto ma o linux...passettino alla volta

Dove installare
Nella teoria ci sono due strade: o il plugin riconosce su quale
installazione di Qgis lavora (io ne ho 3 diverse dalla 1.8, alla osgeo4w e
la dufour standalone), oppure si può aggiungere una finestrella per
installazini avanzate dove è l'utente a dire dove sta la shell di Osgeo su
win, mentre per mac e linux se non erro basta mandare tutto da terminale
che tanto qgis pesca dentro al python di sistema. Quindi sarà il caso di
dividere il pannello in tre per utenti win, mac e linux.

Come funzia per ora
come vedete dalla screenshot [0] (la vedete?) faccio una prova di import
qrcode, un modulo per fare i codici qr, che alla prima prova non risulta
presente, poi scrivo il modulo che desidero e lancio
l'installazione...l'ouput mi da tutti i processi che fa il plugin e poi
rifaccio l'import nella medesima sessione senza riavviare ... mooolto
importante...e qrcode viene caricato senza mandarmi errori.

Dove stava l'inghippo: ho dovuto evitare popen o subprocess perchè pare che
sotto win si crei un problema di handle sui processi lanciati che pare
abbia fatto smoccolare vari utenti...quindi mi sono appoggiato a QProcess
delle Qt [1] e tutto pare girare.

Dove sta l'altro inghippo: con pip non tutto si trova, quindi al massimo si
può aggiungere anche una maniera di scaricare i moduli, puntare alla
cartella e lanciare come da shell Osgeo4W l'installer (è un doppione?) che
punta al file setup.py...si lo so, non tutti gli installer vanno subito di
setup.py.... ma magari a qualche clickomane piace di più.

Bien, per ora son arrivato qua... appena sto coso gira un po' più
liberamente da Dufour, passo tutto in lista su qgis-dev per eventuali
suggerimenti, tipo quello di mettere blocchi o allert su moduli sensibili
di QGis già distribuiti al suo interno, poi uno se vuol fare esplodere la
propria installazione ben venga. :)

Ciao a tutti! Si aspettano idee, critiche, suggerimenti,soprattutto dai
neofiti che mal si trovano con le shell!
Luca


[0]
https://lh5.googleusercontent.com/-Eplxy__Xm3o/UxURnYpMSmI/AAAAAAAADsE/2MoMT9sUvpM/w1075-h604-no/testpipinstaller.PNG
[1]:
http://stackoverflow.com/questions/18459770/adding-button-and-separate-window-to-python-qprocess-example




2014-03-03 10:16 GMT+01:00 Paolo Cavallini <cavallini at faunalia.it>:

> Il 03/03/2014 10:06, Luca Mandolesi ha scritto:
> > Buongiorno a tutti, ieri sera ho messo giu due righe di codice che
> > installano setuptools e pip sulla propria installazione di qgis e
> > permettono da python di installare moduli aggiuntivi dentro qgis. Ora
> > proverò a convertirlo in plugin... Domenda: qualcuno sta lavorando a
> > qualcosa di simile ? Richiesta: chiedo ai python guru in lista di
>
> Non mi risulta, a parte Larry che ha detto qualcosa di simile, ma non mi
> pare abbia scritto codice.
> Ti consiglio caldamente di annunciare questo tuo lavoro in lista qgis-dev.
> Grazie mille.
>
> --
> Paolo Cavallini - www.faunalia.eu
> QGIS & PostGIS courses: http://www.faunalia.eu/training.html
> _______________________________________________
> Gfoss at lists.gfoss.it
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> I messaggi di questa lista non hanno relazione diretta con le posizioni
> dell'Associazione GFOSS.it.
> 666 iscritti al 22.7.2013
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20140304/dd20805e/attachment-0001.html>


Maggiori informazioni sulla lista Gfoss