SUSE root News & Blog
September 7, 2005
Interview with Pascal Bleser
So for the first SUSE community interview I chose someone whom I think is well-known reputation-wise, but not so much personally. Chances are that if you've been running SUSE Linux for more than a month, you're running some of his RPMs. His name is Pascal Bleser but most will know him as "Guru" of Guru's RPM Site
From his site, Pascal provides a wide variety of SUSE RPMs for several different versions and configurations. My questions are in bold and the only editing I did was to add hyperlinks to some of his answers. Here we go:
- I saw on your profile that you started using Linux in 1995. What first attracted you to Linux and SuSE? What was your computer experience prior to 1995?
First off, I'm 30 years old now, so my computer experience prior to 1995 doesn't go back to PDP-11 ;)
My first approach to computers was way back when I was 10 or 11, fiddling around on my father's Texas Instruments Ti99/4A and actually already doing a little bit of programming ;).
Later I got a Schneider (aka Amstrad) CPC6128, where I really started to do some programming (was in BASIC and CP/M, back then). And eventually, I started my PC era with buying a 486 PC. There wasn't all that much Linux back then, so I used Windows 3.1 and then Windows 95, but not for long. When I started studying IT, a friend of mine showed me Linux. It was Slackware, I don't remember the version. That was a real eye-opener, I really found was I had been looking for since quite some time. I was really frustrated with the way Windows was putting you out of the system, how you couldn't get into the internals and customize it.
Linux, on the other hand, gave me complete access to everything, and what incredible flexibility, power and - although it may sound odd to some - ease of use. I remember that I started looking at what's in /bin and /usr/bin and reading every single manpage of those. I got really quickly into shell scripting and then into C programming, as I was also starting my course on that. I especially liked the IPC, multi-process and threading stuff.
At the end of my studies, two good friends of mine (Cédric Gavage and Jean-François Dive) and I founded the largest french-speaking Linux portal in Belgium (where I live ;)), that was called http://linuxbe.org but eventually was renamed to http://unixtech.be (and is still active today). I'm not much involved in unixtech.be any more, Cédric Gavage having taken over most of the hard work over there since a few years but I was also a lot into Linux Copy Parties, Linux user mailing-lists and generally advocating FOSS.
Actually, from that day on I've been using Linux on a daily basis, during my studies, at home and at work. It's been 2 or 3 years now I'm not using Windows any more. I mean not at all ;) After Slackware, I moved on to Redhat but very quickly went with SUSE Linux, when 5.0 was out. And I've bought every single SUSE Linux boxed set since then ;)
I do work on some other distributions at times, mostly RHES and Debian, but 99% of my time spent on Linux is on SUSE and SLES.
After finishing my studies, I went to work for a large ISV in Germany, where I'm still at. I did a lot of C++ on various Un*x derivates (including Linux), but since 2 years I've happily moved on to being a software architect and work with Java and J2EE (almost) exclusively, again on Un*x systems and especially on Linux. Nevertheless, I'm quite experienced with other programming languages and technologies as well, like C, PHP, CORBA, SQL, HA clustering, Python, Perl, shell, etc... Besides that, I've always kept tinkering around with sysadmin duties on Linux, both trying out new things at home and maintaining some development hosts at work.
- What made you first get into creating SUSE packages and offering them to the community?
Hmm.. good question. That's quite some time ago. I don't even remember when I started to build RPMs and put them online. And not really why either ;)
Certainly, the fact that we're currently only few packagers on SUSE (compared to other major distributions) made me starting to build RPMs for my very own use, because I like to have a very well organized and structured system, where (almost) every piece of software installed is managed consistently. If all the software I wanted to use had already been offered by other packagers on SUSE Linux, I most probably wouldn't have started baking my own. The next logical step was to put them online and make them available for all.
And maybe the fact that I'm primarely a software engineer working on architecting, designing and implementing enterprise-grade software, and that still remains my main interest in IT, but packaging is quite a different world, with its own lot of complexity and challenges. It's an enjoyable hobby where I can do something quite different from what I do at work.
But what is mostly driving me is that the amount of work I put into assembling packages is very efficient, even if it's sometimes taking me quite some of my free time: when my packages are used by hundreds or maybe even thousands of users, it saves a lot of time and complexity for them and is a net gain overall. Well, *cough* maybe I'm just a nice guy who likes to help others ;)
- At any given time, you may be building RPMs for as many as five different SUSE versions. Can you tell us how you build and test so many RPMs across so many versions?
I recently stopped building my RPMs on SUSE 8.2, mostly because SUSE 10.0 was pointing at the horizont and SUSE had dropped support for 8.2 as well. I will probably also stop building RPMs for 9.0 quite soon, as I plan to get involved into SUSE 10.1 quite a lot.
Building on many different SUSE versions is not that difficult. Actually I install every single SUSE version when it comes out, but I don't upgrade an existing one. I always do a fresh install instead and keep my older versions into their own partitions. As I have LVM everywhere on my build host, I can manage that very easily.
I'm currently running SUSE 9.3 on my build host (10.0-beta4 on my laptop ;)) and I just mount the older SUSE distributions. To build my RPMs on those, I wrote myself a few scripts that use chroot. Very simple and very effective, chroot is yet another of these fine things you can do with Linux :)
I'm considering to move on to y2pmbuild, which is a build tool written by and shipped with SUSE. It more or less automatically creates SUSE installations into chroot environments and installs the required dependencies to build a package. And it can do that for older SUSE versions as well. Although my current environment works very well, y2pmbuild is more consistent and enhances the quality of the resulting RPMs, because you mostly avoid side-effects from installed RPMs that are not referenced into the build requirements.
As far as testing is concerned, I really don't have the time to test all the packages I provide. I have gathered quite some experience in the packaging field and I'm pretty confident that I'm almost always doing the right thing. When there are issues that come from the authors of the software and not from the packaging itself, bug reports should be mailed directly to them. But when you notice something weird with one of my packages, or when you have a request, feel free to send me an e-mail (guru [at] unixtech [dot] be). I don't always have the time to answer them quickly, but I really try to respond to most (and sorry to all the people who have sent me e-mails that remained unanswered). If not, insist and send it again ;)
- How do you feel about the new openSUSE project? How do you think it will affect future SUSE versions?
Honestly, I really don't know, and I think most people at SUSE/Novell don't know much either. It's definately a great move and I'm looking forward with excitement to what's going to happen. What has been put into place until now already works exceptionally well, namely the openSUSE wiki, the mailing-list (where we really start to discuss interesting stuff such as... packaging and package repositories ;)) and even more the openSUSE bugzilla, where anyone can report issues she notices on 10.0 beta versions. The SUSE developers and packagers are very responsive and work hard to solve the reported issues very quickly. I'm quite impressed.
But where it will bring us I don't know. I think we'll have a much tighter collaboration between SUSE itself and the community when 10.1 will be kicked off. A lot of interesting ideas and initiatives are already starting to pop up, like Andreas Girardet's SUPER distribution ("SUSE Performance Enhanced Release").
What's most important is that we can still rely on the excellent work of the SUSE staff to provide us with a very solid and consistent core distribution. The high quality standards of SUSE Linux have always been the major asset of the distribution.
- Will you be providing RPMs for openSUSE? If so, will it be for each new Beta or only stable/milestone releases?
I'm currently providing a few RPMs for SUSE 10.0 betas, but I wouldn't recommend using them unless you're aware of the risks. Because some core libraries change from one beta to another (e.g. GTK had a major upgrade from beta2 to beta3), and because I don't rebuild all the affected packages with every beta, some packages might break.
But I will definately provide RPMs for 10.0 final. Note that the very latest version of many packages are already included in 10.0, which means that I won't rebuild those as they're already shipped with 10.0. At least until there are new releases of those.
I don't know yet whether and how I will provide my packages for 10.1, as alpha snapshots of 10.1 seem to be planned to be released on a regular basis quite soon. I'll have to discuss that with the other packagers at Packman as well (read below ;)).
- OpenSUSE now includes YaST, YUM, and apt4rpm. Your site offers support for YaST, apt, and Red Carpet. As a package builder and user, if it were up to you which method was standard on openSUSE which method would you choose, and why?
Good question, again. I've been using apt4rpm for quite some time now and I've always been very happy with it. But I'm a very experienced SUSE Linux user, and I need a tool that installs packages very quickly: "apt-get install ...", one command, that's what I want. For my own use, I don't care much about user guidance, help (with the exception of good man pages), or a GUI, but that doesn't really apply to the largest number of users.
I recently starting using y2pmsh a lot, which is written and provided by SUSE (as an extra package, "y2pmsh"). It pretty much offers all the features YaST2 does in its UI but is a lot more effective and faster to use, at least for me. I really feel more comfortable with a command-line tool that does tab completion than a UI where I have to click around although I already know the names of the packages I want to install or upgrade (a zgrep on INDEX.gz or ARCHIVES.gz is so much faster ;)). Red Carpet has a very nice UI though, and its command-line (called "rug") provides some useful subset of what y2pmsh does.
I think that YaST2 and y2pmsh are definately the way to go, but the software management module of YaST2 needs some improvements and refinements. I think the YaST2 developers are pretty much aware of that and I'm confident that with openSUSE, we as a community will be able to drive it a lot more into what best fits our needs. That being said, YaST2 is a great piece of software, no bashing intended ;)
Concentrating on YaST2 as a frontend also gives us much more options in a near future. We're currently having a broad discussion about how to architect and provide a best-of-breed package management on the openSUSE mailing-list.
With YaST2 on SUSE, we have the front-end, the build tools and the backend in our hands, which is not the case with apt4pm and yum. The only constraint is to stick to RPM, but that's a good thing, as RPM has proven to be quite reliable, stable and is well-known, both in its advantages and its defects. The packaging backend of an operating system is a very critical component, and I think we should stick with something we know well instead of experimenting at the costs of the users. That being said, everything is open on the layers above RPM, which means a lot of things: the user interface (both GUI and CLI), handling dependencies, package repositories, repository metadata, security, etc...
SmartPM is also a very interesting project (lead by Gustavo Niemeyer), where you have a single frontend (both GUI and CLI) that can install packages from different sources (currently apt and yum repositories). I currently wouldn't recommend its use as it still needs some work to stabilize, but once it gets solid and has a YaST2 repository backend, it will definately be one of the most interesting tools in the packaging field.
- On your blog, you hinted at some kind of future collaboration with Packman. Can you tell us more about that?
Indeed. It's happening behind the scenes since quite some time now, almost a year, but I've always been pushing it in front of me ;) Marc Schiffbauer (the maintainer of the Packman site) and I are currently finishing the redesign of the Packman website, we're going to roll-out a beta version quite soon. That being done, I will migrate my packages over to the Packman repository. I've already joined the club since a few months, discussing a lot with the other packagers that are part of the team.
I think it's a move for the good of the community, as Packman is by far the largest RPM repository, mine probably being the 2nd largest in terms of the number of packages (and users). We're working on resolving inconsistencies and conflicts, most specifically with packages that are both in my repository and at Packman. That means that we will provide a better experience for the end-users, and that quite a large number of RPMs is going to be added to Packman ;)
I'll keep my repositories online for a few months, but I guess they will be removed at some point in time, as they will be provided on Packman anyway. It's mostly to have the time to tell all the projects that link to my website that the RPMs have moved.
With that move, I'd also like to reduce the time I'm spending on packaging, as I'm now father and she definately takes most of my attention ;)
It's also in the perspective of FOSDEM 2006 starting to give me some work. I'm one of the 4 people in the main organization staff since 2 years now and it's giving me quite some work on a daily basis from end of september to end of february. To those who don't know: FOSDEM (Free and Opensource Software Developers' European Meeting) is the largest event of its kind and is held every year in Brussels (Belgium). As the entrance is free to everyone, we don't have exact numbers, but to me we had something between 2500 and 4000 visitors over the week-end for the last edition. I'm in charge of the so-called Developer Rooms and Booths, where we had 140 talks over the whole week-end (and that doesn't include the main tracks), from many FOSS projects. Note that we *cough* might *cough* have some openSUSE stuff going on over there in 2006 ;)
- Obviously Linux isn't 100% finished or perfect, what is one thing you would like to see added, changed, or fixed in Linux? How about SuSE?
I don't quite agree with that statement. Certainly, no operating system or piece of software is perfect (maybe with the exception of Spring Framework ;)) and will never be, but I'm really, really happy with SUSE Linux. It's rock-solid, very customizable to my needs and very productive to work with.
That being said, for the sake of the end-users, what I would like to see is a tighter cooperation between KDE and GNOME on some core components. Diversity and choice is a major asset, but we don't need two incompatible sound daemons, we don't need two incompatible messaging busses, etc... Some work is being done about that on freedesktop.org (desktop standards, hal, dbus, ...), but the software is very GNOME-ish and it doesn't look like it's really being discussed between both parties, to fit the needs of both projects. I might be wrong, but it sure looks like that from the outside.
And as a personal rant from the packager's perspective: GTK/GNOME core developers, please get a grip on your software, this is really chaos at the moment and a lot of headaches for us packagers.
As far as SUSE is concerned, I'd mostly like to see new initiatives to integrate us 3rd party packagers a lot more, and better software management in YaST2. But apart from that, I'm really happy with it. The openSUSE initiative will most certainly bring us there, and the SUSE developers have been very, very responsive to bugs and requests for improvements up to now.
Congratulations to Pascal on the birth of his daughter. Big thanks for all the work providing the packages and for taking the time to answer my questions.
Posted 3 weeks, 2 days ago on September 7, 2005
The trackback url for this post is http://www.suseroot.com/blog/bblog/trackback.php/41/
Many thanks for your hard work Pascal. You definitely do a great job :-)
Comments have now been turned off for this post
Powered by bBlog the free PHP Blogging script.