Sunday, October 23, 2005

» FOSDEM F2006-M10

Yesterday, we had our FOSDEM meeting 2005-10-22 (#2) at Raphael's place. It really went well, we were quite productive, making a prioritized list of tasks and activities, assigning responsabilities to each of them. This edition is really taking a new turn IMHO, as we're spreading the organization before the event onto more people, integrating the people from the FIT team (the people who do the hard work during the event) much better than before, which, in my opinion, can only result into a much improved quality of the event. Edition 2006 is definately heading for quality, as we're concentrating on keeping the same concept, the same activities, but taking every issue we had for 2005 point by point, and working on it to make FOSDEM 2006 the best one ever. The idea is: same thing, but much better. As Koenraad said: either we do an activity 100%, or we drop it. For me, we should really target the best possible experience for visitors, speakers and projects coming to FOSDEM. Once we have a FOSDEM 2006 with which everyone is happy (including us, as organizers), we can look forward to making the concept evolve a little for 2007. Let's say we target a stable release, focussing on bugfixes and Q&A ;)

Monday, October 17, 2005

» SmartPM on SUSE: call for testers

Already heard of smartpm, the "Smart Package Manager" ? No ? Then you must check this out. Just look at those features :) To make it really short: Smart is a package management frontend (just like YaST2, y2pmsh, apt, yum, urpmi) that supports installing packages from local directories, local files, yum (rpm-md), apt (and apt-rpm), urpmi repositories onto rpm, dpkg/deb and slackware pkg. What's so cool about it ? Didn't notice yet ? ;) Well, it can handle various backends and metadata repositories and... it does so without actually requiring nor using apt-get or yum. It includes its own implementation of those repository formats. It's all written in Python (with just a small .so for optimization of large repositories). It also has a command-line interface, a shell interface (with tab completion) and a GTK2 GUI (that looks a lot like synaptic). It comes preconfigured with my repository, as well as Packman. Still not curious about it ? It can also manage mirror sites for repositories. Very easily. And it will pick the best mirror. And you know what ? It needs a lot of testing on SUSE Linux, so if you use that distribution, go ahead, and install my smart RPM for SUSE Linux (10.0, 9.3, 9.2, 9.1 and 9.0). Finally, Christoph Thiel has added smart to SUSE Linux 10.1 alpha ("EDGE") - it will appear in alpha2. Go get it, use it, provide feedback ;)

Sunday, October 09, 2005

» New packages again

There seemed to be some major issues with ftp.gwdg.de the last days, most certainly because it's crawling under extreme load. Looks like the whole world wants to grab SUSE Linux 10.0 (which is certainly good news ;)). Because of that, ftp4.gwdg.de wasn't able to pull my package updates since a few days, and I'm afraid it could still be flaky for a few more. Still, I'd guess it's because of the huge amount of traffic served by their hosts. My latest packages have just been uploaded to my site, so... I guess things are working again as expected, let's hope it'll keep on doing so ;)

Thursday, October 06, 2005

» Making progress on the new Packman website

Made good progress on the implementation of the new Packman website the last 3 days. I've been pushing this in front of me for all too long. It's about time to finish it and move on to other things. But once the site is finished, I'll still have to migrate most of my packages there, as I'll also join the Packman team. I wrote the new website from ground up, with PHP4, starting with a small and nice MVC (or rather, Model 2) framework. I like PHP for quickly hacking something together, but it's really a pain to make something larger and/or that has to perform really well (yes, I know Wikipedia, but do you know all the tricks behind the scenes to make it scale ?). I wish I could have used Java (and Spring and Tomcat and Velocity), but hey, Marc is hosting it and Marc decides ;-) After having gone through many hurdles (e.g. properly using references in PHP, what a pain when being used to design and code Java all day), the application and framework is stable and solid now, and I can very quickly implement new features or enhance existing ones. So even for a "smaller" project, it definately pays off to use MVC/Model 2 (separate view from model and logic), DAO objects and an almost totally separated view layer (which is the Smarty templating engine, in this case). Smarty is quite nice, actually. Coding done with Eclipse (my all-time favourite) and PHPEclipse. The latter is far from perfect (= the Eclipse JDE) but quite usable and nice nevertheless. Stay tuned, more to come, I think we're not far away from a public beta. It definately looks great and had all the features you could wish for (well.. almost, I doesn't do your coffee in the morning, it's not Emacs after all).

Saturday, October 01, 2005

» Adding debuginfo support to my packages

Finally, I've decided to add "debuginfo" support to my packages. It's a bit tricky to implement though, as the %debug_package RPM macro has been around since SUSE 9.0 (at least) but actually only works on >= 9.3. On < 9.3, rpmbuild bails out and complains about not finding "eu-strip", something that doesn't even exist (zgrep eu-strip ARCHIVES.gz didn't find it)... weird. As I build my RPMs for SUSE 9.0, 9.1, 9.2, 9.3, 10.0 and always use the same spec file for all of those, I had to implement it this way:
# define another variable if we have an actually working debug_package:
%if %suse_version >= 930
%define debugrpm 1
%endif
...
# use the debug_package macro if applicable:
%{?debugrpm:%debug_package}
%prep
%setup -q
...

%install
%makeinstall
Note that with %debug_package, symbols are stripped out of the binary RPM anyway, after extracting them to make the -debuginfo package. And on SUSE, stripping is performed by the rpmbuild post triggers, so you never need to explicitely strip binaries.