Main

Powered by

SmartIrc4net

Nini

log4net

If you wondered what's happening, the beta release is very close. I plan to release smuxi beta (0.6) this month. Smuxi made good steps forward regarding stability and API design. I've been using smuxi as my primary IRC client almost a year already and it's fun.

Also the GNOME frontend is not the only one anymore face-smile.png I made proof-of-concept frontends using different UI toolkits like Curses / STFL and WinForms (native Windows). The WinForms frontend was started and is maintained by Zhila. The proof-of-concept frontends will be a very good base for other developers wanting to contribute to the smuxi project. The different frontends was needed to find possible API design flaws, and I found some but those were minor issues.

That's not all yet I need to blog! The IRC protocol implementation was always made in modular fashion. It is only an implementation of a protocol manager interface. But I never managed to implement a different protocol (no time, no real interest) but some months ago I got hot trying the XMPP / Jabber protocol, as many of my friends are using different protocols (like ICQ, AIM, MSN). Jabber supports gateways to other protocols, so I thought with Jabber I could kill all protocol holes with one stone. And that was a big success, smuxi has now experimental Jabber support too, supporting person and group chats (no presence / contacts though). Too much text already? Then check this screenshot. On that screenshot you can see me connected to a Jabber server, chatting to iamthejaymann through the Jabber server over the AIM gateway face-smile.png I think that's enough news for now, it's getting hot in here face-wink.png

Stay tuned, it's worth it!

meebey | General | 2 12 2007 - 21:50 | 3 comments

The #smuxi IRC channel moved from freenode to OFTC, I was annoyed again today when I was sending an private message to a smuxi alpha tester and he didn't get my message. Enough is enough. The pm "spam-filtering" is just idiotic, I got more spam from lilo than spam via private messages. Also the CTCP or color filtering, specially when testing smuxi is not that useful, so we moved. Now you can reach us on #smuxi on irc.oftc.net, see you there.

meebey | General | 31 12 2006 - 03:20 | 1 comments

Some of you may believe nothing is happening with smuxi, but this is not true. I am working on implementing missing features and fixing bugs found by smuxi alpha testers. Smuxi supports now colors and formattings on MOTD, channels and queries. Colors and formattings can also be stripped with a setting for the ASCII-printable fans tongue.png
I also plan to add support for stripping UTF-8 chars and replace them with "?" (like irssi does for example).
The current alpha version (0.5.12) also runs on Windows just as it does on Linux, using Microsoft .NET + Gtk# 2.7.1 for MS .NET.

If you want some special feature that is missing in other IRC clients, please write a quick comment to this post.

meebey | General | 3 10 2006 - 13:25 | 3 comments

After some work on smuxi I made new screenshots, you will notice that there is the engine manager and preferences GUI now. IRC server manager is still missing though, that will be one of the next things I will work on.
Head over the screenshots and take a look!

meebey | General | 3 07 2005 - 20:15 | 1 comments

Ok, after a few days (4 continues days, to be more accurate) I have a first working smuxi frontend!

Like I said in an earlier post it's the Gtk/Gnome frontend. I can spawn the engine (smuxi-engine.dll) with the frontend, or standalone (smuxi-server.exe). Then I can spawn one or many frontends (like smuxi-gtkgnome.exe) and connect to the engine and then go IRC chatting. I can quit the frontend, the engine stays alive and continues doing all IRC work, then I can start later again a frontend and I got the same state as it was!

Now I am focusing to get the frontend user friendly, it lakes some GUI windows yet, like the IRC server manager, engine manager and preferences. Those GUIs are passed by writing directly the INI file tongue.png that is more for testing though, but it is possible to not use the GUI to configure or use smuxi at all face-wink.png

This alpha version is limited to known alpha testers, no public release. When the missing GUIs are added and I made some optimizations then smuxi is ready for a beta release, which will be public and with source! If you want to be alpha tester, please join #smuxi on irc.freenode.org and idle there, thanks!

Oh I almost forgot tongue.png . I uploaded 2 screenshots of smuxi with the detachble frontend feature in action, just check the screenshot section out!

meebey | General | 20 05 2005 - 23:06 | 3 comments

OMG, after hacking hours on the engine, I finally got the engine running the first time with 2 text frontends using 2 different users! I have to fine tune some stuff yet but the base of the engine works like it should.

So now I can actually start implementate the Gtk/GNOME frontend for Smuxi. Some things in the engine are not yet strictly defined, I will have to make some more think-about-the-big-picture-sessions while I am hacking the frontend. Currently the text frontend is just a test yet to see what the engine tries for debugging.

Stay tuned face-wink.png

meebey | General | 25 04 2005 - 10:14 | 7 comments

Since I am working heavily on the new codebase which will give us the detachable frontend feature, I found the name Gnosmirc does not fit anymore for a few reasons. When I started Gnosmirc I focused the Gnome GUI toolkit, with this new feature, Gnome will be just one frontend of many. Also users could see an association with the name of "mIRC" which I do not like at all. So a new project name was born: smuxi - Smart MUltipleXed Irc. Smuxi reflects exactly the main feature of it which is pretty unique to almost all IRC clients. So lets smuxing!

meebey | General | 27 03 2005 - 15:18 | 1526 comments

As you already know probably, the webview at http://svn.qnetp.net was offline duo berkley database corruption, caused by locking problems with subversion and viewcvs (the webview script for svn I use). I converted all subversion repository to the relative new "fsfs" backend, this means no berkley database and of course no berkley database corruption face-wink.png . By the way... you probably didn't notice but the server of Gnosmirc changed, it's now a dedicated server for my projects, should be somewhat faster than before... happy source code browsing!

meebey | General | 27 03 2005 - 15:09 | 3 comments

Yes, I am doing already big steps splitting Gnosmirc into 2 parts, engine and frontend. The engine contains all Gnosmirc application logic and features, and the frontend displays the current messages/states of that engine. The base for this will be .NET Remoting, I am already testing alot how I can use it for Gnosmirc. Some tests were already a big success.

Within this testphase I am writing UML diagrams for Gnosmirc, I really don't wanna do another another rewrite because I forgot to look at the big picture, I bet every developer understands this who outgrow on their projects.

Since this core rewrite is going on, I am planing on writing myself now all layouts instead of using Glade. Glade is great but it does not give me the flexibility I need for making a flexible IRC GUI client, it limits me in object design which is a PITA. The Windows port of Gnosmirc was almost working, but glade stopped this. Reason is I used a newer glade version for development on my linux workstation than the windows version of glade (shipped with Gtk# for windows). So it failed on that, hardly, mostly all places produced crashes. Means after kicking glade, Gnosmirc will run on Windows too! Don't get me wrong though, Glade is a cool GUI tool, but it's not a solution for everything, allright stay tuned face-wink.png

meebey | General | 25 12 2004 - 20:49 | 1 comments

Yes, I am working on it already. The problematic GUI queue based on Gtk.ThreadNotify is being replaced by GLib.IdleHandler. The concept is much different, when Gtk has nothing to do (no draws, no updates etc) then the IdleHandler will be called. In that IdleHandler method it will work on the queue (GUI changes that are pending, like showing new IRC messages to the channel pages) and does the actual work. This means when gtk is "done" or "ready" for making new changes to the GUI, then Gnosmirc will process his changes. In practice this should give a much more interactive GUI programm (when its under load). The GUI hangs should not happen anymore this way, since if gtk has alot to do (making new pages, updates userslists etc) then no further GUI changes are done (from the queue) till gtk has finished first the current pending work. Also what I like about this approach is, I wrap the IRC callbacks into the gtk main thread, so I don't have to create containers for each GUI change (that was a real PITA)! The rewrite is not completed yet, the svn repo is inconsistent now, so be careful if you svn update face-wink.png
Allright thats it for now...

meebey | General | 28 10 2004 - 12:45 | Comment on this

So, whats the status of Gnosmirc? The GUI rewrite is completed and code design problems are solved. Less Gtk# code, more glade widgets.
Also the config class of Gnosmirc got a big change, I got a patch by Giacomo Di Ciocco aka Deffie who was so nice to work on the config abstraction layer. The configuration data is now stored in a thread-safe hashtable, this allows much easier and safer access.
The topic is now shown, if a topic exists.
The command history has now a managed size and will not grow forever face-wink.png
The umlauts problem is finally solved! I search hours for UTF8 convertion because Gtk+ expects UTF8 as input, and I found that it was a nasty bug in Gt# < 1.0.2 that caused this problems. So if you need umlauts use Gtk# >= 1.0.2!
The next tasks will be checking the GUI queue, maybe a different design will give us cleaner code and more performance, I noticed when I connect to a BNC with lots of channel and Gnosmirc has alot to do, it hangs sometimes for a few seconds and then showing the finished GUI. I think this happen because on every wrapped GUI command I trigger the main loop (via ThreadNotify) this can be easily a few thousands calls to the main loop.
Feature-wise I plan to add some theme support, so some users get eyecandy stuff face-wink.png I know not all users like minimal stuff tongue.png but the default look of Gnosmirc will stay very minimal and straight (performance and simplicity reasons), so don't worry.

meebey | General | 24 10 2004 - 01:32 | Comment on this

It was time for a Gnosmirc homepage. This one is based on the cool Jaws project, take a look it at. So on this page we will show some exciting screenshots of Gnosmirc and keep you uptodate with the project status.
Currently I am working on the 0.3 version which is a big GUI rewrite. Most dynamic GUI parts was done directly in C#, now I am using Glade# for templates like channel, query and serverpage. After this rewrite is finished I will do another rewrite for the 0.4 release, this time it will be the OO design of Gnosmirc. Since its my first GUI project I ever made I am learning alot of how things go and not go face-smile.png
So keep an eye on this site, I am not sure yet if 0.3 or 0.4 will be an official release. I only want to release useable programs, I don't like half-finished just put it out releases, it's not fair to the users.... I will post it here when the time is ready!

meebey | General | 27 09 2004 - 22:36 | 3 comments