Skip to main content

the avatar of Sankar P

Telepathic Flirt With Chromium

Hackweek is an event in SUSE where developers can work on any pet project for a week (like Google's 20%) This year's edition happened last week in SUSE. Since I am part of the openSUSE community, I too participated in the spirit of this event in my night time. The project is codenamed Arattai.

I tried to bring a prototype to provide IM/Chat support built-in to the Chromium browser. Watch the screencast below. Please click here in case you do not see the embedded video. Please see the video in full screen HD.



Under the Hood

  • I have used Telepathy  as the underlying library for implementing the basic chat support. 
  • The source code is mostly a prototype which will have to go through a rigorous design review and improved upon if you need to use it in a production machine. This is mostly to satisfy a personal itch and not of good quality yet.
  • The patches are attached in the Chromium bug http://code.google.com/p/chromium/issues/detail?id=98990
  • I chose Telepathy because it seem to provide the best implementation for XMPP 0174 protocol, Serverless Messaging, which was my primary aim. Also it is agreed upon by both GNOME and KDE. Isn't it something rare ;-) ?
  • The heart of the code is only about 5 days old and is not of good quality yet. 
  • telepathy-glib has a C interface. Chromium is written using C++ . So, I wrote a TelepathyBridge class with static members to marshal the requests from Chromium to Telepathy and vice-versa. I wrote a TelepathyBean class to move across these layers. Also, there were ArattaiUI and ArattaiHandler classes to take care of the Chromium side of things (like registering a protocol, webui etc.) The user-interface you have seen is provided by the arattai.html and arattai.js files.
  • I believe having IM support may be important for Chromium as IM is one of the important activities that could not be performed yet on the browser.
  • There are things like webRTC which will form the future of communication. However, we still have dozens of protocols that work with existing clients which the browser should support (like support for Novell Groupwise, MSN, Office Communicator etc.)

Observations
  • My personal opinion that, C++ is a needlessly complex language, strengthened. There are a dozen ways to do casting, smart pointers, const functions etc. but no native async/event support. I love C# as a programming language. Sadly C# does not seem to have an appealing future on Linux anymore.
  • The guy who invented Javascript should have been a C++ programmer.
  • Javascript typing can get on a C programmer's nerves
  • Telepathy hackers in #telepathy are extremely helpful. Thanks a lot folks.
  • Open source libraries in general have very poor documentation, if not backed by a company like Google.
  • If Telepathy support has to be included into Chromium, it should be available in Windows too.
  • Automatic memory management is bliss.
Please share your opinions/thoughts about this feature either in the comments or by mail. Thanks.
the avatar of Andrew Wafaa

Hardware needed for openSUSE on ARM

As I mentioned before, we have an initial target platform identified for testing the work of all those involved in the openSUSE ARM port. The problem is we need to obtain the hardware. I am in discussions trying to get some corporate sponsorship of hardware, but we can not rely soley on those kind companies that would like to see us succeed. We as a community need to help ourselves succeed, as such I’ve set up a campaign on Pledgie to enable us the community to contribute to the effort for obtaining hardware.

the avatar of Greek openSUSE Ambassadors

openSUSE Conference 2011 Greek's Review

The openSUSE conference is over. Nirenberg was full of geekos attending the conference. Almost 400 visitors have shown up for attending the sessions about technical and community matters and have fun at the parties and other events organized.


Talks & Workshops!

Everything was interesting. People couldn't decide which session to attend! There were many technical sessions from low-level development to kernel tools. There were marketing and social sessions, focused on how openSUSE can be spread all over the world! Packaging sessions weren't missing and they were detailed teaching the attenders how to create a package from scratch! There were interesting conversations like Robert Schwelkert’s talk, about Where do we improve?” where we talked about the improvements that must be done at documentation, wiki, translations, Bugzilla and other stuff.

From the openSUSE Conference couldn't be missing the openSUSE project meeting where we discussed about the upcoming elections and the status of openSUSE Foundation and a number of interesting development ideas about the distribution.

The one presentation to remember was by Gregory Zysk about “Introduction to Cross-Cultural Communication, Conflict and Collaboration. After presenting his model of cross-cultural communication model and his ambitions, he made an awesome test... He made everyone in the room pick a mate that he hadn't worked with him at all or get to know and after he gave us two papers of different scenarios he made us conflict and find a common solution to solve the scenario!

Furthermore, from the openSUSE conference couldn't be missing the incredible openSUSE women! There was a conversation about “How to get more Women into openSUSE” by Lydia Pintscher of KDE who talked about the difficulties that women face in a community and how can a community attract and get more women.

Moreover, there were interesting presentations based on openSUSE sub-projects like Education, and Tumbleweed. Also, there was a topic about openSUSE in commercial, and especially for enterprise and other services which gives us the impression that openSUSE is spreading and deployed everywhere!Last but not lease, there were “Lighting Talks” from people of openSUSE and other communities, introducing themselves, talk about their jobs, their hobbies, their interests and in general talk about their everyday life.


Have a lot of fun!

Every day was different! The beautiful decorated location and the German beergarden was perfect for geekos to have fun. There were different happenings everyday after the sessions were over. “Pizza Party” with many pizzas and beers, “Barbeque Party” with sausages and other meet, Rodeo Texas Party” with poker tables and bull riding, different live concerts with interesting music like the “8bit Music concert” where the music came from tweaked GAME BOYS. Last, it was awesome that we went at a city nearby to see the man that made us the “Old Toad” openSUSE beer! We were guided in the factory rooms and saw how beer is made. After that, we ate local food and drunk local beer at the local restaurant where we stayed there till late at night discussing, drinking beer and having fun!


Summary

We are happy that we participated at the openSUSE Conference successfully. People from all over the worlds were there in order to meet the geekos and attend the sessions. Thanks to our sponsors, we had a great internet connection and many parties and happenings for geekos to attend.




You can also read the daily reports from Greeks.

1st day

2nd day

3rd day

4rth day

5th day

the avatar of Greek openSUSE Ambassadors

Greek openSUSE community, Translation of openSUSE Weekly news in Greek (issue 194)




Hello everyone!

I am very pleased to announce the new issue (194) of openSUSE Weekly News in Greek.
In this issue you will read about:

* SUSE Hackweek 7 – Next Week
* Thomas Schmidt: openFATE News
* Koudaras Konstantinos: Systemd is being removed from Tumbleweed
* Petr Baudis: Realtime Signal Analysis in Perl
* The VAR Guy: SUSE Linux Prepares Partner, Customer Surprises

As well as many interesting news about openSUSE and useful advice, which can make our lives easier.

Enough said though... Read more at: http://own.opensuse.gr, http://el.opensuse.org/Weekly_news or www.os-el.gr

We are always looking forward to receiving your comments as well as suggestions regarding things you would like to read about in our next issue.

The openSUSE Weekly News is being translated in the Greek language from issue #150. You can read older translated issues here: http://el.opensuse.org/Κατηγορία:Weekly_news_issues

Enjoy it!
Efstathios Agrapidis (efagra)
the avatar of Pascal Bleser

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

Learning about Connect openSUSE

It seems that not many people are aware of Connect openSUSE service, that was created by Boosters team while ago, and consequently they don't know what they miss.

In the wiki page about it there is more about technical details then about social aspects, which is not surprising:

  • Guys that created it are technicians, software developers, that know how to handle code and have a lot to say about it, but they seldom have great popularization skills, like marketing guys. I like this way, as being popular in the software world doesn't relate always to a good code, 
  • Wiki article was written when Connect was in initial stages without many add on features (plugins) it has now, so it is time to take a new look at it. 
For instance, until today I didn't know that I can fix my dashboard page layout the way I want, and it is just "Edit page" button away, which is at the bottom right. The page is available to logged in users as Dashboard link in the top right corner, right before the log in name. 

It would be awesome if more people will go there, try it and:
  • Comment on existing layout and features. 
  • Propose new ones, specially if you, or someone that you know, can code and come up with working solution, or at least something that is easy to adjust to Connect.
Social aspects of Connect are great when you consider how hard is to find similar souls and start something in project as large as openSUSE, and Connect offers easy search for them, located on the top right, the same spot on the every server in openSUSE domain. Type in term, like "wiki" you you are very close to wiki related stuff, including my favorite Wiki maintainers group :) 

the avatar of Joe Shaw

Terrible Vagrant/Virtualbox performance on Mac OS X

Update March 2016: There’s a much easier way to enable the host IO cache from the command-line, but it only works for existing VMs. See the update below.

I recently started using Vagrant to test our auto-provisioning of servers with Puppet. Having a simple-yet-configurable system for starting up and accessing headless virtual machines really makes this a much simpler solution than VMware Fusion. (Although I wish Vagrant had a way to take and rollback VM snapshots.)

Unfortunately, as soon as I tried to really do anything in the VM my Mac would completely bog down. Eventually the entire UI would stop updating. In Activity Monitor, the dreaded kernel_task was taking 100% of one CPU, and VBoxHeadless taking most of another. Things would eventually free up whenever the task in the VM (usually apt-get install or puppet apply) would crash with a segmentation fault.

Digging into this, I found an ominous message in the VirtualBox logs:

AIOMgr: Host limits number of active IO requests to 16. Expect a performance impact.

Yeah, no kidding. I tracked this message down to the “Use host I/O cache” setting being off on the SATA Controller in the box. (This is a per-VM setting, and I am using the stock Vagrant “lucid64” box, so the exact setting may be somewhere else for you. It’s probably a good idea to turn this setting on for all storage controllers.)

When it comes to Vagrant VMs, this setting in the VirtualBox UI is not very helpful, though, because Vagrant brings up new VMs automatically and without any UI. To get this to work with the Vagrant workflow, you have to do the following hacky steps:

  1. Turn off any IO-heavy provisioning in your Vagrantfile
  2. vagrant up a new VM
  3. vagrant halt the VM
  4. Open the VM in the VirtualBox UI and change the setting
  5. Re-enable the provisioning in your Vagrantfile
  6. vagrant up again

This is not going to work if you have to bring up new VMs often.

Fortunately this setting is easy to tweak in the base box. Open up ~/.vagrant.d/boxes/base/box.ovf and find the StorageController node. You’ll see an attribute HostIOCache="false". Change that value to true.

Lastly, you’ll have to update the SHA1 hash of the .ovf file in ~/.vagrant.d/boxes/base/box.mf. Get the new hash by running openssl dgst -sha1 ~/.vagrant.d/boxes/base/box.ovf and replace the old value in box.mf with it.

That’s it. All subsequent VMs you create with vagrant up will now have the right setting.

Update

Thanks to this comment on a Vagrant bug report you can enable the host cache more simply from the command-line for an existing VM:

VBoxManage storagectl <vm> --name <controllername> --hostiocache on

Where <vm> is your vagrant VM name, which you can get from:

VBoxManage list vms

and <controllername> is probably "SATA Controller".

The VM must be halted for this to work.

You can add a section to your Vagrantfile to do this when new VMs are created:

config.vm.provider "virtualbox" do |v|
    v.customize [
        "storagectl", :id,
        "--name", "SATA Controller",
        "--hostiocache", "on"
    ]
end

And for further reading, here is the relevant section in the Virtualbox manual that goes into more detail about the pros and cons of host IO caching.

the avatar of Andrew Wafaa

Target ARM Hardware

I just sent this into the -arm mailing list. This is a hot topic, and one that seems to generate the most noise. I’ve had a discussion with several people about target hardware, and I’ve also looked at what our peers are doing and saying. At the same time I’ve been trying to see what options we have for getting some sponsorship for hardware. There were three devices in the running, all are classed as development boards – so no case or external prettyness (beauty comes from within anyway):

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