<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Helvetica, Arial, sans-serif">Weweweee!<br>
Dal Ninux Day ad oggi ho lavorato a un aggiornamento alla versione
locale di Ninuxoo: l'installer.<br>
Finalmente l'ho pushato su Github ed è tutto reperibile qui: <a
href="https://github.com/gubi/Ninuxoo-Semantic-Decentralized">https://github.com/gubi/Ninuxoo-Semantic-Decentralized</a><br>
<br>
<b>A che punto siamo<br>
</b>Appena fatto e testato l'installer.<br>
<u>Se cercate qualcosa di completamente funzionante e testato
lasciate perdere e aspettate un altro po'</u>, ma se vi va di
darmi una mano <b>il vostro contributo è veramente ben accetto</b>
:)<br>
<b><br>
</b><b>Cosa cambia da prima<br>
</b></font>Semplicemente, non serve più impazzirsi a creare i vari
files di config perché pensa a tutto l'installer.<br>
<br>
<b>Come si fa<br>
</b>Scaricate il pachetto da Github, lo scompattate sul nas o sul
device che lo controlla e lanciate il browser: parte l'interfaccia
grafica che vi consentirà di installare Ninuxoo in poco o nulla.<br>
<br>
<b>Cosa è necessario<br>
</b>
<ul>
<li>Un NAS/device con Apache e PHP funzionante.<br>
No dipendenze.</li>
<li>Samba configurato con almeno una directory in share.<br>
</li>
</ul>
<br>
<b>L'installer dietro le quinte, che cosa fa</b><br>
Prima di tutto controlla che ci sia il file "<tt>config.ini</tt>",
se non c'è redireziona su <a class="moz-txt-link-freetext" href="http://LOCALHOST/?setup">http://LOCALHOST/?setup</a> (per LOCALHOST si
instende l'ip del device).<br>
Dopodiché i passi sono i seguenti:<br>
<ol>
<li>Crea la chiave RSA (privata e pubblica), utile più avanti;<br>
</li>
<li>Controlla che ci sia la connessione ad internet (serve per
scaricare i dati illustrati più avanti).<br>
Se non c'è vi avvisa e non vi fa andare avanti finché non
collegate il device alla rete.<br>
Inoltre il controllo della connessione è temporizzato: se c'è
rete controlla ogni 30 secondi, diversamente ogni 15.<br>
<b>Please feedback su questi tempi.</b></li>
<li>Si scarica l'elenco dei nodi attivi (e hotspot) dal MapServer,
così da attivare la select per la scelta del nodo di
riferimento.<br>
Indirizzo da cui prende i dati: <a
href="http://map.ninux.org/nodes.json">http://map.ninux.org/nodes.json</a>
(passando per un parser che fa un CURL in caso il vostro NAS non
riesca a fare richieste asincrone su HOST diversi dal vostro IP
(succede, il mio fa così: restituisce "errore" 200 e non
acquisisce il contenuto).</li>
<li>Fa un check delle condivisioni samba configurate (parsando il
comando shell:<tt> find / -type f -name "smb.conf" -print
2>/dev/null</tt>)</li>
<li>Una volta scelto dalla select il nodo di riferimento, ne
assume le coordinate e:</li>
<ul>
<li>da questo url: <a
href="http://nominatim.openstreetmap.org/reverse?format=json&lat=LAT&lon=LON">http://nominatim.openstreetmap.org/reverse?format=json&lat=LAT&lon=LON</a>
assume i dati geografici (Città, Zona, Regione, Paese);</li>
<li>da questo url: <a
href="http://openweathermap.org/data/2.1/find/name?name=CITY">http://openweathermap.org/data/2.1/find/name?name=CITY</a>
l'ID OpenWeatherMap (per il meteo locale senza la Stazione o
per l'invio dei dati in caso di Stazione)<br>
</li>
<li>e da questo url: <a
href="http://www.earthtools.org/height/LAT/LON">http://www.earthtools.org/height/LAT/LON</a>
la quota di altitudine;</li>
</ul>
<li>Una volta compilato tutti i campi necessari (a dire il vero
basterebbe il nome del nodo e del NAS) parte l'installazione
vera e propria:</li>
<ol>
<li>prende i valori del modulo, li cifra via RSA (ci sono dati
più che sensibili su connessione non-cifrata) e li invia al
parser che...</li>
<li>crea il file "<tt>config.ini</tt>";</li>
<li>crea il file nascosto "<tt>.db.conf</tt>" (dati per la
connessione al database in caso si abbia la Stazione Meteo)</li>
<li>crea un cronjob per la scansione ciclica dei files (ogni 6
ore). In ogni caso fa un file "<tt>crontab</tt>" da cui si può
copiare il cronjob.</li>
<li>avvia lo scanning e una volta terminato ricarica la pagina.</li>
</ol>
</ol>
<p>Dopo tutto ciò (dietro le quinte) il vostro Ninuxoo locale è
installato e pronto per l'uso!<br>
Lato utente: 3 moduli (con altri estendibili) e un pulsantone
"installa".<br>
Yuhu!<br>
</p>
<b>Cosa mi manca da fare<br>
</b>Di lavoro ne è rimasto ancora un bel po'...<br>
Innanzitutto devo ottimizzare i risultati delle ricerche, che a
volte squaqquarellano.<br>
Poi devo sistemare la visualizzazione delle schede (migliorare le
query semantiche, schede diverse se sono film, musica o altro).<br>
Inoltre è da capire bene qual'è il metodo di parsing del nome del
file, da questo poi si va a cercare i risultati sulla rete per
visualizzare appunto le schede. Ad esempio adesso è "Nome film (Anno
- Regista).ext", ma sarebbe più consono qualcosa di più
"intelligente" ovvero indipendente dal criterio di rinominazione
stabilito.<br>
Consigli?<br>
<br>
Un grazie enorme a tutti voi<br>
Gubi<br>
<br>
<div class="moz-signature">-- <br>
<div style="width: 300px; padding-top: 15px; font-family: Arial,
Helvetica; color: #666;">
<hr style="border: #ccc 1px solid;">
<p style="font-size: 0.9em;"> <b>Alessandro Gubitosi</b><br>
<img src="cid:part6.04050309.08090309@gotanotherway.com"> <span
style="font-size: 0.8em;">0x652EB66B</span> </p>
<p style="font-size: 0.8em;"> <img
src="cid:part7.04090804.02060607@gotanotherway.com">
<a class="moz-txt-link-abbreviated" href="mailto:gubi.ale@gotanotherway.com">gubi.ale@gotanotherway.com</a> </p>
<p style="font-size: 0.8em;"> <img
src="cid:part8.00040108.07020306@gotanotherway.com"> (+39)
366 7421921<br>
<img src="cid:part9.08020903.07010002@gotanotherway.com">
(+39) 06 92927355<br>
<img src="cid:part10.00060208.02000900@gotanotherway.com">
5040 </p>
</div>
</div>
</body>
</html>