582 lines
21 KiB
HTML
582 lines
21 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<meta charset="utf-8">
|
|
|
|
<title>Libre-Mesh</title>
|
|
|
|
<meta name="description" content="Ninux/Libre-Mesh presentation at Nack 2017">
|
|
<meta name="author" content="Cristina Carnevali" >
|
|
|
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
|
|
|
<link rel="stylesheet" href="css/reveal.min.css">
|
|
<link rel="stylesheet" href="css/theme/cri.css" id="theme">
|
|
|
|
<!-- For syntax highlighting -->
|
|
<link rel="stylesheet" href="lib/css/zenburn.css">
|
|
|
|
<!-- If the query includes 'print-pdf', include the PDF print sheet -->
|
|
<script>
|
|
if( window.location.search.match( /print-pdf/gi ) ) {
|
|
var link = document.createElement( 'link' );
|
|
link.rel = 'stylesheet';
|
|
link.type = 'text/css';
|
|
link.href = 'css/print/pdf.css';
|
|
document.getElementsByTagName( 'head' )[0].appendChild( link );
|
|
}
|
|
</script>
|
|
<!--style>img{height:40vw !important;min-width:auto !important; width:auto !important;}</style-->
|
|
<!--[if lt IE 9]>
|
|
<script src="lib/js/html5shiv.js"></script>
|
|
<![endif]-->
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<div class="reveal">
|
|
|
|
<!-- Any section element inside of this container is displayed as a slide -->
|
|
<div class="slides">
|
|
<section>
|
|
<h1>Ninux</h1>
|
|
<h3>Wireless Community Network</h3>
|
|
<p>
|
|
<small>Ignifugo (<a href="http://wiki.bologna.ninux.org">NinuxBO</a>).</small>
|
|
</p>
|
|
<p>
|
|
<small>Napoli 2017 - Nack</small>
|
|
</p>
|
|
<p>
|
|
</p>
|
|
</section>
|
|
|
|
<section>
|
|
|
|
<h2>chi sono</h2>
|
|
<p>Sono una frontend developer, partecipo alla comunità Hackmeeting e provo a fare il mio meglio in alcuni progetti...</p>
|
|
</section>
|
|
<section>
|
|
|
|
<h2>Uno di questi è..</h2>
|
|
|
|
|
|
<p class="fragment">Una organizzazione indipendente di contadini per l'autonomia alimentare dalle GDO</p>
|
|
<img src="img/campiaperti.jpg"/>
|
|
</section>
|
|
<section>
|
|
|
|
<p>Quindi questa estate è successo che sono andata a vivere in campagna!</p>
|
|
|
|
<img src="img/zoom_bolognaNinux.png"/>
|
|
</section>
|
|
|
|
<section>
|
|
|
|
<p>50 km da Bologna!</p>
|
|
|
|
<img src="img/casaportico.jpg"/>
|
|
</section>
|
|
<section>
|
|
|
|
<p>così</p>
|
|
|
|
<img src="img/castello_da _cabat.jpg"/>
|
|
</section>
|
|
|
|
|
|
<section>
|
|
|
|
<h2>Quindi questa estate è successo che sono andata a vivere in campagna e..</h2>
|
|
|
|
<p class="fragment">spendo di più perchè faccio pià telefonate</p>
|
|
<p class="fragment">internet è molto più lento perchè non sono zone interessanti per gli ISP</p>
|
|
<p class="fragment">sei fuori dalla città e quindi le tue comunicazioni diventano super importanti</p>
|
|
<p class="fragment">intensifichi le comunicazioni con quelli che vivono (+o-) vicino a te</p>
|
|
</section>
|
|
|
|
<section>
|
|
<!-- Nuova diapo --> <section data-background="img/network.jpg" style="background: rgba(255,255,255,0.9);">
|
|
<h2><span style="color:black;">Costruire una rete diversa</span></h2>
|
|
</section>
|
|
<section >
|
|
<h2>In un altro modo: </h2><p> costruirci una infrastruttura dal basso</p>
|
|
<img style="border:0px" width="700" src="img/ninux.png" alt="ninux">
|
|
|
|
|
|
</section>
|
|
|
|
<!--section data-markdown>
|
|
<script type="text/template">
|
|
<h2>Storia di Ninux</h2>
|
|
<ol>
|
|
<li value="2002">Nino fonda Ninux a Roma: desiderio di sperimentare</li>
|
|
<li value="2005-2009">sperimentazione servizio internet per le famiglie e spazi sociali</li>
|
|
<li value="2010">La rete parte anche a Pisa e a cascata in [altre città](http://map.ninux.org)</li>
|
|
<li value="2013">NinuxRoma [entra davvero](http://www.namex.it/en/who/members) a far parte di internet
|
|
<li value="2014">Nasce pure Ninux Verona</li>
|
|
</ol>
|
|
</script>
|
|
</section-->
|
|
|
|
<section><img src="img/mappa_Italia.png"></section>
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Perchè?</h2>
|
|
<ul>
|
|
|
|
<li style="margin: 3px 0;" class="fragment">Performance
|
|
<ul style="list-style-type: none;"><li style="font-size: smaller;">una connessione veloce con chi conosci!</li></ul></li>
|
|
<li style="margin: 3px 0;" class="fragment">Hacktivism
|
|
<ul style="list-style-type: none;"><li style="font-size: smaller; line-height: 1;">Senza censura, network neutrality, servizi decentralizzati e infrastruttura.</li></ul></li>
|
|
<li style="margin: 3px 0;" class="fragment">Privacy
|
|
<ul style="list-style-type: none;"><li style="font-size: smaller;">gestione indipendente dagli ISP, software open-source... e presto anche l'hardware!</li></ul></li>
|
|
<li style="margin: 3px 0;" class="fragment">Resiliente
|
|
<ul style="list-style-type: none;"><li style="font-size: smaller;">per avere un network che resiste alle catastrofi</li></ul></li>
|
|
<li style="margin: 3px 0;" class="fragment">Contro il digital divide.
|
|
<ul style="list-style-type: none;"><li style="font-size: smaller;">porta la connessione dove hai voglia!</li></ul></li>
|
|
</ul>
|
|
</section>
|
|
<section >
|
|
<h2>Perchè? (2)</h2>
|
|
|
|
<ul>
|
|
<li style="margin: 3px 0;" class="fragment">Un network modulare e flessibile</li>
|
|
<li style="margin: 3px 0;" class="fragment">Per condividere esperienza e conoscenza</li>
|
|
<li style="margin: 3px 0;" class="fragment">Meno commerciale, più comunitario</li>
|
|
<li style="margin: 3px 0;" class="fragment">DIY
|
|
<li style="margin: 3px 0;" class="fragment">Autonomia tecnica</li>
|
|
</ul>
|
|
|
|
|
|
</section>
|
|
|
|
<section>
|
|
<h3> Pico Peering Agreement</h3>
|
|
<p style="font-size: smaller"> 1. Free Transit: </br>
|
|
|
|
The owner agrees to provide free transit accross their free network.
|
|
The owner agrees not to modify or interfere with data as it passes through their free network.
|
|
</br>
|
|
|
|
2. Open Communication:
|
|
</br>
|
|
|
|
The owner agrees to publish the information necessary for peering to take place
|
|
This information shall be published under a free licence
|
|
The owner agrees to be contactable and will provide at least an email adress
|
|
</br>
|
|
|
|
3. No Warranty:
|
|
</br>
|
|
|
|
There is no guaranteed level of service
|
|
The service is provided "as is", with no warranty or liability of whatsoever kind
|
|
The service can be scaled back or withdrawn at any time with no notice
|
|
</br>
|
|
|
|
4. Terms of Use:
|
|
</br>
|
|
|
|
The owner is entitled to formulate an 'acceptable use policy'
|
|
This may or may not contain information about additional services provided (apart from basic access)
|
|
The owner is free to formulate this policy as long as it does not contradict points 1 to 3 of this agreement (see point 5)
|
|
</br> 5. Local Amendments:
|
|
</br>(to be filled in ad-hoc by the node owner as this document is implemented)
|
|
|
|
|
|
</p>
|
|
</section>
|
|
</section>
|
|
|
|
|
|
<section>
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Che servizi trovo in Ninux?</h2>
|
|
<p class="fragment">Nessuno!</p>
|
|
<div class="fragment"><p>Lo scopo della comunità è costruire l'infrastruttura, poi ognun@ decide che cosa condividere, che cosa necessita e cosa vuol trovarci.</p>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Che servizi trovo in Ninux?</h2>
|
|
<p>Example:</p>
|
|
<div class="fragment">
|
|
<ul>
|
|
<li>Cloud, files sharing, archives, backups;</li>
|
|
<li>Videogames servers;</li>
|
|
<li>Piattaforme per scambiare cose, verdure o carsharing;</li>
|
|
<li>Applicazioni locali di cryptovalue;</li>
|
|
<li>Audio and video Streaming;</li>
|
|
<li>VoIP calls, email, chat, videoconference software;</li>
|
|
<li>Social network e strumenti per il lavoro collaborativo;</li>
|
|
<li>Internet connection (IF...);</li>
|
|
<li>...quello che puoi pensare e metterlo su!</li>
|
|
</ul>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Ma.. quindi c'è o no <br/> la connessione ad internet?</h2>
|
|
<p>Lo scopo di Ninux <b><u><i>NON è</i></u></b> dare l'accesso ad Internet, ma costruire un network dal basso, un ALTRA INTERNET, davvero decentralizzata per l'hardware, il software e la gestione. Tu puoi trovare una connessione ad Internet se:</p>
|
|
<ul><li style="margin: 5px 0;" class="fragment">IF qualcuno condivide l'ADSL,</li>
|
|
<li style="margin: 5px 0;" class="fragment">IF ci si organizza per comprare banda all'ingrosso,</li>
|
|
<li style="margin: 5px 0;" class="fragment">IF alcune organizzazione diventano un peer provider, ex: Ninux Roma è un Neutral Access Point!</li>
|
|
<!--li style="margin: 5px 0;" class="fragment">se usiamo IPv6: ogni partecipante può gestire una sottorete di IPv6 pubblici</li--></ul>
|
|
|
|
</section>
|
|
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Ed è legale?</h2>
|
|
<p>Sì!</p><p>dal 2012, guarda: <a href="http://ninux.org/LeggiWireless">http://ninux.org/LawsAboutWireless</a></p>
|
|
<br /><br />
|
|
<h2>Ma fa male?</h2>
|
|
<p>Le antenne sono molto ma molto meno potenti di quelle dei telefoni cellulari <br /> e stanno sul tuo tetto invece che in tasca.</p>
|
|
</section>
|
|
</section>
|
|
|
|
|
|
<section>
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Ok, come si fa?</h2>
|
|
<div class="fragment"><p>Ci sono gruppi di Ninux che ti possono insegnare le basi...</p>
|
|
<img width="70%" src="img/ninuxday.jpg" alt="Formazione"></div>
|
|
</section>
|
|
<section data-background="img/ninux17v_bassa.jpg" style="background: rgba(255,255,255,0.9);">
|
|
<small>promo</small>
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Ok, come si fa?</h2>
|
|
<p>... e ti danno una mano anche sul tetto!</p>
|
|
<img height="100%" src="img/eigennet-montaggio-exfausto2.jpg" alt="Cooperazione">
|
|
</section>
|
|
</section>
|
|
|
|
<section>
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Ok, ok, e l'hardware?</h2>
|
|
<div class="fragment"><p>Ponti Wireless sulle frequenze libere.
|
|
Quinfi congiungiamo case a vista con router da esterni.</p>
|
|
<img width="1000" src="img/ap-laptop-community.jpg"></div>
|
|
</section>
|
|
<section>
|
|
<p>Più o meno queste cose:</p>
|
|
<div class="fragment"><p>x 2</p></div>
|
|
<img height="100%" src="img/things.jpg">
|
|
</section>
|
|
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<p>1.A)Vedi il posto:</p>
|
|
|
|
<img src="img/castello_samoggia_visto_da_cabat.jpg" alt="">
|
|
</section>
|
|
<section>
|
|
<p>1.A)Vedi il posto: zoom</p>
|
|
|
|
<img src="img/zoom_castello_samoggia.jpg" alt="Router wireless da esterni">
|
|
</section><section>
|
|
<p>1.B)Vedi il posto:</p>
|
|
|
|
<img src="img/cabat_vista_da_castello_samoggia.jpg" alt="Router wireless da esterni">
|
|
</section><section>
|
|
<p>1.B)Vedi il posto: zoom</p>
|
|
|
|
<img src="img/zoom_cabat.jpg" alt="Router wireless da esterni">
|
|
</section>
|
|
<section>
|
|
<p>2.A)Controlla che sia possibile andare sul tetto A</p>
|
|
|
|
<img src="img/sottotetto_cabat.jpg" alt="">
|
|
</section>
|
|
<section>
|
|
<p>2.B)Controlla che sia possibile andare sul tetto B</p>
|
|
|
|
<img width="50%" src="img/sottotetto_castello.jpg" alt="">
|
|
</section>
|
|
<!-- Nuova diapo --> <section>
|
|
<p>2)Guarda sulla mappa per sapere la zona di Fresnel</p>
|
|
<div class="fragment"><p>9m</p></div>
|
|
<img src="img/Antennine1vs.jpg" alt="Router wireless da interni">
|
|
</section>
|
|
<section>
|
|
<p>3)Test!</p>
|
|
|
|
<img src="img/primaprovacabat.jpg" alt="Router wireless da esterni">
|
|
</section>
|
|
<section>
|
|
<p>3.A)Antenna A </p>
|
|
<div class="fragment">
|
|
<img width="50%" src="img/cabat_1antenna.jpg" alt="Router wireless da interni"></div>
|
|
</section>
|
|
<section>
|
|
<p>3.A)Antenna B </p>
|
|
<div class="fragment">
|
|
<img width="50%" src="img/castello_1antenna.jpg" alt="Router wireless da interni"></div>
|
|
</section>
|
|
<section>
|
|
<p>4.A)Imposta la rete locale A</p>
|
|
|
|
<img src="img/cabat_casa.jpg" alt="Router wireless da interni">
|
|
</section><section>
|
|
<p>4.B)Imposta la rete locale B</p>
|
|
|
|
<img src="img/castello_sotto.jpg" alt="Router wireless da interni">
|
|
</section>
|
|
<section>
|
|
<h2>5)Vai nuovamente sul tetto!</h2>
|
|
|
|
<img width="50%" src="img/cabat_2antenna2.jpg" alt="Router wireless da interni">
|
|
</section>
|
|
<section>
|
|
<p>... e non scordarti degli amici</p>
|
|
|
|
<img src="img/friend.jpg" alt="Router wireless da interni">
|
|
</section>
|
|
|
|
</section>
|
|
|
|
<section>
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>E il software?</h2>
|
|
<p style="margin: 20px 0;" class="fragment">I routers sono a tutti gli effetti dei computer,<br /> e la maggior parte hanno sistemi operativi proprietari</p>
|
|
<div class="fragment"><p style="margin: 20px 0;">Quindi ci installiamo una specifica Distro GNU/Linux!</p>
|
|
<img style="border:0px" src="img/openwrt-logo.png" alt="OpenWrt logo"></div>
|
|
<p class="fragment">It's easy</p>
|
|
</section>
|
|
<section>
|
|
<h2>Che cosa fa il firmware?</h2>
|
|
<p>Principalmente gestisce il routing dinamico,<br /> importante in un network mesh.</p>
|
|
<img width="85%" src="img/MeshAnimation.gif" alt="Animazione rete mesh routing dinamico"/>
|
|
</section>
|
|
<section>
|
|
<h2>Che software fanno routing?</h2>
|
|
<div class="fragment"><p>Ciascuna isola Ninux sceglie come maneggiare il routing interno.</p>
|
|
<p>Il routing tra isole (VPN o connessione diretta) era gestito come fa Internet (BGP) e poi con BMX.</p>
|
|
<img width="60%" src="img/bgp-small.jpg" alt="Routing tra isole"></div>
|
|
</section>
|
|
<section>
|
|
<h2>e le configurationi?</h2>
|
|
<p style="margin: 20px 0;" class="fragment">Non servono: le isole Ninux hanno sviluppato un firmware pre configurato (OpenWrt/LEDE derivato)!</p>
|
|
<div class="fragment"><p style="margin: 20px 0;">Al momento il più usato è Libre-Mesh, nato tra <br />Ninux (Italia), Guifi (Catalogna) e Altermesh (Argentina).</p>
|
|
<img width="50%" style="border:0px" src="img/libremesh-logo.png" alt="Libre-Mesh logo"></div>
|
|
<p style="margin: 20px 0;" class="fragment">Così puoi costruirti la tua rete mesh solo impostando il nome!</p>
|
|
</section>
|
|
</section>
|
|
|
|
|
|
|
|
<!--section>
|
|
<h1>Libre-Mesh</h1>
|
|
<h3>Mesh networking made simple and modular.</h3>
|
|
<p>
|
|
<small>ignifugo</small>
|
|
</p>
|
|
<p>
|
|
<small>H.A.C.K. 2017 - Budapest</small>
|
|
</p>
|
|
</section-->
|
|
|
|
<section>
|
|
<section>
|
|
<h2>Un tempo c'erano molti firmwares...</h2>
|
|
<ul>
|
|
<li>NinuxRoma ⇨ Sburratone</li>
|
|
<li>NinuxRoma ⇨ Scooreggione</li>
|
|
<li>eigenNet ⇨ eigenNet</li>
|
|
<li>Freifunk ⇨ various</li>
|
|
<li>AWMN ⇨ OpenMesh, Merdotik and various</li>
|
|
<li>GUIFI ⇨ AirMerdOS, Merdotik, qmp</li>
|
|
<li>Altermundi ⇨ Altermesh</li>
|
|
<li>Buenosaires Libre ⇨ APRouter, Byzantinum, Obelysk</li>
|
|
</ul>
|
|
<p><br/>
|
|
<h2 class="fragment">...e pochi sviluppatori</h2>
|
|
</p>
|
|
</section>
|
|
|
|
<section>
|
|
<h2>Così se ne è fatto un altro...</h2>
|
|
<h2 class="fragment">.. in una via collaborativa!</h2>
|
|
<table class="fragment"><tr><td width="60%">
|
|
eigenNet + GUIFI + Altermundi + NinuxVerona + NinuxBO ...
|
|
</td><td style="text-align:center;vertical-align:middle">
|
|
⇨ Libre-Mesh
|
|
</td></tr></table>
|
|
</section>
|
|
|
|
<section>
|
|
<h2>Com'è possibile?</h2>
|
|
<p>Ogni comunità ha differenti necessità...</p>
|
|
<p class="fragment">Allora facciamolo modulare!</p>
|
|
</section>
|
|
|
|
</section>
|
|
|
|
<section>
|
|
<section>
|
|
<h2>Modular Architecture</h2>
|
|
<img src="img/lime-modular.png">
|
|
</section>
|
|
</section>
|
|
<section>
|
|
<!--section>
|
|
<h2><a href="http://libremesh.org/" >Today's Network Architecture</a></h2>
|
|
</section-->
|
|
<section>
|
|
<h2>Che cosa usa Libre-Mesh?</h2>
|
|
<p>Libre-Mesh usa:
|
|
<ul><li>Batman-adv (layer 2) a livello locale, tutti i client appaiono come un singolo switch, in un unico dominio di broadcast.</li></ul></p>
|
|
<img width="60%" src="img/batman-adv-switch.jpg" alt="Switch virtuale">
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Che cosa usa Libre-Mesh?</h2>
|
|
<ul><li>BMX6 (layer 3, supporta IPv4 e IPv6) per unire i gruppi di nodi.</li></ul></p>
|
|
<img width="50%" src="img/batman-adv-bmx6.jpg" alt="Batman-adv BMX6">
|
|
<p class="fragment">Questi due protocolli scalano bene.</p>
|
|
</section>
|
|
|
|
|
|
|
|
<!--section>
|
|
<h2>IPv6</h2>
|
|
<p>Libre-Mesh aims to bring IPv6 native support everywhere.</p>
|
|
<p class="fragment">But what if IPv6 is not available in my town?</p>
|
|
<p class="fragment">Libre-Mesh is not just a firmware it offers a mesh IPv6 tunnel broker too: librenet6 <p/>
|
|
<div class="fragment">
|
|
<p>Why is it better then tunnel broker X?</p>
|
|
<ul>
|
|
<li>Is from the community</li>
|
|
<li>It is mesh</li>
|
|
</ul>
|
|
</div>
|
|
</section-->
|
|
</section>
|
|
<section>
|
|
<h2>Come averlo?</h2>
|
|
<h2>http://www.libremesh.org/</h2>
|
|
<p>
|
|
<b><a href="http://www.libremesh.org/">Dal sito web di LibreMesh </a> in 2 modi:</b> </p>
|
|
<ul><li>Codice sorgente da compilare</li>
|
|
|
|
<li>Pronto con le tue configurazioni!</li></ul>
|
|
|
|
</section>
|
|
|
|
<section>
|
|
<h2>Chef web tool</h2>
|
|
<p>Puoi chiedere al server "Cucina" di compilarti tutti i firmware per la tua rete.
|
|
</p>
|
|
</section>
|
|
|
|
<section>
|
|
<h2>Flashalo nelle antenne</h2>
|
|
<p>E' facile e lo puoi fare in modo grafico.
|
|
</p>
|
|
</section>
|
|
<section>
|
|
<h2>Oltre a funzionare :) <br/>
|
|
Libre mesh ti da una interfaccia html per monitorare la tua antenna</h2>
|
|
<p>oppure vai di ssh</p>
|
|
</section>
|
|
<section>
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Bel progetto.. ma è possibile?</h2>
|
|
<p>In Italia abbiamo 300 nodi attivi, ma migliaia di nodi potenziali</p>
|
|
<img width="70%" src="img/potenziali.png" alt="Mapserver Bologna">
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>Freifunk a Berlino</h2>
|
|
<p>con più di 300 nodi</p>
|
|
<img width="80%" src="img/freifunk.png" alt="Mapserver Bologna">
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>AWMN ad Atene</h2>
|
|
<p>con migliai di nodi!</p>
|
|
<img width="80%" src="img/awmn.png" alt="Mapserver Bologna">
|
|
</section>
|
|
|
|
<!-- Nuova diapo --> <section>
|
|
<h2>GUIFI in Catalogna</h2>
|
|
<p>con più di 30'000 nodi</p>
|
|
<img width="80%" src="img/guifi.png" alt="Mapserver Bologna">
|
|
</section>
|
|
<section><h2>E vicino a te?</h2>
|
|
<!-- img src="img/wlan_s.png" -->
|
|
</section>
|
|
|
|
|
|
</section>
|
|
<section id="questions" class="slide level2 future" style="top: 350px; display: none;" aria-hidden="true" hidden="">
|
|
<h1>Domande?</h1>
|
|
<p><small></small></p><small>
|
|
<p>Email address:</p>
|
|
<p><strong>ignifugo@insicuri.net</strong></p>
|
|
<p>Slides URL:</p>
|
|
<p><strong>https://git.lattuga.net/</strong></p>
|
|
<p>Website URL:</p>
|
|
<p><strong>https://digitigrafo.it/</strong></p>
|
|
<p>OpenPGP fingerprint:</p>
|
|
<p><code>F93B DB56 B5E5 9798 C890 6588 180E BFCA 5FFB B6E3</code></p>
|
|
</small><p><small></small></p>
|
|
</section>
|
|
<section>
|
|
<p class="fragment"><b>grazie!</b></p>
|
|
</section>
|
|
<section>
|
|
<h2>Credits</h2>
|
|
<ul>
|
|
<li>Ilario NINUX Verona</li>
|
|
<li>G10h4ck NINUX Pisa - EigenLab</li>
|
|
<li>xtheGamerx NINUX Bologna - HacklabBO</li>
|
|
|
|
</ul>
|
|
</section>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<script src="lib/js/head.min.js"></script>
|
|
<script src="js/reveal.min.js"></script>
|
|
|
|
<script>
|
|
|
|
// Full list of configuration options available here:
|
|
// https://github.com/hakimel/reveal.js#configuration
|
|
Reveal.initialize({
|
|
controls: true,
|
|
progress: true,
|
|
history: true,
|
|
center: true,
|
|
|
|
theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
|
|
transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/fade/none
|
|
|
|
// Parallax scrolling
|
|
// parallaxBackgroundImage: 'https://s3.amazonaws.com/hakim-static/reveal-js/reveal-parallax-1.jpg',
|
|
// parallaxBackgroundSize: '2100px 900px',
|
|
|
|
// Optional libraries used to extend on reveal.js
|
|
dependencies: [
|
|
{ src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
|
|
{ src: 'plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
|
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
|
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
|
|
{ src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
|
|
{ src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
|
|
]
|
|
});
|
|
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|