Skip to main content

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

Announce: Mago New development release

On behalf of Jean-Baptiste Lallement:

We are pleased to announce the new development release of Mago.

This release has seen a lot of changes and improvements to make Linux
automated desktop testing easier and enable more people to contribute
writing tests and aiming to high quality desktop applications.

Key features included in this version:
- Separation between the framework and the tests
- Support for standard gnome dialogs and authentication
- Easy configuration of the tests with configuration files
- Support for the latest version of LDTP
- Direct interaction with Window Manager via XLib
- Image matching testing with XPresser
- Easy and flexible collect and run with Nose
- Testtools to extend python unittest
- The documentation now uses Sphinx
- Magomatic to generate application map

You want to contribute to the effort?
You can download the source from bazaar at https://launchpad.net/mago

The testsuite is available from lp:~mago-contributors/mago/mago-testsuite

Note that this version is not compatible with the previous version of
mago which is still available from lp:~mago-contributors/mago/mago-1.0

Mailing List:
http://mail.gnome.org/mailman/listinfo/desktop-testing-list

IRC:
#ubuntu-testing in irc.freenode.org
#gnome-testing in irc.gnome.org


Thanks to all the people who contributed fixes, features and lot of tests.
a silhouette of a person's head and shoulders, used as a default avatar

Announce: Linux Desktop Testing Project (LDTP) 2.1.0 released

Changes in this release:

Added documentation files from LDTPv1 and updated accordingly
Search object name as unicode character and mutliline
Print Unicode exception, instead of string. Printing string fails, if non-ascii strings are in exception string

Performance improvement:

When looking for object inside a window without any delay, utilize all the CPU, just delay the lookup every 2 seconds
Don't force remap on gechild, getobjectlist, getobjectproperty, unless the window object is changed, as this utilizes more CPU

New API:

getmax - Get max value of spin button
getmin - Get min value of spin button
startlog - Start logging to file
stoplog - Stop logging to file
startprocessmonitor - Start monitoring the given process
stopprocessmonitor - Stop monitoring the given process
getcpustat - Get the current CPU statistics of the given process
getmemorystat - Get the current memory statistics of the given process
registerkbevent - Register keyboard event
deregisterkbevent - De-Register keyboard event
getobjectnameatcoords - Get window / object name in LDTP format based on the current mouse co-ordinates

Bugs fixed:
619575: Raise a more descriptive error when a child is not found
620343: setcellvalue is not implemented in LDTP2
624690: LDTP2.0.6 cannot type comma ', ' use function 'enterstring'
624678: Cannot identifiy some dialogs of OpenOffice3.2
635047: 'comboselect' doesn't work when specify component name listed in 'getobjectlist'
638229 - onwindowcreate fails with CannotSendRequest with python2.7
638226 - Missing import socket in ldtp/__init__.py

Special thanks:
Ara Pulido, JB Lallement - Ubuntu Mago team
Eitan Isaacson
Brian Nitz - Oracle / Sun

Download source here
Download RPM / deb

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

LibreOffice 3.3 rc4 available for openSUSE

I’m happy to announce that LibreOffice 3.3 rc4 packages are available for openSUSE in the Build Service LibreOffice:Unstable project. They are based on the libreoffice-3.3.0.4 release. Please, look for more details about the openSUSE LibreOffice build on the wiki page.

The packages are based on LibreOffice release candidate sources. Though, they include some addons from the old Go-oo project.  They have not passed full QA round yet and might include even serious bugs. Therefore they are not intended for data-critical usage. A good practice is to archive any important data before an use, …

As usual, we kindly ask any interested beta testers to try the package and report bugs against the product LibreOffice .

Known bugs

  • some packages were not renamed, .e.g. OpenOffice_org-thesaurus, …; they are not built from the main LibO sources; I will do soon.
  • SLED10 build is not available; need more love

More known bugs

Other information and plans:

First, I am sorry that I did not announce two older builds. I published rc2 build just before Christmas and the announce was forgot in the hurry. There were problems with building rc3. It was ready only one day before rc4, so it did not make sense to announce it.

There still might be some openSUSE-specific bugs that would need to be fixed. I hope that they do not break the base function but… I will continue with producing newer builds with more fixes from the stable libreoffice-3-3 branch. I will move the packages to a stable project once we finish testing of all the SUSE-specific addons. It should happen within the next few weeks.

Please be patient and thanks for understanding.

the avatar of Andrew Wafaa

Counting down to the new Geeko with some robotic help

As many know, I have a few Android devices, and I know a lot of other openSUSE fans out there also have robot powered devices. I decided the other day to try something during my lunch break – create a widget to show how many days left till 11.4′s release. Yeah I know it isn’t an earth shattering application, but I’m not a code monkey, so any working code I generate is a serious plus for me ;-)

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

Configuring an IPv6 DSL connection

The German company rh-tec offers free IPv6 internet connections for people that already have T-DSL. Configuring such a connection on openSUSE 11.3 is not as straight forward as with IPv4. It’s not hard either if you know where to put the settings though.

  1. start the yast2 DSL module
  2. follow the instructions of the wizard to set up a new PPPoE device. Enter your user name and password at the provider screen.
  3. At the “Connection Parameters” screen uncheck “Automatically Retrieve DNS”. Enter an arbitrary IPv4 address as first DNS server (yast doesn’t accept IPv6 there yet, bug 665516).
  4. finish the wizard and leave yast
  5. open /etc/sysconfig/network/providers/provider0 (or whatever name was chosen by yast) in an editor
  6. change DNS1 and DNS2 to the actual IPv6 addresses of your provider’s name servers
  7. add the following line to the file:
    PPPD_OPTIONS="noip +ipv6 ipv6cp-accept-local"
  8. save and quit
  9. Done! You may now use cinternet or qinternet to dial in and enjoy the (rather empty) IPv6 internet.

the avatar of Andrew Wafaa

The Board - packaged for your pleasure

No, I’m not talking about this board – I’m talking about the cool project by GNOME afficianado Lucas Rocha – The Board. There is a little gotcha with the packages – it is for openSUSE Factory/11.4 only at the moment. I need to work on backporting some of the shiny dependencies to 11.3. Things aren’t 100%, as I need to do a tiny bit of cleaning up with the packages, but it works pretty well for a 0.

the avatar of Alan Clark

A Jazzy Analogy


I just returned from a fine week of New Orleans Jazz, from which I not only enjoyed the musical experience, but also participated in their unique cultural phenomena.

As one of the artists commented during his gig, "Jazz is all about openly sharing the musical experience". Known for it's swing and spontaneity, Jazz not only mirrors the individuality of the performer, but the audience also shares in the experience as they freely applaud the artistic improvisation during a chart. A great Jazz session generates a positive energy unlike any other musical experience. That positive energy is not just from the upbeat swing of the music but from the positive reinforcement and respect paid to the performers by the audience members.

During the week, I listened to a lot of performers with differing levels of expertise. Playing in an environment relatively safe from offense encouraged these performers to push the limits of their talents and individual expression. The more the audience cheered, the more expression drawn from the players. Not all the high notes were reached, not all solo's were flawless. But the cheers were just as strong for the attempt as for the success. All became totally absorbed in the experience. In the end both the performers and the audience left with a memorable experience, richer not just from hearing the music but from participating in the culture as well.

The atmosphere reminded me of the feeling I have as a participant within the openSUSE community. We have codified this culture in the openSUSE guiding principles which are designed to support and protect our identity. An identity designed to build a unique culture. An identity which fosters the innovation of new ideas and artistic individuality while embracing people with differing levels of expertise. An identity of respect for other persons, their contributions, opinions and beliefs. A culture where people feel accepted and safe from offense.

Why am I involved? Just like going to a Jazz gig, being part of the openSUSE project is more than just a project, it's an opportunity to be part of a memorable experience. All while "Having a lot of fun..."

the avatar of Matthias Hopf

Restricting Linux kernel configure options to currently used set

git is great for bisecting regressions (or finding a fix in a series of commits) - but compiling the kernel can take ages, especially if you have to do it on an Atom, and with the configuration of your favorite distribution...

Now finally I created a perl script for reducing the default config to the set of modules that are currently actually loaded. Reduces kernel compilation times on a quad core machine from 56 minutes to 6 for a standard SLED kernel Guess it's even more difference on this !@#$% Atom...

Usage:

# cd /var/tmp/linux-2.6 or wherever your git tree is located
# gunzip </proc/config.gz >.config to get the current configuration
# make oldconfig to add new options for current kernel
# ~/linux-adaptconfig.pl >.config.new     to remove all not required options
# mv .config.new .config
# make oldconfig to be on the save side...
# make -j5 build, mother*beep*, build :-)

Yes, it's a hack. No, it's certainly not perfect. But it might be exactly what you had been waiting for. I waited long enough to actually write it myself...

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

This way, the free software desktop is never going to make it.

In order to get easier access to Nokia things, and to boost security (as in, encrypt stuff, for a change), I've been reinstalling my trusted hp 6715b. Most nokians use ubuntu, so i went for 10.4LTS. I already severely disliked the way in which you have no installation options to chose from. You get the grandmother version every time, no "i have a clue, let me decide what i want to do, myself" button anywhere.

I was lucky, in 10.4 my now 3y old graphics card was still working out of the box. But, of course, i want to have my big virtual screen back. This, of course got dropped with randr 1.2 and the Virtual keyword was reused for something else. Matthias Hopf then re-added it in 1.3; mostly to appease me, and the handful of other weirdos out there. But, try finding this option in the xorg.conf manpage. Nothing! Try googling for it, and the first 50 hits either only explain the commandline version or the old style Virtual (which got broken). Apparently, you need to add 'Option "Panning" "${H}x${V}".

Easy, pico /etc/X11/xorg.. Damn. Nothing. head /var/log/Xorg.0.log says xorg.conf.d. Type man xorg.conf.d. Damn. Nothing: "No manual entry for xorg.conf.d" Suuuper. Apparently people are supposed to _know_ that this is part of the xorg.conf manpage.

So, create a new screen, device and monitor section in 01-screen in xorg.conf.d, and press ctrl-alt-backspace, like any experienced driver developer is used to. Damn. Nothing. Head into gnome preferences stuff, enable key combination. Try again. Drop into the console. Wait for the display manager to try again. And wait. And wait. Damn. Nothing again. Ok, the DM might have died, and i don't trust this new gnome stuff, so it might be better to reboot. So Ctrl-alt-del, which worked first time round. At least something one can depend on.

Next time i look back, ubuntu is showing its plymouth style loading, but the panel is gradually turning white. Something is not driving the panel and the driver died, for whatever reason. WTF? Try some key combinations to get a console. Damn, nothing! Pinging the box still worked, but of course, no sshd was installed. Attempting a reboot didn't bring anything either, it just runs into the exact same issue. Nothing is checking whether a previous boot got one to a working console or a working X.

So, insert the ubuntu installation cd, choose live system, mount the fs, chroot to it, apt-get install ssh, and less /var/log/Xorg.0.log to reveal:

> (==) Using config directory: "/etc/X11/xorg.conf.d"
> Parse error on line 3 of section Monitor in file /usr/lib/X11/xorg.conf.d/01-screen.conf
> The Option keyword requires 1 or 2 quoted strings to follow it.
> Parse error on line 3 of section Monitor in file /usr/lib/X11/xorg.conf.d/01-screen.conf
> "2560x1920" is not a valid keyword in this section.
> (EE) Problem parsing the config file
> (EE) Error parsing the config file
>
> Fatal server error:
> no screens found

I forgot to put apostrophes around "Panning", and i got greeted with a bleeding panel, with no option to easily get around it. What on earth are we thinking here?

This is Ubuntu LTS, with radeon, KMS, plymouth and xorg.conf.d. 5 nails in the free software desktops coffin.

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

A lot has happened since my last blogpost in June 2009.

A lot has happened since my last blogpost in June 2009.

Its 2011 and I have been working for more than a year on a new project called “Native OfficeOpenXML” (NOOXML). The story is quite simple: I was very disappointed with the quality of the support of the “docx” format in OpenOffice.org. Even more --- I'm very disappointed with the code quality and the design! of the OpenOffice.org Writer core and layout. There are people who believe this can be solved by “code refactoring” fixing “low-hanging-fruits”, “quick wins” and other magic silver-bullet-phrases. But one thing was for certain: There is no way to (re-)implement a core and a layout engine. Can't be done. Impossible. No way.

OpenOffice.org took the refactoring route. I took the rewrite route.

After one year here is where we are.

What has happened:
I started designing and implementing the NOOXML-core in Jan 2010. The magic is the datastructure which allows a compact representation of the documents and fast implementation of insert/deletion operations etc. I also wanted to be able to do real- time-collaboration, which influenced the design of the core a lot. In March 2010 I was able to load the ECMA Spec Part I (very big document) into the core. Not only on a desktop machine, but also on my “iPod” (not “iPad”!!).
Once I had the basic core design and implementation done I started working on the layout engine. The primary goal was to build a fast and reliable layout engine. In my implementation I focused on OfficeOpenXML fidelity. In August I had the basic layout features like text, headers, footers, tables, footnotes etc. done. I was able to render the ECMA Spec Part I (again: very big document; >5000 pages) to PDF. I then added section and multiple column support.
Yesterday I was able to render the ECMA Spec Part I document on the iPod (real device) AND in the Android emulator (since I don't have an Android device) and without a user interface:

(I know: I took a really long time. But there is sooooo much room for improvements. And hey: OOo can't even load it on a desktop-machine.)


And here is the UI-less port for Android 2.3:


Happy new year!