GSoC 2011 Ideas – Karma plugin for openSUSE Connect

Google Summer of Code 2011This post is about one idea for GSoC 2011 regarding openSUSE Connect. I already wrote about it some time ago, but now is time to elaborate a little bit more.

First of all, let me state, that I already found a qualified student, that wants to work on this idea and that has also some good suggestions. So I’m not searching for a student with this post, but I want to share with you the goals of this project and why I think it is important.

Virtual openSUSE 11.4 Release party

Last week I managed to attend virtual openSUSE 11.4 Release party in Second Life. I got registered there especially to able to attend this event so it took me some time to figure out how it all works. Although I’m still learning how Second Life works, I’m now able to perform basic tasks and move around freely. Big thanks to Morgane Marquis for helping me. I’m still learning new stuff and it’s fun.

GSoC 2011 Ideas – Support for Bitbake in OBS

Google Summer of Code 2011Another of GSoC ideas that I volunteered to mentor for our GSoC was adding support for BitBake to the openSUSE Build Service. In this post I want to talk about why do I think that BitBake support for openSUSE Build Service will be useful and why do I think that OpenEmbedded is actually pretty cool.

What is BitBake? Why is OpenEmbedded cool?

BitBake is a build system used mainly by OpenEmbedded. In a way it is kind of similar to what openSUSE does for us. It takes one sources and makes it possible to build them for many distributions. There are some differences though. Let’s start with few notes a out OpenEmbedded. BitBake description will make more sense once you’ll know what OpenEmbedded is. It’s a meta distribution. You can think about it as a common code base for multiple distributions. It has many packages. It also contains distribution settings. Same source can be built in different ways for various distributions. Each distribution can choose which version of which package does it want to have in which release. It can choose package management system, preferred providers for virtual packages and many other things. BitBake is then used to build whole distribution out from BitBake recipes. From recipes that all maintainers from all distributions work on together at one place. And yes, it doesn’t support spec or dsc files. You have to write .bb files. But it will build .rpm, .deb, .opk or .tgz out of it. All from one recipe. And that recipe is easier to write and more powerful then spec. If you never tried packaging for Debian, trust me that it is also much easier than Debian packaging. I actually had a presentation on openSUSE Conference 2009 about what can be done in BitBake and how it makes packagers life easier. Let’s quickly mention few features that BitBake has.

GSoC 2011 Ideas – OpenID provider for Elgg

Google Summer of Code 2011Last week I started introducing my GSoC ideas. This is continuation of that post series. Today I’ll be writing about OpenID provider plugin for Elgg, what is it good for and why we need it.

What is Elgg and why should you care?

Elgg is a soacial networking platform. It is written in PHP and it has quite general design. It supports plugins that can change nearly anything. It also has quite vivid community around. Community that among other things provides lots of plugins. And it is of course open source. All these features were reasons why we chose Elgg as a platform for openSUSE Connect.
If you are not familiar with openSUSE Connect, let me quickly explain what is it. As you may have already guess from previous paragraph, it is social network for our (openSUSE) users. We (Boosters) are still working on if, improving it and adding new functionality. But as it now, it was already used for example for our last board elections. It also gathers various user data that can be make accessible using API. And of course it allows people to follow each other, engage in discussions or do the polls asking our community for its opinion.

GSoC 2011 ideas – SaX 3

Google Summer of Code 2011You must already heard about this from everybody. Google Summer of Code 2011 is nearby and openSUSE wants to participate. Currently we are collecting ideas and mentors and we are going to apply. I also came up with few projects and volunteered to mentor them. I saw Thomas Thym introducing his GSoC ideas and I think it’s great to write a blog posts that introduce projects. So I’ll join and here comes the first project that many of you were waiting for – SaX 3.

openSUSE Paste after the sixth hackweek

Hackweek ended over a week ago. It was a lot of fun. I hope that some of you enjoyed it at least as much as I did. Unfortunately (or luckily? :-D), right after the Hackweek I was traveling to attend two conferences (firstly Znalosti 2011 in Slovakia and then FOSDEM (will blog about FOSDEM later)). Because of that I didn’t wanted to deploy what I was working on and I delayed the blogpost as well.
So what was I working on? On our precious pastebin. My original idea was to make connection between openSUSE Paste and openSUSE Connect. It ended a little bit differently.

When I was looking into technologies that could make such connection possible I decided to go for OpenID. It is in our (Boosters) long term backlog, to get rid of iChain and convert to OpenID. So I decided that OpenID is the right way to go 😉
First obvious feature that I implemented is that you can now log in using your OpenID. Why should you do that? Because logged users are not considered spammers regardless of how many links they are trying to paste. Some people already hit my quick hack to prevent spam robots from pasting too much. But that’s not all yet. You’ll also have your own personal list consisting of all your pastes. And you can even delete them! You can also create a key that applications will use to authenticate in openSUSE Paste to paste as you! Applications still need to be updated though.
Other thing that I wanted to create was OpenID provider integrated into openSUSE Connect. I investigated few OpenID servers, but in the end I didn’t succeeded in time. Maybe next Hackweek.

Hackweek 6: openSUSE Paste news

As all of you know already, Hackweek number 6 started yesterday. What I’ll be doing? Last Hackweek I started with project to run pastebin for openSUSE. Thanks to you I received quite some feedback. Mostly positive. The rest that wasn’t entirely positive contained some feature requests 😀 I guess it can count also as positive feedback in the end. One big feature was already implemented. Our pastebin support image pastes as well as code one. This was done mainly to help Sirko and our artwork team. Although user interface wasn’t really intuitive, it worked (UI is much better now in git repo, will be deployed in the end of the week). Other feature people asked for was ability to log in. So they’ll have their own history, control over their pastes and they’ll be able to skip spam checker (some people really need to paste something that looks like spam). So I decided that this Hackweek I’ll be working on this feature. Currently I got OpenID working for authenticating users. But there is still many features missing and I’ll need to find a way how to make it work within our openSUSE infrastructure. So far I didn’t succeeded in getting OpenID from our servers. So first two days are over and I made some progress, but there is still long way to go.

MongoDB and Redis in openSUSE Build Service

Usually I inform you here about MySQL related news in openSUSE. This time it will be a little bit different. But it will be still database related. You probably know that not so long ago (maybe still valid today), NoSQL databases were the cool thing to try. I think it has settled a bit now and it is no more about being cool, but more about your actual needs. So you may actually need some of these. And I can happily inform you, that thanks to the efforts of gladiac, we’ve got some of these in server:database repository now! Namely we’ve got MongoDB there and also Redis. Hurray! They don’t build for all distributions, but if you’ve got recent openSUSE, you can find a package for you there 😉
Although some of us might like the idea of playing around with new technologies, there are already some applications that can use these databases.
One of them, that I was told about is Diaspora (I admit that I wouldn’t be aware of it’s existence without gladiac telling me about it). This social networking thing has interesting concept. It is totally decentralized and gives you ability to have control over you own data! And it requires these two databases. So thanks to gladiac efforts, you can now build your own Diaspora server on openSUSE! Anyone going to create Diaspora appliance using SUSE Studio? 😉

MySQL 5.5 in openSUSE Build Service

MySQL 5.5 is GA for more then a month already. If you are reading some news, you probably already heard, that it is great, million times faster, has trillion new features that you desperately need and much more. Of course, I’m exaggerating a little bit. But anyway, MySQL 5.5 is new version everybody talks about. So now when do you get it? It is already lying around for some time in server:database:UNSTABLE repository. It was there since beta, but took me some time to get final version ready. Just add it to your repositories for example by:

openSUSE Paste screenshooting script

This post will be really quick. As you may know, openSUSE Paste already supports pasting images. But I found out, that some people don’t use it because they’ve got some other pastebin nicelly integrated. So to help them out, I created simple script that can help them. It is currently available in openSUSE:Contrib repository. You can install it, package name is susepaste-screenshot. When you run it, it will let you click on any window and then it will paste image of that window. It will also show you the link for your paste (in new X window) and copy it to you clipboard. I know that it is not prettiest thing you ever seen, but it works. For nicer GUI, ask for openSUSE Paste support upstream of your favourite pasting tool 😉
btw. If you prefer not to install it manually, you can get it from gitorious, but that way, you’ll have to deal with dependencies by yourself 😉