my blog

openSUSE

Entries feed

Thursday 14 May 2009

Testing Day (Community Week, Day 4)

It's hard to find free time to talk about what's going on during the Community Week, but I guess it's a good thing :-) But I'm quite excited about what we can do today: it's testing day on the GNOME side of the Community Week. There are several things that we prepared for this session...

Thunderbird 3

Our Thunderbird friends are hard at work on Thunderbird 3, and they have a special bug day around the linux version of Thunderbird today. It's a good opportunity to do have some cross-project fun, and Wolfgang made some packages of the current snapshots.

So just go to the Software Portal and click the relevant one-click install button to get Thunderbird 3. You'll enjoy the refreshed interface Andreas has been working on. And then join #bugday on irc.mozilla.org and #opensuse-gnome on irc.freenode.net to give some feedback :-)

GNOME Shell

At the beginning of the month, I prepared some GNOME Shell packages for openSUSE, so people could start playing with them. This is a good first step to help Owen aggressively push GNOME developers to switch ;-) Patches are still needed right now to make mutter parallel-installable with metacity (and to adapt gnome-shell to this change), but it'll eventually get fixed.

I'm updating the packages to git master right now, but you should already be able to install the previous packages: just head over the Software Portal and look at those nice one-click install buttons ;-) Once you have installed the packages, save your documents, and run gnome-shell --replace in your current session.

Wondering what to do after that? #gnome-shell on irc.gnome.org and #opensuse-gnome on irc.freenode.net will be a good place to chat about what's good and what's currently missing :-)

AT-SPI D-Bus

Stephen is working on some packages for at-spi-dbus. We hoped it'd be ready in time, but it seems there were some compilation problems. Hopefully, they'll be available soon -- I would think in the worst case, people will be able to test them this week-end.

Providing an easy way to test at-spi-dbus will certainly help accelerate its adoption since, well, bugs will be found earlier ;-) I'm pretty sure that Bryen is excited about this!

And more...

This is just a sample of what you can do for testing, and there are obviously more things to play with:

  • the great Federico would love to know what's wrong with multiple monitors for you on recent versions of openSUSE.
  • we have the latest PulseAudio available, which should fix a bunch of issues for many people.
  • gnome-bluetooth is also available for testing, and you should play with all your bluetooth devices to see if there's anything that can be improved.
  • we have a new theme to test, which will hopefully be our new default theme (more on this on a later post, if I find time).
  • and really, there's more, more, more :-)

So that's it, join us, tell us what you think, try the packages, and have fun!

Tuesday 12 May 2009

Patch Tagging and Upstreaming Day at openSUSE

The Community Week started yesterday (more on this below) and today is Patch Tagging and Upstreaming Day: we want to better document our patches and send them upstream if we didn't already -- we have guidelines for this since quite some time :-)

The interesting part of this session is that we can involve upstream: we want to make it easy for upstream people to look at patches for their modules and give us feedback. So if you're an upstream maintainer, you can simply go to the list of patches (ordered by packages or tags) for the packages maintained by the GNOME team and join #opensuse-gnome on freenode to discuss the patches. We'll be glad to chat about how wrong they are ;-)

Patch Tagging and Upstreaming Day is the second session of the Community week; we started yesterday with a Packaging Day and it went quite well: there were quite some new faces popping up in #opensuse-gnome and it seems the introduction that was done in the morning was useful to at least some of them :-) The afternoon and evening saw people working on new packages, which is good to see. It was actually quite cool to see people just joining up, and start working on things they simply wanted to see packaged.

Also, after some very brief discussion during this Packaging day, we also finally moved and created GNOME:Contrib, the project for GNOME packages that we want to see in Contrib. I'm glad we did this small change as this is an important step towards the goal of sharing new packages with all users: instead of having various packages in random places, they will now be easy to find. This is merely an organizational change that users won't directly see, but it will have positive impact on their life, hopefully ;-)

Now let's start this second day! Head over #opensuse-gnome and say hi :-)

Thursday 7 May 2009

openSUSE Community Week

A few weeks ago, a few people were discussing how to help people start contributing to openSUSE, especially in the GNOME context. We were thinking about dedicating a day or two for specific activities, and then we realized that of course, this is not a problem specific to the GNOME Team and that by doing something much bigger, involving the whole project, we could attract more people and help them with their first steps. This is how the Community Week idea started, and the good news is that it's now happening next week :-)

openSUSE Community Week

There will be various proposed activities, with many people being available on IRC to help first-time (or more experienced) contributors. This is organized in several tracks to make it easier for people to know what's of interest to them. I'll focus on the GNOME track which will occur in #opensuse-gnome (on freenode), but the other tracks are certainly of interest too!

The consensus in the GNOME team was that we wanted to enable people to be as active as possible. This is why we're doing all-day sessions, with a short introduction (at 8AM UTC and 4PM UTC, to cover most timezones) explaining the basic knowledge that people really need to have to participate; and then, we'll encourage people to experiment and contribute. There will be five main topics:

  • on Monday, Packaging Day: this will be a day dedicated to packaging new applications. There are some applications that are really missing in openSUSE, and we will help people package them and have them integrated in openSUSE. We start with this topic on Monday because we think it will also be an ongoing topic for the whole week, running in the background.
  • on Tuesday, Patch Tagging and Upstreaming Day: this day will be dedicated to making sure that all of the patches we have in our packages are properly documented, and when applicable to upstream, are known to upstream. We've improved quite a bit in the past year in this field, but this is still far from being the perfect situation. Of course, we will specifically welcome participation from upstream to discuss our patches!
  • on Wednesday, Wiki Day: as many teams in many projects, we're using the wiki to organize our work. But it's a mess :-) We'll try to fix this and create some future-proof guidelines/layout.
  • on Thursday, Testing Day: making openSUSE rock-solid of course requires extensive testing, and we'll do testing of various areas of the desktop. At the moment, we're specifically thinking of testing some hardware-related features (support for multiple monitors, sound, bluetooth, laptop keys, etc.), but we'll probably also look at our default configuration (and a potential new theme for 11.2).
  • on Friday, Bug Day: everybody knows what a bug day is :-) This is about triaging the bugs, and forwarding the relevant ones upstream. I'll never forget that this is what really got me deeply involved in free software.
  • on the week-end: we have no plans set in stone for the week-end, but Saturday and Sunday will both be active days. It's likely that we will continue the packaging, patch tagging and testing days there, but everybody will be welcome to come and ask questions :-)

There will definitely be a lot of action, and I'm quite excited about this. People often believe that contributing is hard, and the Community Week will be a great opportunity to show that it's really easy to help :-) So don't forget to join us next week!

Wednesday 4 February 2009

Pushing a completely updated GNOME stack to Factory

Back in December, a small team of volunteers wanted to work on updating GNOME in openSUSE to 2.25. But openSUSE was still frozen, so this was not possible to do. Or at least not possible the usual way. Let me explain why:

  • as people probably know, the development version of openSUSE is called Factory. It's being developed in the build service, as the openSUSE:Factory project.
  • the GNOME team maintains quite a number of packages (more than 350) and so we use a specific project where everybody can submit updates and where we make sure everything works fine together. This is the GNOME:Factory project in the build service. When we're happy with a package, we push it to openSUSE:Factory.
  • whenever openSUSE:Factory is frozen, we freeze GNOME:Factory too. This enables us to use GNOME:Factory to fix all kind of bugs in Factory (when Factory is only frozen from an upstream version point of view), or to fix critical bugs in Factory (when Factory is really frozen).

So, openSUSE was frozen. But the small team of volunteers was crazy enough to push and to create a GNOME:Factory:Next project to start packaging the latest upstream versions of all the modules we maintain. This was a totally crazy idea. And completely insane since there was no real review of the changes being done. They worked hard as they of course tried to follow the GNOME schedule to update packages. And there were some bad surprises along the way (for example: someone directly updating a package in Factory to fix some issue, which then requires a manual merge in GNOME:Factory:Next).

Then Factory opened again for development. We started merging things in GNOME:Factory, reviewing the changes, fixing stuff here and there. What was done in GNOME:Factory:Next was certainly not perfect, but it was still pretty good. And during all this process, we took some time to review some of our patches, trying to send upstream those that were never sent (usually for bad reasons), or trying to simply kill them. It's a tedious task since there are packagers who don't send the patch upstream, some who add a patch but don't mention the patch name explicitly (so it's quite hard to know why the patch was added), or you can find patches linking to the wrong bug... But I digress, that's something that I should discuss in another post.

And now, fast forward to today: after the tons of changes, I pushed the packages to openSUSE:Factory. How many packages? 201. All at once. Unless they were using GNOME:Factory, GNOME users of Factory all had some GNOME 2.24.x until now. They'll finally have a mix of 2.25.5 and 2.25.90 now. That's a big leap forward :-)

Oh. Yeah, I probably didn't mention yet that the team of volunteers was made of Magnus Boman, Luis Medinas (hrm, Luis, you're not on Planet SUSE!?) and Suman Manjunath. Rocking people!

Tuesday 3 February 2009

Browsing the openSUSE sources

At the end of last week, Sébastien and Michael were discussing some gnome-session thing and they wondered if there was a patch in openSUSE to make it work. The bad thing is that they couldn't look by themselves without creating an account on the build service, and so they asked me. It reminded me of a time where I was looking at the patches in all distributions for the modules I maintained, and I was quite annoyed by the same problem. And, well, it sounded so easy I couldn't resist: I hacked a quick workaround.

It turns out you can list the content of a source package and download the files without an account; however it's at the moment not possible to get the list of source packages. This last point is quite a blocker if you want to easily browse the sources. So I just wrote a small script that periodically exports the list of source packages for the released distributions and Factory, and voilà! You can now browse the packages and download all files, including the most interesting part: patches.

There's a small bug in the build service -- it does't send the MIME type, I think, so you can't directly view the files in the browser. Also, I didn't make this work with all the projects in the build service but only a subset. So you don't get, for example, the latest work we're doing in the GNOME team (since it's in GNOME:Factory). But still, better than nothing, isn't it? Everybody will now be able to see the weird patches we have, and this can only be a good thing.

Note that in the future, the build service content will probably be readable without an account, so this will make this hack irrelevant (which is a good thing!). Also you'll have noticed the tmp in the URL of the server; did I mention it was a hack? ;-) Oh, I nearly forgot: if you want to run some script on this data, contact me, we'll find a better way than just parsing those webpages.

Update: oh, well, I decided to add GNOME:Factory since it's really where people should look for the GNOME stuff. I had to play a bit around to find the right way to handle this because the packages are links to the ones in openSUSE:Factory, but I got it. If someone wants me to add another project, let me know, it's really trivial.

- page 5 of 7 -

by Vincent