Skip to main content

a silhouette of a person's head and shoulders, used as a default avatar

Organizing oSC13 - 69 days before


I read yesterdays post and I found it very 'dark', not far from the truth but if you plan to make a conference reading that post will discourage you. One other truth is that I yelp a lot, if you met me more than once you know that for sure, it's not because I am a bad person or one of those people that see it all black, it is the perfectionist inside me that believes we live in a perfect world and reacts.
It is impossible to organize such a thing and wait for everything to be perfect. It is too complicated and there are many things that nobody can actually predict and even if you done that before, most of the things you need to handle probably changed since the last time you did it. What I keep telling myself is to expect perfectness but be pleased if something is above very good. With that you are a bit more relaxed and as the years passed by I learned that the only actual way to reach perfectness in complicated situations it to be (relatively) relaxed so that you have eyes around and predict things that can make a situation go bad. Also being relatively relaxed gives you the ability to think for alternatives. A good advice I was given once upon a time after a failure of organizing a gig was "ALWAYS have alternatives". What I mean by that is that when you organize something you start making tasks, it is impossible for some of those tasks not to go wrong for many reasons. At certain situations it (depending on the affection of the task in what you organize) it is better to leave outside a good idea were there is no viable alternative than trying to do something Great and because of this you will deliver something less than good. Another thing to have always in mind is that 'The road to hell is paved with good intentions" and no matter how hard you try people will see the result in the end, not the effort you did for that result. Another thing is that in the end there always be someone that will not like what you did and probably will tell you that the worst way and at the worst time. Value feedback from all because it is priceless but learn to separate good from bad feedback.
I think this is enough for today. I am at my actual work today so I will spend less than the time I want to the oSC13 and this is not a bad thing actually, I will tell you why at some other point. 

a silhouette of a person's head and shoulders, used as a default avatar

Organizing oSC13 - 70 days before


For more than a year I am living in the heat of organizing the next openSUSE Conference, first it was oSC12  and about a year ago it became oSC13. At some point it even became organizing no oSC at all for what it counts but we manage to prove ourselves again and we finally got oSC 2013. I knew from the first moment and maybe even some moments before that, that this would be a hell of a work. I even knew that I will regret it many times for some moments when everything will seem to go to hell and I will stand there asking myself 'What the Fuck did you do dude?' , but as usual I went against common sense and I followed my instinct, it worked when I started with Stathis the Greek community, it also worked some times before.
Disappointment is what I felt most of the times and other than the love for FOSS I really don't see another reason to do such a thing as organizing a conference, at least no other that acts as a countermeasure to disappointment when that comes. Beside that, it is a great life experience and it gets you closer to what you are made of which is great if you are into that kind of inner research.
Disappointment comes from anywhere and especially from people that told you that they will be there to help. I was lucky at that since there was always Stella who 70 days before and a year after is still standing and Henne who is just doing things, even when I got burned and could not work at all for some time those guys where there. It is great to have a co-pilots, if someone out there is looking on doing something like organizing a Conference that big he/she should find someone like them or just contact them :D

Now there is a bright side of course to all that but after 13 hours in front of 2 screens I find it dificult to describe it, maybe in Day 69 since my purpose is to blog every day up to the conference day.

For today all I can say is that I am hugely happy with myself since I finished more than double the tasks I planned for today and I just realize I still were my work uniform, I have a meeting in Skype now and after that I will have a bath and sleep. Nice thing that people cannot actually smell you through Skype :D

a silhouette of a person's head and shoulders, used as a default avatar

It's all about monkeys

Yesterday evening, May 7, two belgian user groups,  MADN and DotNetHub invited me to give a 2 hour introduction session on creating multi-platforms mobile applications in c# with Xamarin 2.0.

Microsoft Belgium was hosting the session, and the room was packed !

I really enjoyed that evening, and just wanted to thank you all: attendees for their presence and interactions, MADN and DNH for the invite and the bottle of wine, Microsoft Belgium for the place, food and drinks, and Xamarin for the give away licences, monkeys and t-shirts.


a silhouette of a person's head and shoulders, used as a default avatar

KDE Platform, Workspaces and Applications 4.10.3 for openSUSE

KDE released 4.10.3 versions of the Platform, Workspaces and Applications yesterday, with more than 70 bugs being fixed. Notably:

  • Several fixes in handling encrypted mails in KMail
  • Fixes for KDEPIM syncing and ownCloud
  • A number of improvements in Dolphin, including crash fixes
  • Optimizations in the Plasma Workspaces

[The full list](https://bugs.kde.org/buglist.cgi?query_format=advanced&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&bugidtype=include&chfieldfrom=2013-01-01&chfieldto=Now&chfield=cf_versionfixedin&chfieldvalue=4.10.3&order=Bug Number&list_id=638034) has other important changes.

As usual, there are two different repositories from which you can get them:

  • KDE:Distro:Factory in case you are interested in contributing to packaging for the next openSUSE release;
  • KDE:Release:410 (openSUSE 12.3 or openSUSE 12.2) in case you just want to upgrade to the latest and greatest version

In case you upgrade now, you should be aware of an issue with KDM that makes it not start: thankfully there’s a workaround available, and updated packages are already being built by the OBS, so it will be solved soon.

Report bugs in packaging to Novell’s Bugzilla, and bugs in the software directly to KDE.

Have fun with 4.10.3!

the avatar of Andres Silva

openSUSE Wallpaper Submissions

Hello friends

Here is a little video I made to help orient your thoughts about the wallpaper submission process. I tried giving you tips and ideas on how to come up with a wallpaper and one specifically made for openSUSE. Please bear in mind that although you may not know all the details about the wallpapers we are looking for, you can still ask for our help for us to give you hints on what to do.

Other than that, here you go!


Andy (anditosan)
the avatar of Klaas Freitag

ownCloud Client May Hackfest

Again we’re meeting in Berlin at Woboq Intl. Headquarters to work on the ownCloud Sync Client again. One of our topics is the still not completely fixed problem with conflict files. There has been lots of troubles about false conflict files the client is generating in that situations were the ETag database is wasted.

We revisited this problem and will come up with a better solution.

The key changes will probably be

  • Conflict files will never again be generated on the server. Even if we are in a conflict situation, we will download the file and keep the conflicting version only on the client. This enables us to detect false conflicts.
  • The current way we handle a system time difference has to be changed. We wont adjust the file mtimes of files in the file system any more with the time difference between the client and server. That way we do not suffer from floating time differences any more. For the decision of which version is more recent, we will still consider the time difference.
  • We will use a very quick request like OPTION to get the servers time setting to the client. That will allow to calculate the time difference between server and client more accurately. It’s needed to decide which file is more recent.

aktoc Read this as a note to self, yet we feel very well fitting into Berlin round may 1st ;-)

Photo credit: 96dpi / CC BY-NC

a silhouette of a person's head and shoulders, used as a default avatar

GSoC Meetup : Jamia Millia Islamia Faculty of Engineering

It all began abruptly, when Akif Khan ( a prospective student ) asked me to discuss my GSoC experiences at his college. The idea instigated quickly instigated me as I longed to visit a College Campus and meet real open source people after a long time, so I agreed without giving a second thought, we decided that we will meet up on Saturday at Faculty of Eng, Jamia Millia Islamia.

I reached Jamia Millia at time and was pleased to find an enthusiastic culture of open source led by the students over there. Lots of students from other colleges were a part of the meetup too. A few things that I noted my experience there are as follows :

  1. Students were enthusiastic and really wanted to contribute to open source. Since most of them were fresh(wo)men, they were enthusiastic about the GSoC experience and how it could help them.
  2. Discussion how to select a project, write a proposal and how to communicate with the organizations was taken up.

One of the most enthusiastic things that I heard was “I really want to do it, despite of getting through GSoC” which is pretty much any open source organization wants. Hopefully, we have more students who think like this and even more who turn their thoughts into action. Overall, it was an excellent talk with a bunch of enthusiastic people :).

There were a lot of interesting questions asked, one of them being was “How do I start contributing to it?” . Recently, I had one of the more interesting reads on quora which gives a answer to the question https://www.quora.com/Software-Engineering/Which-open-source-projects-are-actively-looking-for-contributors in a very succint way.

IMAG1549 IMAG1533 IMAG1544 GSoC - Meetup JMFEC

a silhouette of a person's head and shoulders, used as a default avatar

Recent documents in LibreOffice

This is again one of those little improvements that make LibreOffice much more usable, and that I so much love hacking on. I implemented a dropdown for the Open toolbar button that brings an easy access to the Recent Documents, and sent that the UX mailing list for feedback. I got some really useful hints. Even better - I gave Samuel code pointers to play with this a bit, and he came up with a beautiful patch that implements his ideas. And here is the result:

Samuel - thank you for this! :-) For anybody who would like to bring this functionality to the Start Center too (the screen you see when you start LibreOffice), here is an Easy Hack that will result in reusing the code for the Start Center too; and also will delete lots of duplicate code.

the avatar of Robert Riemann

Install Gitlab on OpenSUSE 12.3

Private Git Repo Hosting

Gitlab brings the social coding Github experience to your own network. In contrast to the commercial product Github which only allows to host open source git repository projects using the free plan, you can install the free/libre software Gitlab wherever you like and do what you want. Therefore you need to setup a RubyOnRails environment. Officially, Gitlab supports Debian/Ubuntu. Read on how to install it on OpenSUSE.

The presented solutions features a btrfs filesystem RAID-1 :) and some custom patches. Instead of init.d startup scripts, we use systemd. I recommend to use nginx as a webserver.

Please be aware that the development of Gitlab continues rapidly. This might break this how-to at some point. Please read everything before starting!

Install OS

  • Download OpenSUSE 12.3 32bit, Network edition http://download.opensuse.org/distribution/12.3/iso/openSUSE-12.3-NET-i586.iso
  • I chose 32bit, because Ruby Binary Extensions might have problems with lib64 path structure. We workaround this bug.
  • I chose networkinstall, because we need only very few packages and don’t need to download everything. only 200MB are downloaded during install
  • the image can easily copied to a usb pen drive using the gui tool “imagewriter” (executed as root)
  • Partition: There are 2 big hard drives. I created on both of them first a primary pratition of 1GB of type LINUX-RAID
  • I use the yast software raid setup during the install to connect both partitions to a software raid-1 partititon of ext4 to mount in /boot
  • I created on both hard drives a btrfs partition (50GB), but only mount the one on /dev/sda to /
  • I created on both hard drives a swap space of 2 GB and mount both to swap

The system gets installed and the configuration follows.

  • I open ssh. I disable ipv6.
  • I disable dhcp and configure the hostname to “leise” and the site to our internet domain, the nameserver and the gateway is set to be the mail server.
  • The server gets the fixed ip: 192.xxx.xxx.184
  • The network check passes successfully and I apply immedately online updates.
  • I leave the user input dialog blank and only set a root password

The installation is done. I test everything with a restart using reboot. Now the root filesystem has to be turned to a btrfs raid system.

  • I add a second device to the root file system: btrfs device add /dev/sdb2 /
  • I convert the striped btrfs mode to the raid1 mode for filesystem data and metadata: btrfs filesystem balance start -dconvert=raid1 -mconvert=raid1 /

Install Gitlab

The following steps apply to version 5.0 and try to copy the step by step tutorial which is refered from the README: https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md

Install dependencies:

zypper ar http://download.opensuse.org/repositories/devel:/languages:/ruby:/extensions/openSUSE_12.3/devel:languages:ruby:extensions.repo

zypper in patterns-openSUSE-devel_basis ca-certificates-cacert nginx rubygem-rb-inotify rubygem-ffi redis mysql-community-server mysql-community-server-client rubygem-bundler ruby19 ruby19-devel libmysqlclient-devel zlib-devel libyaml-devel libgdbm4 libreadline6 libncurses5 libffi47-devel curl git-core postfix checkinstall libxml2-devel libxslt-devel libcurl-devel libicu-devel
# accept deinstallation of patterns-openSUSE-minimal_base-conflicts

python2 --version # make sure to have version > 2.5 but < 3.0

ruby1.9 --version # make sure to have a compatible version (in my case 1.9.3)
cat /usr/bin/bundle # make sure to have ruby version 1.9 in the shebang line (first line in file)

systemctl daemon-reload # reparse config for systemd (necessary, because we installed mysql)
systemctl start mysql.service  # start mysql
systemctl enable mysql.service # make mysql autostart
cp /etc/redis/default.conf{.example,}
chown redis.redis /etc/redis/default.conf
systemctl enable redis.service
systemctl start redis.service

Prepare system for Gitlab

  • create a user git: useradd -ms /bin/bash git

Prapare Gitlab (using account git)

su git # (change to the account of git)
cd # (change to the home directory /home/git)
git clone https://github.com/gitlabhq/gitlab-shell.git
cd gitlab-shell
cp config.yml.example config.yml
vim config.yml # change domain to the domain of this computer
cd
ssh-keygen # to be sure, create ssh key (not mentioned in official docu) with empty passphrase

Follow the setup of the mysql data base: https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/databases.md#mysql

  • mysql -u root
  • follow the guide for mysql commands

We continue with the setup of the GitLab Rails application:

gem1.9 install charlock_holmes --version '0.6.9' # execute as root
su git
cd
git clone https://github.com/gitlabhq/gitlabhq.git gitlab
cd gitlab
git checkout 5-0-stable # not possible yet, I use master instead
vim config/gitlab.yml
# ^- email_from: gitlab@atech.de, support_email: admin@atech.de, default_projects_limit: 100
# disable username_changing_enabled
chown -R git log/ tmp/
chmod -R u+rwX log/ tmp/
mkdir /home/git/gitlab-satellites
mkdir tmp/pids/
chmod -R u+rwX tmp/pids/
cp config/unicorn.rb.example config/unicorn.rb
cp config/database.yml.mysql config/database.yml
vim config/database.yml # edit password and username
bundle install --deployment --without development test postgres # takes a while
bundle exec rake db:setup RAILS_ENV=production
bundle exec rake db:seed_fu RAILS_ENV=production
bundle exec rake gitlab:setup RAILS_ENV=production # chose yes
bundle exec rake gitlab:shell:setup RAILS_ENV=production # chose yes
git config --global user.name  "GitLab"
git config --global user.email "gitlab@atech.de"

Install Check:

su git
cd /home/git/gitlab
bundle exec rake gitlab:check RAILS_ENV=production

Go to yast firewall and open port http (and https port): 80, (443)

# update services
su
cd /usr/lib/systemd/system/
wget https://gist.github.com/veprbl/5115638/raw/9d18a341217f109accb67f57e8ad420c9de442fd/gitlab.service # TODO wrong mysqld
wget https://gist.github.com/veprbl/5115638/raw/be78658953cd5967a4d874f5b0a019667cf090af/gitlab-worker.service # TODO same
# double-check content of these files!
chmod 644 gitlab.service gitlab-worker.service
# TODO edit /etc/nginx/vhost.d/*
systemctl daemon-reload
a silhouette of a person's head and shoulders, used as a default avatar

Review of Fluendo Codec Pack and DVD Player in openSUSE with Gnome

+Fluendo  aims at improving the global multimedia experience in the Free Software world by funding, developing and maintaining the +GStreamer  media framework and providing a wide range of commercial and free products on top of it.

For this test I did a clean install of +openSUSE  12.2 with the +GNOME  3 environment. I endeavored where possible to only use the multimedia applications included as part of our Gnome 3 pattern. So for most things I've used either Totem or +Banshee  which both use the GStreamer framework, which is what the Fluendo Codec pack is for, and what their DVD Player is based on.

The Fluendo codec pack promises superior playback capability with hardware acceleration. It certainly delivers an overall better multimedia experience. As I mentioned I have endeavored to keep a minimal install. Typically I have found Banshee to be glitchy and unpredictable. Though I knew Banshee was a darling media player for many, I hadn't the least idea why. However, after installing the Fluendo Codec Pack the way Banshee works is inexplicably better, and I to have become a fan. Also Totem (which is usually a steaming pile of $%!^) behaved much better with the Fluendo Codec Pack. Overall, my opinion on purchasing this would be this; whether you need it or not, the refined playback and compatibility make for a more enjoyable multimedia experience under Linux with less fuss than other means.

Unlike their Codec Pack, the Fluendo DVD Player was disappointing. Now, it does play DVD's, and plays them beautifully. However, I have found a few cases where disks that should have played, simply didn't. The interface leaves much to be desired. It is not suitable to new users since in order to use this software properly you'd need to have at least an elementary understanding of how devices are depicted in the Linux filesystem. I found that most of the configuration options that were shown either were unresponsive, or broken to the point of being unintelligible. There has been an update fixing that now, though the usage of the software is still ridiculously complicated. Bottom line is this; get it if you watch a lot of DVD movies, and know how devices are shown in a Linux filesystem.

Interesting sidenote: +Novell holds a license to redistribute these. I think they were going to include them in +SUSE Linux Enterprise Desktop, or maybe try making a home desktop.