Archive

Archive for the ‘Open Source’ Category

irssi-proxy: one IRC to rule them all

May 8th, 2007 Wesley 6 comments

Veel mensen vragen mij hoe ze op een eenvoudige manier overal op IRC kunnen inloggen zonder op een andere computer te moeten uitloggen – ze willen in principe via eender welke computer op hun “globale IRC account” kunnen inloggen.

Meestal zeg ik dan: “als je met een terminal client overweg kunt, gebruik irssi in screen“. Nou, dat is een leuke oplossing voor een aantal mensen, maar vaak krijg ik als antwoord: “Maar, ik wil graag [insert grafisch IRC programma] gebruiken!”

“Probeer dan eens irssi-proxy“, is dan mijn antwoord. Maar aangezien veel mensen problemen hebben met de effectieve configuratie van irssi-proxy, leg ik in deze post even het principe en een simpele configuratie van irssi-proxy uit.

irssi

Wat is irssi?

irssi is een zeer uitgebreid IRC programma met een tekstuele interface. Het is een open source programma, vrijgegeven onder de GPL licentie.

Wat is irssi-proxy?

irssi-proxy is een module (plugin) voor irssi om een soort bouncer te draaien voor andere clients. Dit betekent dat je met een andere IRC client (bijvoorbeeld XChat of Konversation) kan verbinden met de server waar irssi-proxy op draait en op die manier dus eigenlijk op de IRC account zit van irssi, maar dan via een tweede IRC client.

Wat zijn de voordelen?

  • 1 globale verbinding delen tussen meerdere/verschillende IRC clients (en/of meerdere computers)
  • irssi draait steeds op de achtergrond en kan dus chatlogs bijhouden en je account continu online houden
  • eventueel kan je gebruik maken van ssh tunneling zodat de verbinding tussen een client en de irssi-proxy server door middel van sterke encryptie gecodeerd is

Simpele configuratie van irssi en irssi-proxy

  • irssi pakket installeren
    • Ubuntu instructies: sudo apt-get install irssi
    • Andere distributies: irssi installeren en ervoor zorgen dat de irssi module ook aanwezig is; in geval van compilatie vanaf de source moet je “–with-proxy” meegeven als argument bij ./configure
  • irssi starten
    • commando uitvoeren in een terminalvenster: irssi
  • basisconfiguratie van irssi
    • Netwerk toevoegen en commando uitvoeren na opstarten van dit netwerk:
      vb.: /NETWORK ADD -autosendcmd “/^msg nickserv identify ircwachtwoord;wait 2000″ Freenode
    • Server aan netwerk toevoegen en deze server automatisch gebruiken:
      vb.: /SERVER ADD -auto -network Freenode irc.freenode.org 6667
    • Kanalen aan netwerk toevoegen en deze kanalen automatisch joinen:
      vb.: /CHANNEL ADD -auto #ubuntu-nl Freenode
  • configuratie van irssi-proxy
    • Voeg de onderstaande lijnen toe aan het bestand ~/.irssi/startup (.irssi is een verborgen map in je persoonlijke /home/gebruiker folder) je kan het aanpassen met bijvoorbeeld gedit (GNOME), kwrite (KDE), mousepad (XFCE) of nano (terminal).
      Indien het bestand niet bestaat, gewoon aanmaken.
      vb.: gedit ~/.irssi/startup

      # Proxy module laden
      LOAD proxy
      # Wachtwoord instellen voor proxy module
      SET irssiproxy_password wachtwoord
      # Verschillende netwerken 'forwarden' over verschillende poorten
      # Bij meerdere items gewoon een spatie tussen de items laten
      # (vb.: Freenode=6789 Andernetwerk=6790)
      SET irssiproxy_ports Freenode=6789
    • Na het aanpassen van het startup bestand kan je best irssi even herstarten om te testen of alles automatisch werkt (eventueel kon je ook de commando’s die nu in het startup bestand staan handmatig invoeren, maar zonder het startup bestand moet je deze bij elke start van irssi opnieuw invoeren)

Jouw favoriete IRC client configureren om aan te melden via irssi-proxy

De IRC client die je wil configureren om aan te melden via irssi-proxy mag op eender welke computer in jouw netwerk staan, de enige vereiste is dat er een verbinding tot stand kan worden gebracht met de computer waar irssi-proxy draait.

Ik bespreek kort de configuratie voor twee populaire grafische IRC clients op linux: XChat (GNOME) en Konversation (KDE):

  • XChat configuratie:
    • In de netwerklijst (XChat -> Netwerklijst… of CTRL+S) klik je op de knop “Toevoegen“.
    • In de lijst met netwerken verschijnt nu een nieuw item, typ een gepaste naam in, dit mag eender wat zijn, bijvoorbeeld: irssi-proxy-freenode
    • Terwijl het nieuwe item in de lijst is geselecteerd: klik op de knop “Bewerken…
    • Naast de serverlijst klik je op de knop “Bewerken” en je verandert deze waarde naar de hostnaam (of het IP adres) van de server waar irssi-proxy draait en de poort naar de poort waar dit bepaalde netwerk naar gelinkt moet worden (zoals je geconfigureerd hebt bij irssi-proxy, je weet wel, in het startup bestand)
      vb.: hostnamevanserver/6789
    • Bij “Serverwachtwoord” kan je eventueel het wachtwoord invullen dat je hebt ingesteld voor irssi-proxy, maar het kan ook zijn dat je ervoor gekozen hebt om geen serverwachtwoord in te stellen.
  • Konversation configuratie:
    • In de serverlijst (Bestand -> Serverlijst… of F2) klik je op de knop “Nieuw…
    • Typ een gepaste naam bij “Netwerk”, dit mag eender wat zijn, bijvoorbeeld: irssi-proxy-freenode
    • Klik onder de serverlijst op “Toevoegen…” en vul hier de hostnaam (of het IP adres) in van de server waar irssi-proxy draait en de poort naar de poort waar dit bepaalde netwerk naar gelinkt moet worden (zoals je geconfigureerd hebt bij irssi-proxy, je weet wel, in het startup bestand)
      vb.: Server: hostnamevanserver; Poort: 6789
    • Eventueel kan je bij “Wachtwoord” nog het wachtwoord invullen dat je hebt ingesteld voor irssi-proxy, maar het kan ook zijn dat je ervoor gekozen hebt om geen serverwachtwoord in te stellen.
VN:F [1.6.3_896]
Rating: +1 (from 1 vote)
Categories: Linux, Open Source

XFiSH 0.99p: Blowfish encryptie voor XChat

May 6th, 2007 Wesley 4 comments

Ik ben gisteren beziggeweest met de XFiSH plugin voor XChat. Met deze plugin is het mogelijk om met Blowfish gecodeerde berichten te versturen en ontvangen in XChat.

Blowfish = strong cryptoEr waren echter een paar problemen met de originele XFiSH plugin. De source wou niet compileren en er was geen ondersteuning voor het Freenode netwerk. Een zekere Gnilor heeft de oorzaak van deze problemen gevonden.

Ook was het behoorlijk irritant dat je geen melding (notificatie) kreeg bij nieuwe berichten of hilights. Deze mogelijkheid heb ik dan maar meteen erbij geprogrammeerd, maar de notificaties werken momenteel enkel voor privéberichten op IRC.

Omdat ik XFiSH zelf alleen gebruik voor privéberichten had ik dus ook geen zin om het op kanalen te laten werken, maar het is niet zo moeilijk om het nu ook toe te passen bij kanalen… Misschien dat ik dat nog wel doe, als ik er zin in krijg. Ook moet de Freenode ondersteuning wat beter getest worden, maar voorlopig lijkt het erop alsof alles prima werkt.

Changelog 0.98 –> 0.99p

  • Ondersteuning voor het Freenode netwerk
  • Ondersteuning voor notificaties bij privéberichten (taskbar glow, icon blink, color usage in channel/user list)

Let op: dit is een onofficiële patch

Stap 1: compileerprobleem oplossen

1. Miracl downloaden, compileren en miracl.h kopiëren naar de source folder van XFiSH. In het archief van XFiSH zit standaard namelijk een te oude versie van miracl.

Stap 2: patch toepassen

Bekijk .diff file: http://pastebin.sk/en/1535/
Download .diff file: http://wesley.vidiqatch.org/files/xfish.diff

Ik heb de patch ook voorgecompileerd beschikbaar gemaakt op:
http://wesley.vidiqatch.org/files/xfish.so

VN:F [1.6.3_896]
Rating: -1 (from 1 vote)

FOSDEM 2007

February 25th, 2007 Wesley No comments

FOSDEM was gezellig. We bevonden ons met het Ubuntu team naast het KDE team. Best handig, want het gaf me de kans om wat dingen te vragen aan het KDE team over Plasma, Amarok 2 en Qt 4.

FOSDEM 2007

Er was veel interesse in Ubuntu, maar jammer genoeg hadden we geen cd’s om uit te delen. De KDE stand naast ons deelde echter wel een paar Kubuntu cd’s uit. We hebben ook een aantal mensen kunnen helpen die problemen hadden met de installatie van bepaalde programma’s op Ubuntu (mp3 codec etc.)

De sfeer was goed en er werd veel gelachen, maar dat kan ook moeilijk anders als je met iemand als Alexander (ablomen) zit opgescheept (en als er bier aanwezig is)

Talks

Ik ben naar 1 talk geweest – die over X.org – maar die vond ik nogal saai. Het ging enkel over X.org 7.2 en ik had gehoopt dat er over X.org 7.3 gepraat zou worden, want in die versie zullen zich pas echt leuke vernieuwingen bevinden… Nouja, misschien op volgende FOSDEM. Wat wel interessant was, is dat er nu eindelijk wordt gewerkt aan een werkende implementatie van Input Redirection! En dit door David Reveman. Keith Packard vertelde dat hij zelf enkele prototypes had proberen te ontwikkelen, maar dat het nooit werkte, maar David Reveman heeft blijkbaar een werkende mogelijkheid gevonden om Input Redirection aan de praat te krijgen. Wat doet Input Redirection? Met Input Redirection is het mogelijk om vensters die vervormd zijn door een compositing window manager te manipuleren met je muis – een soort van proxy tussen de eigenlijke plaats van je cursor en de plaats van je cursor op objecten in de GL omgeving als ik het goed begrijp.

Free stuff!

De mensen van Mozilla Europe deelden Firefox t-shirts en stickers uit en de mensen van Google lichtgevende jojo’s (gevaarlijk materiaal in handen van de verkeerde persoon, he, Alexander?)
Met het Ubuntu team hadden we een hele rol “powered by ubuntu” stickers meegenomen en die is helemaal opgeraakt!

Na FOSDEM

Na FOSDEM zijn we nog met een aantal mensen van het team (ik, Jeroen, Alexander, Jan, Kev en een vriend van Kev) iets gaan eten en drinken en dat was ook wel gezellig. Toch jammer dat ik een andere bil kreeg dan degene die de serveerster eerst liet zien :)

VN:F [1.6.3_896]
Rating: 0 (from 0 votes)
Categories: Linux, Open Source, Ubuntu

Netwerkprogrammatie

December 9th, 2006 Wesley 3 comments

Voor school ben ik momenteel bezig aan een geïntegreerde proef waarbij ik in Windows in Visual Basic een programma moet ontwerpen voor klantenbeheer, artikelbeheer, beheer van leveranciers, en ook beheer van verkopen en aankopen… We moeten dit doen op basis van de wensen van een spilbedrijf. In ons geval Sportcity. Nu blijkt Sportcity een uitgebreid pakket te gebruiken (Briljant Administrator) dat op meerdere computers draait.

Waarom ook niet? Dan gaan we maar wat netwerkprogrammatie doen in ons project. Maar als je dan op de GiP presentatie komt vertellen dat je bezig bent met netwerkprogrammatie lacht de jury ons gewoon uit omdat we zogezegd geen verstand hebben van zo’n dingen. Volgens die zogenaamde professionals zouden we 2 jaar aan een dergelijk pakket moeten werken.

Nou… diezelfde avond heb ik snel een initiële versie van de netwerkcode geschreven en de dag erna heb ik deze uitgebreid en verbeterd.

Op dit moment kan de huidige netwerkcode meer dan 100 computers tegelijkertijd inloggen op een netwerkserver en elke milliseconde kunnen er gegevens worden uitgewisseld. Om de stabiliteit van de netwerkcode te meten en te testen heb ik een stresstest programma geschreven.

Het resultaat? 0 pakketten niet ontvangen, 8 herstelde pakketten (pakketten die niet op tijd waren of die opnieuw gestuurd moesten worden) en 4448 succesvol verzonden/ontvangen pakketten. Het belangrijkste deel van de netwerkcode is nu af.

Enkele details van de netwerkcode:
- gegevens worden via TCP/IP verstuurd
- gemiste pakketten herstellen zichzelf (mede door gebruik van TCP/IP)
- controle op pakketnummering om alles in de juiste volgorde te houden
- aaneengeplakte pakketten (komt soms voor) worden opgesplitst en afzonderlijk behandeld

We zullen wel eens zien wie er het laatst lacht. Het programma is trouwens open source, dus als je interesse hebt in de programmacode, dan laat je maar iets weten.

VN:F [1.6.3_896]
Rating: +1 (from 1 vote)

Bewijs van intelligent buitenaards leven

August 16th, 2006 Wesley 1 comment

Bewijs van intelligent buitenaards leven :)

Firefox graancirkel

U ziet het goed! Een Firefox graancirkel :)

Fans van de open source webbrowser Firefox doen de gekste dingen om hun favoriete webbrowser te promoten :)

Klik voor meer informatie
Klik voor meer foto’s

VN:F [1.6.3_896]
Rating: 0 (from 2 votes)
Categories: Firefox, Open Source