Sunday, May 04, 2008

My darcs repository

So, on friday after some times I set up myself to finish the nqqueue. But then I started to see where to version the project.
In the last couple of years I been using berlios, which is great, and I really like it, but there was this issue: "svn/cvs only". So, I started to take a look again at subversion, and found it even more annoying than before (LOL).
I made a request to the berlios team 2 years ago asking for darcs support, but none of the admin team answered. Actually, berlios is kind of abandoned, as nobody takes care of answering to bugs, issues, and features requests... Kind of sad.

A friend of mine gave me this hint about using git so I said "Why not?", let's try it. I spent the whole saturday trying and testing it, and fortunately lots of features absent in subversion existed in git. But stills very complex, specially setting it up was kind of annoying.

By the end of saturday I was kind of dissapointed because of this, so I asked to the people in irc.freeonde.net/#darcs if there was any projects repository outhere using darcs... As expected, the answer was a "NO".

Then I saw the light when "Why don't I create a darcs server?" came to my mind. So, I created a darcs server at europa.fapyd.unr.edu.ar (static IP). But only with ftp access since it was the only thing installed on it. So for example someone could get or pull kpkg like this:

darcs get http://europa.fapyd.unr.edu.ar/darcs/kpkg

When that worked, I decided that there was something missing, and it was the hability to get from http and the web interface. So finally, I installed a simple and small webserver (shttpd) and brought darcsweb to it. Now, it is working and people can follow the development very easily. I even made a modification to the cgi (a python script) to allow people to get a release from the darcs cgi web inteface.

You can see my darcs server up and running here: http://europa.fapyd.unr.edu.ar/cgi-bin/darcsweb.cgi

One thing to look forward is the upload patch cgi (http://europa.fapyd.unr.edu.ar/cgi-bin/upload.cgi), which is a perl script that accept patches from post in the format message/rfc822 (mail format) and deliver those to a Maildir in the server, so then I can apply those. Fancy, don't you think? :)

Ohhh, one last thing... If you follow the links, you'll see the NQqueue (You shouldn't even know about this unless I told you. Eventually I'll drop a comment on this) in the repo, please, don't try it unless you feel very adventured, since there is no release so far, and it has some nasty bugs to be fixed, features to be implemented before to schedule for a release, and the modules API is not yet stable. It is only there so you can check it out (and maybe help if you want?). When NQqueue gets stable, I will drop a release with drums and cymbals. But so far, the code is very unstable!

No comments: