Webclient for SVN, Hudson e Artifactory

17 11 2009

Salve a tutti, in questi giorni mi sono addentrato ancora nel mondo del continuous integration perchè sto lavorando su un progetto in Java, gestito in outsourcing, dove aiuto un gruppo di sviluppatori ad utilizzare strumenti di sviluppo che facilitano il lavoro quali un sistema di continuos integration.

Sono partito da un progetto con subversion installato su una macchina e so che nel progetto usano Jboss con JDK 1.5 (ancora non so perchè)

Su un’altra macchina remota vado e installo JDK 1.5.0.22, Ant 1.7.1, Maven 2.2.1 (fino ad ora (2 mesi di progetto) hanno usato solo Ant e vorrebbero passare a Maven), Jboss 5.1.0, Webclient for SVN 3.1.0 e Artifactory 2.1.2.

Piccola nota: volevo usare Sventon ma l’ultima versione aveva problemi con le librerie e le precedenti mi davano anch’esse problemi.

Non sapete cosa è Artifactory ??? Allora è possibile che siete ancora freschi su Maven (non è che io non lo sia :-) )

Artifactory è una applicazione web che permette di gestire repository Maven, sviluppata in Java e rilasciata con licenza LGPL 3.0. L’applicazione è realizzata da JFrog Ltd, una società privata isreliana.

Strutturalmente si poggia su Apache Jackrabbit per l’implemetazione delle specifiche JSR 170 per il cosiddetto Java Content Repository (anche altri content manager come Nuxeo si appoggiano su Jackrabbit).

Piccola nota: la JSR 170 (rilasciata nel 2005) è seguita dalla JSR 283 da poco rilasciata (25 Settempre 2009) ed entrambe sono condotte da David Nuescheler, CTO della società svizzera Day Software.

Inoltre Artifactory si basa su Apache Lucene per indicizzare i file e Apache Wicket per l’interfaccia utente.

Ora l’applicazione è rilasciata come standalone ma esiste la versione war che può essere deployata su un application server e quindi l’ho messa su Jboss insieme ad Hudson e Webclient for SVN (questi 2 li ho poi legati con il plugin di hudson per Polarion che permette di linkare la lista di file modificati ai file presenti sul webclient e si possono anche vedere le differenze con le versioni precedenti).

La struttura è basata anche su database, di default Apache Derby ma che può essere cambiato (vedi anche qui).

A parte il fatto che Artifactory permette di base una autenticazione LDAP, quello che lascia senza parole è la semplicità di uso (andrebbe confrontato con Nexus ma non ne ho tempo, di sicuro nella versione base manca LDAP (anche se ho scoperto di recente che esiste un plugin di terze parti) e di sicuro gli sviluppatori hanno realizzato una bella guida a maven e un plugin per Eclipse). Una volta andato su

http://localhost:8080/artifactory

e loggato, sono andato sul pannello amministrativo e nella sezione repository ho creato un repository locale dove fare il deploy dei propri jar file e un repository virtuale in cui aggiungo quello locale più tutti i remoti quali quello di Maven, Jboss ecc ecc. Fatto ! Ora potete generare anche la sezione del file settings.xml da aggiungere nel vostro progetto Maven.

Per una vecchia guida vi rimando qui. Per un confronto con Nexus e Archiva vi rimando a questo link (attenzione è scritto dallo stesso autore della guida su Artifactory ma sembra serio)

Buon maven a tutti !

Nota: Webclient for SVN si basa su Subversion 1.4 (con versioni successive ho avuto problemi perchè usa un SVNKit vecchio che non posso aggiornare perchè c’è una particolare classe non più presente nelle ultime versioni), potete trovare Subversion 1.4 qui:

http://downloads-guests.open.collab.net/servlets/ProjectDocumentList?folderID=6





MySQL Workbench 5.1.18

8 11 2009

MySQL Workbench è un software multipiattaforma per la progettazione visuale e la generazione di database.

MySQL Workbench è rilasciato in due versioni, una chiamata Community OSS Edition e l’altra chiamata Standard Edition.

La versione Community è rilasciata con licenza GPL 2 mentre la Standard Edition è una versione commerciale che presenta una serie di funzionalità aggiuntive; sul sito del progetto troviamo una griglia comparativa delle funzionalità presenti nelle due versioni.

Dalla griglia comparativa delle versioni si nota che le funzionalità di generazione automatica della documentazione e di validazione degli schemi e dei modelli non sono disponibili nella versione Community ed è un peccato volevo provare almeno una delle due.

Nel momento in cui scrivo l’ultima versione stabile disponibile è la 5.1.18 Nella pagina per il download troviamo anche i pacchetti precompilati per Ubuntu 8.04 e 9.04 oltre che il codice sorgente, la versione per MacOs 10.5 X Intel e per windows.

Io personalmente l’ho scaricato e provato nella versione binaria per MacOs X.

Appena avviata l’applicazione, ci appare da subito un’area di lavoro con un progetto-schema nuovo e a cui possiamo prontamente modificare privilegi, aggiungere tabelle e viste, aggiungere diagrammi, scrivere script sql e tanto altro.

L’aspetto è molto amichevole e chiaro.

Visto che tra le funzionalità c’è quella di poter importare da script Sql e di esportare i diagrammi del db in formato immagine PNG ho deciso di cercare un progetto open che utilizza MySQL da cui prendere lo script ed importarlo.

Ho cercato tra l’elenco tra “l’elenco di programmi open source” di Wikipedia un progetto a caso e ne ho scelto uno chiamato Gestione Aziendale Libera perchè ha abbastanza e non troppe tabelle e diverse chiavi esterne definite; lo scopo è di vedere come appare il diagramma dopo l’importazione.

Ho scaricato lo script del progetto gal.sql.

Una volta scelto uno script da imporatare basta cliccare nella barra dei menu su File -> Import -> Reverse Engineer MySQL Sript ed appare una finestra in cui ci viene chiesto di selezionare lo script sql da importare, la codifica che usiamo e se vogliamo o meno che lo schema venga riportato su diagramma relazionale.

Importato il file magicamente appare il diagramma relazionale.

Ad essere sincero prima di trovare un uno script sql utile a questa prova ne ho provato più di qualcuno ed effettuando più importazioni una dietro l’altra, neanche troppe a dir la verità, è successo che l’appilcazione è crashata più di una volta. Tra l’altro non è dipeso nemmeno dal contenuto dello script perchè se eseguivo nuovamente l’applicazione e subito importavo lo stesso file tutto proseguiva normalmente.

Il diagramma risultato dall’importazione appare un pò confuso, molte tabelle sono sovrapposte una sull’altra e bisogna tirarle qui e lì con il mouse per chiarirlo ma  è possibile fino a un certo punto perchè l’area dedicata al diagramma sembra limitata o comunque non estendibile intuitivamente e dimensionata per una visione chiara del diagramma.

Passiamo ad esporatare in immagine PNG il diagramma EER ottenuto, e lo facciamo cliccando nella barra dei menu su File -> Export -> Export as PNG.

Immagine PNG ottenuta dall’esportazione.

Nell’esportare in formato immagine PNG tutto fila liscio e il diagramma ERR che era rappresentato nell’applicazione è bello e pronto per essere inserito magari nella documentazione di un progetto.

Magari quando avrò tempo cercherò e provero qualche altro strumento di progettazione e generazione visuale.

Ricordandovi di provare voi stessi queste funzioni poichè queste sono solo prime impressioni, vi saluto e vi auguro di trovare utile per la vostra produzione MySQL Workbench.

Andrea Stani





Open Source e Pubblica Amministrazione….Pubblica?

26 10 2009

“Buonasera, sono Andrea Stani uno studente del corso di laurea specialistica in Ingegneria Informatica per la Gestione D’Azienda”.
Più o meno è così che mi sono presentato al momento in cui ho voluto prendere il microfono per porre qualche punto di domanda durante la tavola rotonda ma facciamo un passo indietro.
24 ottobre 2005, è il Linux Day anche a Pisa ed avendo poco tempo a disposizione per me stesso di recente, decido di dedicare tutto il pomeriggio al Linux Day, ovvero a me stesso.

Una volta arrivato, devo scegliere quale delle tre tracce seguire, si percepisce come è solito la passione di chi organizza questi eventi ed è una bella sensazione.
Il primo talk che scelgo di seguire è entry level e nemmeno tanto; il titolo è “Linux e biciclette: la filosofia del software libero” tenuta da Giovanni Mascellani.

Durante l’ascolto mi rendo conto che manca qualcosa e lo faccio presente con un intervento, ci sono persone di circa cinquanta anni che vorrebbero sapere tante cose da help desk (l’hanno perso in mattinata perchè il gulp di Pisa si è impegnato anche in questo) ma la cosa più importante che non riescono a esprimere secondo me è: “perché fino ad ora non è arrivato altro sul computer di casa mia, se non windows, visto che linux è così figo come raccontate???”.

Non che non lo sappiano di già, ma sono storditi dalle troppe informazioni e magari non hanno tempo per pensarci.

Forse basterebbe citare loro qualche sentenza della commissione europea dell’antitrust per calmare i loro animi e accendere l’interesse ancora di più; certo non è facile un talk così in venti minuti e con di fronte anche un bimbo di circa dieci anni con i suoi genitori.
Seguo altri due talk, il primo intitolato “Facciamo Ubuntu” parla della comunità di Ubuntu e su come partecipare, tenuto da Jeremie Tamburini.
Il tono ed il contenuto sembrano molto caratterizzati da un senso di partecipazione che può fortunatamente essere concreto a dispetto di quel che avviene in altre realtà.
Benissimo condivido tutto.
Altro talk su PostgreSql e le sue caratteristiche interessanti per il business. Devo finire l’esame di architetture e linee di evoluzione delle Basi di dati per poter comprendere tutto, ma in buona parte riesco ad intendere il significato o quanto meno l’importanza di quel che dice Federico Campoli che tiene questo talk.
Quando si confrontano le implementazioni di alcune funzionalità di PostgreSql e Oracle Db non è poi così semplice a meno d’essere un esperto.

E’ venuta l’ora del coffee break, gnaaaammmm che buono.
Si riparte subito, altro talk, un ragazzo racconta la sua tesi su di un sistema per la dematerializzazione dei documenti di una azienda, sia esse pubblica o privata, in osservanza alla normativa italiana; si pone anche attenzione a quanto la normativa tenga alla trasmissione della forma che nell’informatica spesso non trova significato visto che si dissocia dai dati.
Purtroppo anche questa tesi è parcheggiata per mancanza di fondi pubblici e si va avanti a stampare carta.
Finalmente arriva la tavola rotonda. Il tema della tavola rotonda è “Open source, una ricchezza per il business?“.
Saltando a piedi uniti che bisognerebbe approfondire il significato di ricchezza e dell’etica con la quale questo business viene effettuato (il pomeriggio si è aperto parlando di filosofia e open source, non vorremmo certo si finisse per scordare la filosofia per strada), nascono in me delle domande che pongo e a cui ricevo delle risposte belle da parte degli ospiti ed, a mio parere a volte un pò lontane dall’aspetto che in quel momento forse mi ero ostinato a voler vedere.

Non posso citare gli ospiti perchè non ho memoria dei nomi e non li trovo sulla pagina dell’evento.
I miei quesiti sono stati questi che ripropongo ora su questo blog.
Durante gli studi, capita di incontrare persone che manifestano il loro dissenso nei confronti di un business basato sulla filosofia dell’open source.
Spesso però la struttura di alcuni Sistemi Informativi offerti da aziende importanti multinazionali che trattiamo prevedono l’utilizzo di componenti open.
La domanda mal posta in quel momento e che tutt’ora ho fatica a formalizzare è…chi è il nemico di un business basato sull’open?
L’utilizzo di strumenti open nel business è per me foriero di progresso, filosofia nel significato proprio del termine ovvero amico della conoscenza; dovremmo operare nel terziario ovvero produrre servizi ovvero lavorare per produrre reddito.

Uno dei più grandi costi di una migrazione è quello che l’azienda sostiene per la formazione, che tra l’altro genera occupazione territoriale a meno di strumenti di e-learning aziendali, almeno credo sia cosi, non sono un esperto.
Tanti appalti vengono dalle aziende pubbliche e la mia volontà è quella di esprimere preoccupazione per gli investimenti fatti in tali aziende in caso di migrazioni e nel caso queste diventino, in un domani prossimo, poco pubbliche; non vengo fuori dal nulla con queste idee, tra gli ospiti c’è gente che esprime la propria esperienza di migrazione positiva nel mondo dell’università pubblica che purtroppo sembra non essere in buone acque di recente.

Per quanto concerne l’università vi suggerisco la lettura dell’articolo 16 ed in particolare il comma 2 della legge 6 agosto 2008, n.133 a proposito dell’assunzione dei diritti patrimoniali da parte delle eventuali fondazioni private.

Altro caso di azienda pubblica quind PA in senso soggettivo? Alitalia.

Andiamo a vedere i costi della privatizzazione Alitalia in termini di personale qualificato perso, e vediamoli come proposti da un articolo intitolato “I Prezzi del Rilancio” di Gianni Dragoni per il Sole 24 Ore, il giornale di confindustria che mi appare ben lontano dall’estrema sinistra (scusate il riferimento politico ma serve a dare un senso).

In una Italia poi in proiezione federalismo le autonomie e seguenti privatizzazioni, diciamo che a naso me le immagino in aumento.

Posto che importante è l’ideale su cui si basa la filosofia open source, la mia domanda è stata: in una situazione nazionale in cui si sta cercando, in positivo, di portare l’open source nella Pubblica Amministrazione ed in cui contemporaneamente si assiste ad una privatizzazione discutibile delle aziende pubbliche, quanto è giusto non tenere in considerazione certi meccanismi e avvenimenti recenti?

Sono diversi i casi di privatizzazione italiane in cui personale esperto impiegato nelle aziende pubbliche è stato regalato.
La prassi per le aziende pubbliche italiane sembra essere sempre la stessa, si rendono le aziende autonome, si gonfiano di spese e di assunzioni spacciate per ottime politiche occupazionali, fino a farle fallire e poi svenderle.

Mi chiedo quindi perché mi dovrei augurare che tante belle iniziative che puntano a portare la filosofia open nella Pa vadano in porto. Coloro che collaborano con passione per questo modo di pensare il software si sentirebbero in tal caso fieri di una partecipazione che ha anche uno sfondo culturale. Ma in caso di svendite? Ed oltre il danno al senso di partecipazione la beffa di un probabile ennesimo regalo di attività pubbliche costruite con i soldi dei contribuenti.
Senza porre soluzioni a problemi più grandi di gestione dell’interesse pubblico mi sembra solo che si spostino soldi in direzione diversa in base al colore della bandiera oltre che di un migliore investimento è chiaro.

Naturalmente è fuori discussione la liceità con cui si devono svolgere le gare di appalto.

Spendere nel formare personale di enti pubblici che sono sotto la mira del fucile della privatizzazione del governo di turno, è cosa giusta se non ci si garantisce che pubblici rimangano???

Le mie domande così poste hanno infatti scaturito l’intervento di un paio di persone tra cui una che ha affermato all’incirca, che per quanto si possa evitare l’argomento si finisce sempre per parlare di etica aziendale e “cosa comune”.

Belle le risposte che ho ricevuto da alcuni ospiti che si sono riferiti al significato vero di formazione che è diverso dalla trasmissione della conoscenza delle procedure.

Un docente di ingegneria presente mi ha fatto notare che camminare nei corridoi di una università non presuppone per forza che non si possa incontrare gente ignorante.

Un ragazzo mi ha giustamente fatto notare che anche per sistemi non open la formazione va fatta al che io ho replicato che purtroppo l’università si è data al commercio dell’ECDL coprendo buona parte della “formazione” delle prossime generazioni in termini di uso di un sistema operativo e strumenti di office automation.

Mi ha fatto anche notare che con una recente sentenza (ora non ho cercato la fonte perdonatemi) esiste la possibilità di certificarsi con sistemi open. Ecco peccato che non lo sa nessuno e gli universitari che non siano legati al ramo dell’informazione sanno a memoria i menu dei prodotti di certi marchi noti.

E’ semplicemente scandaloso, le prossime generzioni sono deFormate e tocca migrare la “formazione”.

Sperando di non essere mal interpretato ogni commento è ben accetto.

Saluti,

Andrea Stani

p. s. mi scuso in anticipo per ogni eventuale errore ma non ho avuto troppo tempo per rileggermi, spero che il contenuto  sia comunque percepibile.

Ringrazio mio fratello per l’ospitalità sul suo blog. :-)





C14n: cosa è la canonicalizzazione

14 09 2009

Normalmente possiamo comparare facilmente file di testo per vedere se ci sono differenze (vedi file comparison tools) ma cosa accade quando abbiamo 2 file xml e vogliamo vedere se sono uguali in termini di contenuti ?

Se considerariamo un file xml come una lista di elementi e abbiamo 2 file con un ordine diverso degli elementi, non sono pure logicamente uguali ? non lo sono anche quando l’ordine degli attributi cambia ?

In questo contesto il W3c ha presentato 2 standards (algoritmi per trasformare XML) : XML-C14N del 2001 e XML-Exc-C14n del 2002, si parla infatti di Canonicalizzazione inclusiva ed esclusiva, la differenza sostanziale è che la canonicalizzazione esclusiva può prendere in considerazione anche solo parti di un documento xml in modo che siano indipendenti dall’elemento padre (e quindi entrano in gioco namespace e attributi ereditati).

Esempi di regole da quella inclusiva (prese dal primo documento):

  • The document is encoded in UTF-8
  • Line breaks normalized to #xA on input, before parsing
  • Attribute values are normalized, as if by a validating processor
  • Character and parsed entity references are replaced
  • CDATA sections are replaced with their character content
  • The XML declaration and document type declaration (DTD) are removed
  • Empty elements are converted to start-end tag pairs
  • Whitespace outside of the document element and within start and end tags is normalized
  • All whitespace in character content is retained (excluding characters removed during line feed normalization)
  • Attribute value delimiters are set to quotation marks (double quotes)
  • Special characters in attribute values and character content are replaced by character references
  • Superfluous namespace declarations are removed from each element
  • Default attributes are added to each element
  • Lexicographic order is imposed on the namespace declarations and attributes of each element

Potete vedere qualche esempio nel documento stesso.

Vi chiederete dove la canonicalizzazione viene usata in pratica. Nei web services sapete che i dati vengono trasmessi in formato XML, ebbene con le specifiche WS-Security del consorzio OASIS, con cui si cripta e firma un messaggio SOAP, la canonicalizzazione permette di garantire l’unicità della rappresentazione del file XML.

Una implementazione delle specifiche viene dalla Apache Foundation con WSS4j che prevede i 2 tipi di canonicalizzazione con la possibilità di includere o escludere i commenti nel file xml.

Principalmente gli autori della canonicalizzazione sono 3:

Non vi resta che augurarvi una buona lettura :-)





Soa Design Pattern: progettare web services

22 08 2009

Al di là dell’implementazione di un web service occorre pensare a come progettarli; normalmente l’implementazione è fatta su misura dei messaggi scambiati ma a livello architetturale dovete pensare a come nel tempo i vostri web services potrebbero mutare.
Un esempio banale è quello che il vostro xml schema cambi o semplicemente il contratto (file wsdl) possa cambiare per una qualunque ragione e da qui il concetto di versioning che si puo’ applicare anche alle semplici policy di accesso.

Per affrontare questi problemi occorre avere una buona panoramica e in questo Thomas Erl riesce bene con il suo libro Soa Design Pattern da cui è stato realizzato un sito web:  http://www.soapatterns.org/ che ho scoperto oggi

Sulla destra potete notare il lungo elenco di design pattern che sono descritti nel libro. Tra l’altro sul sito potete notare 2 poster interessanti da stampare:

http://www.soapatterns.org/reference_posters.asp

Per quello che ho potuto notare Thomas è autore di un sacco di libri sull’argomento SOA (vedete: http://www.soapatterns.com/ ) tra cui il libro sugli Enterprise Service Bus che sarà lanciato al SOA Symposium il 22-23 Ottobre  a Rotterdam (l’ingresso costicchia).





Freesound: distribuire file audio con licenza Creative Common

8 08 2009

Uno dei progetti che mi è capitato sotto occhio ieri è Freesound, un sito web che permette di fare upload di suoni (e non musica) sotto licenza Creative Common Sampling Plus 1.0

I tipi di file supportati sono wave, aiff, ogg vorbis, flac e mp3, il sito permette di farne l’upload con un applet FTP ma potete usare un qualunque client.

Il sito è basato su PHP e MySQL e fa uso di PHPBB per il forum più l’ausilio di getID3, codice PHP per l’estrazione i tag dai file audio. Una delle cose particolari è che si appoggia su Google Maps per localizzare i file audio, potrete magari far sentire i suoni della vostra strada sempre trafficata o cogliere il cinguettio degli uccelli a prima mattina :-)

Il sito è stato realizzato dall’MTG, il Music Technology Group di Barcellona, che realizza diversi progetti

Un progetto che rende omaggio a Freesound è Jokosher, un software che permette l’editing audio e che ha tra le sue estensioni la possibilità di importare suoni da Fresound. Jokosher è pacchettizzato per Ubuntu e openSuse e trovate l’eseguibile per Windows, esso viene rilasciato con licenza GPL v2 e si basa su Gstreamer per l’esportazione dei file audio.

Curiosità (riportata da Wikipedia): uno dei campioni di Freesound è stato usato nel film “I figli degli uomini” con Clive Owen.





Blip.tv: upload video e audio con licenza Creative Common

3 08 2009

Ultimamente sono stato impegnato per un progetto dove si chiede di incorporare video in un sito web. La cosa che abbiamo pensato subito è quello di fare upload di video su YouTube in modo da usare la loro banda. Fino ad ora sono stato un semplice utente di YouTube e non mi sono mai chiesto che tipo di servizi può offrire.

Ho cominciato quindi a cercare alternative a YouTube e sono capitato su wikipedia:

https://secure.wikimedia.org/wikipedia/en/wiki/Comparison_of_video_services

noto tra questi Blip.tv che permette di fare il download del file originale e upload di audio cosa che non si può fare con YouTube almeno non direttamente (tra l’altro per l’audio ho notato su YouTube che va convertito in video, non proprio user friendly).

Siccome sembra interessante procedo, mi iscrivo e vedo la possibilità di specificare una licenza per gli utenti finali che è implicita invece tra chi fa upload e quelli di Blip.tv (su YouTube questa libertà non esiste). In particolar modo si può scegliere ovviamente di detenere i copyright, rilasciare di Pubblico Dominio, rilasciare con licenze Creative Common 2.0 e 3.0 o ancora indicare l’URL di una ulteriore licenza.

Ho trovato un altro confronto interessante:

http://advancingusability.wordpress.com/2009/05/06/owned-legal-terms-of-video-hosting-services-compared/

dove si mettono in evidenza i termini di uso ma anche il domicilio legale in caso di contesto.

Comunque ho fatto caso che la Commissione Europea su loro sito i file audio sono in formato mp3 (che regna incontrastato) mentre per i video i seguenti formati:

  • Real Video for the EbS streaming, and Real Player in (surestream) multi-compression for low definition
  • MPEG 2 for high definition pictures
  • MPEG 2 for video on demand (VOD) and vodcasting
  • MPEG 4 H264 for VOD and vodcasting
  • Flash Video for preview

vedere qui.

Mentre il Parlamento Europeo supporta audio MP3 e Asf mentre noto che i video so affidati a StreamPower.be che supporta principalmente Adobe Flash, Windows Media, QuickTime, Real, 3GPP, H.264/MPEG-4 e inoltre diversi servizi come sincronizzazione video flash e powerpoint (interessante per video conferernze dove si parla e si mostrano slides ma non per il format0) più altre sincronizzazioni con Silverlight.

L’EuroParlamento ha inoltre il suo broadcasting trasmettendo in Flash e Window Media Video.

In ogni caso oggi mi viene fatto notare che l’Unione Europea ha una sezione dedicata su YouTube.

Occorre dire che YouTube fornisce la possibilità di avere sottotitoli da aggiungere nei video cosa non mi pare aver notato in Blip.tv.

C’è da dire che Blip.tv permette con l’account a pagamento di avere i video in versione privata normalmente non appena si crea questi diventa pubblico.

Cosa interessante per blip.tv è il broadcasting, in pratica potete diffondere (cross posting) il video presso altri siti come Twitter o Facebook.

Aggiornamento: oggi ho provato anche Sevenload, che è realizzato tramite il framework Agavi, e permette l’upload di materiale multimediale con licenza Creative Common. La cosa interessante è che qui è possibile fare upload di foto ma non audio





Inspircd: un server irc libero

11 07 2009

Dato il fatto che Bugzilla, Redmine e Hudson permettono di installare un bot irc, oggi ho provato ad installare Inspircd un demone irc fatto in C++ e rilasciato con licenza GPL 2 (non superiore).

Devo dire che ce ne sono diversi, ho provato ad installare questo perchè è uno tra i pochi che supporta un server LDAP.

L’installazione (ho preso la versione 1.1.22) parte dal classico configure/make/make install ma ha bisogno di librerie linkate in cascata da installare nel seguente ordine:

  1. libgpg-error
  2. libgcrypt
  3. gnutls

Fate attenzione però che l’ultime versioni di gnutls non hanno il comando libgnutls-config richiesto da inspircd, dovrebbe bastare la versione 2.6.6.

Le tre librerie le installate anch’esse con configure/make/make install.

Se siete riusciti ad installare il tutto (io l’ho installato sotto Mac) dovete andare nella cartella conf di Inspircd dove trovate il file inspircd.conf.example da rinominare inspircd.conf e modificare (provate a togliere solo i comandi <die> che servono per far morire il server e farvi capire come andrebbe editato). Inoltre il server non parte se lanciato da root.

Sotto Mac ho usato il client Colloquy (scritto in Objective-C e rilasciato con licenza GPL 2) e connesso all’indirizzo locale 192.168.2.2 che avevo specificato nel bind del file di configurazione sono poi entrato in un canale, creandolo, con /j nomecanale.

Non vi resta che capire come aggiungere i vari moduli e configurarlo per bene !

Cmq sono tentato un giorno di installare Psyced (perchè permette di fare da ponte con il protocollo XMPP, cosa alquanto interessante).





Eventi Software Libero Estate 2009

30 06 2009

Un po’ di eventi in Europa per rilassarvi un po’:

28 Giugno – 4 Luglio 2009 - EuroPython 2009 – Birmingham (Regno Unito)

7-11 Luglio 2009 – 10th Libre Software Meeting – Nantes (Francia)

24-30 Luglio 2009 – DebConf9 – Caceres (Spagna)

27 Luglio- 2 Agosto 2009 – OpenCommunityCamp 2009 – Oegstgeest (Olanda)

3-5 Agosto 2009 – Yet Another Perl Conference 2009 – Lisbona (Portogallo)

22-23 Agosto 2009 – FrOSCon 2009 – Sankt Augustin (Germania)

15-16 Settembre 2009 – OSiM World – Amsterdam (Olanda)

18-20 Settembre 2009 – EuroBSDCon 2009 – Cambridge (Regno Unito)

19 Settembre 2009 – Software Freedom Day – In ogni nazione !

22-25 Settembre 2009 – Linux-Kongress 2009 – Hamburg (Germania)





Netbeans 6.5.1 e Openfire 3.6.4

28 06 2009

Oggi ho provato Openfire 3.6.4 un server XMPP scritto in Java rilasciato con licenza GPL.

Stavo pensando di fornire un servizio di chat e mi sono ricordato che quelli di Sun avevano messo il supporto a Netbeans chiamato Developer Collaboration ma come ho scritto in un precedente post c’erano problemi di compatibilità che ora sembrano superati con le nuove versioni di Netbeans.

Ho dapprima scaricato il file dal sito della Ignite Realtime (versione Mac OS X poi su Win), una volta installato me lo sono ritrovato in /usr/local/openfire. Dentro la cartella bin ho trovato il file openfire.sh ha cui ho dato i permessi di esecuzione ma che ho eseguito da root. Ho poi eseguito il file e sono andato nel mio browser (firefox) all’indirizzo:

http://localhost:9090

Tra le lingue a disposizione trovate Ceco, Tedesco, Inglese, Spagnolo, Francese, Olandese, Polacco, Portoghese Brasiliano, Sloveno e Cinese Semplificato.

Dopo le lingue impostate il vostro dominio con le porte 9090 e 9091. Dopo dovete scegliere se usare un database interno o esterno (potete scegliere tra MySQL, Oracle, Microsoft SQLServer, PostgreSQL, IBM DB2).

Ho scelto MySQL, ho impostato l’indirizzo di localhost e nel frattempo ho creato il database perchè Openfire non lo crea.

Ho poi scelto per il profilo di usare il database, alternativamente si può scegliere LDAP o ClearSpace. Infine ho poi impostato email e password di amministratore.

Alla fine della procedura avete necessità di riavviare il server perchè altrimenti la pagina di login non funzionerà !

Noto che il plugin search non è installato sulla versione di Openfire per Mac (su Win si, devo vedere su linux) e procedo ad installarlo.

Dopo di che come spiegato in questo post (ma anche nel primo link che vi ho dato) occorre creare una nuova Group chat; invece di usare “conference” ho creato “myconference”.

Poi sono andato su Netbeans, ho installato il plugin Developer Collaboration, e ho creato un nuovo account chiedendo di registrarmi sul server, alla fine della procedura di registrazione dovreste poter vedere il nuovo account sul server. Dovreste poi autenticarvi senza nessun problema.

Per fare una prova di chat ho usato Pidgin o Spark (rilasciato dalla stessa azienda) creando un utente sul server e loggandomi una volta con Pidgin e una volta con Spark. La chat diciamo che va, quando è l’utente su Pidgin che apre la conversazione con il client su Netbeans si vede un po’ di codice XML il contrario invece no. Occorre provare tra 2 istanze di Netbeans.

C’è da dire che Netbeans punta su Kenai per il servizio di chat vedi qui.

Nota: una mia collega usava QIP come chat client, per poterla riuscire a loggare sono dovuto andare in Jabber options->Advanced->Server option>Disable SASL authentication; notavo infatti che all’atto di scambiare il digest MD5 c’erano problemi.