<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>