Home Home > Tag > buildservice
Sign up | Login

Posts Tagged ‘buildservice’

[gsoc] summary of week 2

June 3rd, 2011 by

Hi,

here’s a small summary of the 2nd (coding) week. This
week I spent most of my time with working on an OO-style class
for doing http requests:

  • it’s possible to switch the http(s) implementation without touching any
    library code
  • supports response validation (if a schema was specified for the request)

Currently I’m still working on the “remote models”:

  • decided to use lxml.objectify:
  • – goal is to encapsulate the xml logic solely into the object itself
  • – example workflow:
    prj = RemoteProject(‘some_name’)
    prj.title = ‘dummy’
    prj.description = ‘foo bar’
    repo = prj.add_repository(name=’openSUSE_Factory’)
    repo.add_path(project=’openSUSE:Factory’, repository=’standard’)
    repo.add_arch(‘i586′)
    # change arch to x86_64
    repo.arch[0] = ‘x86_64′
    repo.save()

Minor stuff:

  • decided to use the “logging” module:
    this way we can easily add “debug” and “info” etc. messages and it’s up to
    the “client” which messages it wants to display (I’m not talking about
    the messages which are displayed when “osc up” is called or something like
    that)

Kick off for GNOME:Ayatana Project…

December 29th, 2010 by

“Follow effective action with quiet reflection. From the quiet reflection will come even more effective action.” // Peter F. Drucker

This has been one of the guidelines in my life for quite some time… It started as a curiosity a long time ago with Notify OSD and evolved to full project in openSUSE. It is important to acknowledge at this point the motivation provided by the openSUSE GNOME Team from which I’ve been getting plenty of guidance and help, namely from Vincent Untz (vuntz) and Dominique Leuenberger (Dimstar). Thanks to them, we have now a GNOME:Ayatana Project on OBS (openSUSE Build Service), currently being populated with the support libraries for Ayatana’s Unity and Indicators.

Susan Linton has made a small article for Linux Journal about this project in the past. Though some people pointed to me that it was advertising and excelling Ubuntu… I would like to leave a statement… We’re not taking a hike on Ubuntu visibility, and it isn’t bad at all, on the contrary… In fact it will help Ubuntu, us and many others… specially if some Ubuntu patches are accepted faster by upstream. I hope other RPM distributions will follow the way we, openSUSE, proudly seem to pioneering! From my personal point of view… a distribution ‘distributes’… and despite this software isn’t attractive for some openSUSE users, I’m happy it is available (totally or partially) for all those who want to test it… Wait… you don’t even need to install Ubuntu or changing the platform you run!

Due to several reasons, being the most important of them versioning, this repository will start on the next release of openSUSE in March 16th (World day of Conscience, interesting point). This is also interesting as if YOU are willing to improve a package or submit a package you can now do it to this repository.

This goes with a very huge cookie for Dimstar and Vuntz for taking care of this repository and making sure that everything will comply with the openSUSE Guidelines. You are my personal heroes.

It has been quite an interesting experience to be with openSUSE GNOME team which is full of knowledge and helpful in many ways. I can’t also forget to mention that last week Luis Medinas has taken tutorship of a Portuguese contributor to openSUSE GNOME, João Matias and will provide him the necessary help to integrate him on the workflow of the GNOME Team. My personal thanks to Luis for stepping into this task, which from my personal point of view is very important.

Regarding to Ayatana it is worth to mention that Dimstar provided some valuable help in fixing the dbusmenu package and taking care of the necessary patch submission in GTK and gdk-pixbuf to allow dbusmenu to build with introspection support and generate properly the Vala files required for other packages. This handicap beaten… we’re on the good road for better functionality. This patches also allowed to correct some behavior in some indicators, one fine example of this the ‘Me Menu’ which now displays correctly a  ‘dot’ on the selected status as the screenshot bellow shows:

In the last days, despite it’s Christmas season and soon new year…. I’ve been also working on providing additional extensions to enable some functionality on some indicators. This was the case of indicator-sound, which provides an alternative sound gadget that offers extended functionality with multimedia players. A fine example of this is Novell’s Banshee player which has astonishing out of the box implementation with the sound indicator from Ayatana by a small extension that can be enabled. I’m still wondering why so many people toss heavy critics at this indicator calling it ‘mac styled’… while to be honest I doubt such people have even seen OSX sound applet, which is more or less a direct copy of the one present in GNOME, the vertical switch. Interesting view nevertheless.

Indicator-sound has also been fixed and no longer requires the nasty hack in the previous package. Since I’m not an Ubuntu user, neither I have extensive experience on their Desktop, I’m not sure if the functionality present so far in the indicators is the one offered by Ubuntu. I plan to run a Open Beta on the Ayatana software repository during the last Milestone of Factory to all Factory users to collect more data and improve the packages, at least the indicators, as in the present since I have ATI hardware I don’t have FireGL enabled on Factory, so I can’t really push much on Unity and test it for the time being.

Another subject of plugins was Xchat which is GNOME’s premier IRC client. Novell’s Evolution also got it’s plugin which is found to be partially working. I haven’t tracked yet if there are patch submissions to Evolution from Ubuntu to enable indicator functionality. That’s for sure one of the next steps, and since Evolution is a bit of ‘in-house’, would be nice to have them approved upstream if submitted already, as it would serve openSUSE as well.

Most of this applications, evolution, xchat, gwibber, empathy, pidgin are supported by indicator messages which collects information from several messaging services and places them on a single indicator in a cascade style experience for the user. I personally find it weird as I’m not used to this, but seems nice. Unfortunalty some applications seem rely on patches to be fully supported, like empathy. I hope upstream accepts the patches from Ubuntu (if submitted) and we can also benefit from such changes in our side.

Basically to sum up everything in a short review…

* Indicators are working fully or partially depending on patch level on some applications. If upstream starts accepting Ubuntu patches (some shouldn’t be much of a problem), it will work out for Ayatana software in openSUSE as well.
* Unity – Though it builds already with some compiz packaged from git sources (to include glib mainloop patching), I have no way of testing it, neither I have done integration on it. Unfortunately both my systems have ATI hardware and I have no way of testing it on Factory which seems to be too much bleeding edge for ATI to keep up. It’s stalled a bit, but in the worst scenario will be available a few weeks after the next official release of openSUSE.
* During this wait time… we might see a new release of compiz with the patches upstreamed by Canonical, which will for sure help us also a lot. No need for hurry in Unity at this time.

My personal experience with this project has given me lots of knowledge about OBS, hacking Makefiles and configure scripts… debug skills… and specially I ended up loving the way openSUSE is built and how it works. I would take also this opportunity to make a small statement… all the development so far has been deployed over GNOME 2.32. Much of the software packaged already supports GTK3 and should be easy to migrate it to GNOME3. At the moment, since the next openSUSE release is still based on GNOME 2.32, I’m not testing all this software on GNOME3. It might take a few days/weeks to have it available for GNOME3 after it’s release, though from a personal perspective, what I’ve seen on GNOME3 seems to be overkill! It’s damn nice and I have no doubt GNOME3 will succeed as the ultimate Free Desktop.

I would also like to mention that I’m not testing this indicators with KDE. In case someone wants to do this, please feel free to nag me on IRC (#opensuse-gnome @ Freenode) and leave feedback. I’m focused only on GNOME2 and GNOME3 deployment of this software packages, though I will help in whatever way I can if someone wants to work them out for KDE.

I’m using a patched version of Metacity (patches were submitted upstream) which improves the display of buttons by improving overlaying of images (I think). Look at the sharp corners of the theme in the pic bellow. As always, Faenza Icon theme with Canonical’s light theme Radiance (not hacked). This is another change I hope that goes upstreamed soon.

My sincere congratulations to everyone working on the awesome GNOME3, I’m sure it will be a success and make the delights of many! My faith points that GNOME3 will change Desktop user experience forever!

Have a lot of fun…!

Nelson Marques

Hermes Improvements

September 3rd, 2009 by

I did some interesting changes to the Hermes instance of openSUSE.

There have been complaints that it is not possible to follow requests that have been originated by oneself, which can result in the weird situation that one does not get information what happened to a request. I fixed that by adding a new subscription called OBS Request Author to the Hermes start page that informs you about all changes to a request originated by you. All people who already had a subscription on the request change notifications have been automatically subscribed. The subscription can of course be removed on the Hermes page if it is not wanted.

Another problem was that people who are subscribed on Build Failure with the _mypackages special filter were flooded by mails. That happens because the _mypackages filter thinks a package belongs to you if you’re either maintainer of the project or package. Since this is not what maintainers of big projects want I created a _mypackagesstrict filter that only fires if one is really the maintainer of the package. To enable this fix, please go to the Hermes Expert page to edit your subscription to BIULD_FAILURE. Edit the filter to set it to special value _mypackagesstrict.

I hope that makes Hermes again a bit more useful for you. Please let me know what you think!

Build for Another System

August 26th, 2008 by

This is about what I did yesterday in the first day of hackweek:

hello world

It is a hello world program. No, the interesting thing about that is not that I am finally able to write a hello-world (which I copied from the internet anyway) but the system on which it is running is unusual for me. It is another system than Linux, it is Windows.

Still somehow boring to let run a hello world on Windows? Yes, but I did not build it on Windows. I build it on Linux on a free software stack. I yesterday set up a mingw compiler ready for cross compiling Windows binaries on Linux. Maybe this can be the first little step towards a Windows build target in the Buildservice.

What do you think?

Little Hermes

June 16th, 2008 by

some code was added to the buildservice backend already that generates Hermes notifications. That means that Hermes is getting closer, I will work this week to start a first test with Hermes on the production build service.

So let me introduce Hermes a bit.

Hermes is a system that helps it’s user to get back the decision about who is sending a message when and in which way. Using Hermes it is up to the user to decide if a message comes through at all, when and in which way. Hermes is going to be the central part of notifications in the openSUSE Buildservice.

Digest messages will be supported through Hermes. That means that messages (mostly automatically generated) of the same type coming regularly can be combined to one message combining all the bits. For example, imagine a notification about a package build fail. It might not make sense to send lets say 50 of them a day due to numerous rebuilds on different platforms that failed. It seems to be much more efficient to combine all these 50 to a digest message that lists all of the 50 fails. However, it’s users choice in Hermes.

The other important feature of Hermes is choice in the way of delivery. It is up to the user in which way the message comes through: Mail, RSS and jabber notification are already implemented in beta stadium, others may follow. It’s users choice based on the message type when and in which way the message is delivered.

Hermes LogoThe backend already has some code in it to notify Hermes. I hope I will be able to make let’s say some RSS feeds or mail running this week, especially for the submit requests. That would be another step into collaboration with the buildservice.

And since I seem to talk a lot about Hermes these days, Robert was cool enough to come up with a very cool logo for the (still little) Hermes. Do you like it? I think it is awesome – kind of 1960’s aircraft company ;-)

Thank you very much, Robert!

More about Hermes to follow…

Hamradio packages for openSUSE 11.0

May 13th, 2008 by

Together with Tim Fischer I’m packaging hamradio-related software in the “hamradio”-repository in openSUSE Build Service. We are now prepairing updates and start of packaging for upcoming openSUSE 11.0 .

If you are interested in helping us, feel free to contact us! Also if you miss a package in our repo.

I’ll blog on the progress here …

Edit: The repository is http://download.opensuse.org/repositories/hamradio/