|
|
Subscribe / Log in / New account

Distributions

openSUSE Conference 2010: The future of LibreOffice

November 3, 2010

This article was contributed by Koen Vervloesem

The OpenOffice.org track at this year's openSUSE conference spontaneously changed to a LibreOffice track after the news of the OpenOffice.org fork. That shouldn't be a surprise: Novell's Michael Meeks was previously responsible for Go-oo, which will be obsoleted by LibreOffice. At the openSUSE conference, developers of the young fork presented the current state of LibreOffice and discussed the direction of development.

Some numbers

The LibreOffice track was opened by Florian Effenberger, a Founding Member of The Document Foundation who resigned from his position as the OpenOffice.org Marketing Project Lead two days after his talk. He emphasized that the 10th anniversary of OpenOffice.org was an important date for The Document Foundation: "We see LibreOffice not as a split but as an evolution and the next logical major step for the next decade." An important part of this is lowering the barrier for new contributors, e.g. by not requiring formal paperwork before contributing code, such as a copyright assignment.

Florian gave some numbers to put the young LibreOffice community in perspective. Currently, it has 15 full-time developers from Novell and Red Hat, and already 65 new code contributors (people that have never contributed a single line before to OpenOffice.org). The announce mailing list has 4,000 subscribers and the discussion lists 1,500. There are 51 world-wide mirrors that are distributing LibreOffice, and in the first week, the LibreOffice beta had already been downloaded more than 80,000 times.

Although most of the LibreOffice supporters seem to be linked to a Linux distribution, Florian was clear about the target platforms: "Most of the OpenOffice.org and LibreOffice downloads are for Windows: these are people migrating from Microsoft Office. So Windows support will not be dropped in LibreOffice." Moreover, he maintained that end users will very soon pick the fruits of the more open development model of LibreOffice: "Because Oracle limits the development of OpenOffice.org with their copyright assignment, we will get more code in and thus become better feature-wise soon." LibreOffice 3.3 will be available this fall, and it will be integrated into openSUSE soon.

Easy hacks

[Cédric Bosdonnat]

In his talk "LibreOffice Easy Hacks", Cédric Bosdonnat — who is a LibreOffice developer for Novell — gave some hints about how to find interesting parts of the LibreOffice code to hack on, and talked about some tricks and tools to help developers. His main goal was to tell people that coding on LibreOffice isn't impossible; there's a lot of simple stuff out there.

The Document Foundation's wiki even has a page with a list of these easy hacks, and some of them have already been completed. Many of these easy hacks are a form of code cleanup: translating German comments that have been there since the StarDivision days, removing code that is commented out, removing duplicated code, and so on. According to Cédric, the latter is a bad habit among OpenOffice.org developers at Sun/Oracle: many specialists are working on their own module and are not collaborating. As a consequence, OpenOffice.org has, for example, three different line-drawing implementations: one for Writer, one for a Calc cell or table, and one for an Impress table. "When I wanted to add dashed borders, I had to hack three places, so eventually I merged them,", Cédric concluded. The OpenOffice.org code base also has six classes for a string, and according to Cédric it should be reduced to just two (for Unicode vs. 8-bit encoding).

But the easy tasks are not only about code cleanup; Cédric also mentioned some more interesting hacks. For example, one could create an XML file fuzzer: a component that takes an existing, complex ODF document, swaps the contents randomly, and loads the result in LibreOffice to see if it crashes. The goal is to make LibreOffice more robust: prevent it from crashing on arbitrary ODF files. Another interesting hack would be to use the C library libxslt instead of the current Java libraries for XSLT (Extensible Stylesheet Language Transformations). And last but not least, intrepid collaborators could help improving the build system.

Cédric also listed some useful development tools. For quick searches in the LibreOffice git repositories, there's the OpenGrok source browser (for now still on the Go-oo.org domain), and there's also partial source code documentation generated by Doxygen. As for an IDE, Cédric warns about using one of the big ones:

There is no full-fledged integrated development environment that can handle that much code. This includes Eclipse, NetBeans, and KDevelop. Instead, I prefer using Emacs or Vim with a C/C++ configuration, supplemented with an index and search tool like ctags. For such a big code base, searching with grep isn't useful, and therefore we have also set up a make tags make target.

Of course, you can also start coding on LibreOffice when you encounter a crash that prevents you from using it ("scratch your own itch"). Then you have to use GDB, Valgrind, or your other favorite debugger and let the backtrace show the code. Cédric gave a tip for this situation: you don't need to build the complete LibreOffice suite with debug symbols for this. Just rebuild the specific module the crash is in with debug symbols. Another place to start your hacking adventures is the user interface: when you see where you'd want to add a feature, look for a user interface string in the same window, e.g. with OpenGrok. But whatever you do, Cédric emphasized that you should get in touch with the LibreOffice developer community when you start coding. Don't work alone, but communicate on the #libreoffice IRC channel on irc.freenode.net or on the LibreOffice mailing list, and find the right experts to assign any bugs to.

Building LibreOffice

Novell's Jan Holesovsky described in his session how to get the source code of LibreOffice, how to build it, and how to get your patches back to the developers. Most of this information can also be found in the Development section of the Document Foundation's wiki, e.g. the "How to build LibreOffice" page. An especially interesting tip that Jan gave was about distributed building. If you have more than one machine, you can install and configure icecream, a distributed build system created by SUSE developers. And with Kiwi-LTSP you can PXE boot computers to add them easily to your build farm.

Jan also talked briefly about improvements of the LibreOffice build process that are being worked on. In the near future, the build directory will be simplified and the translations (or at least the help texts) will be put into a separate build. In the far future, a split build will be made possible: there will be a separate build of the libraries and applications. For example, at the moment you have to build the whole of LibreOffice completely before you can work on a specific application, e.g. Calc. After that, you can just rebuild Calc each time you change it. But in the future, the initial complete build shouldn't be needed anymore.

Next steps

Novell's Thorsten Behrens brainstormed with his audience about what the next steps for LibreOffice's development should be. According to him, QA should definitely become a priority:

Historically the code base had not much unit tests, so if you changed something you needed to test it manually. Moreover, the only unit tests that are present are for base libraries. It's really important to have more unit tests, to feel sure that if you change something you don't break things.

Then he asked for some input from the audience, which resulted in a number of interesting ideas. One of the proposed ideas was to make a LibreOffice viewer, especially for mobile devices such as Android. This could fill a gap, because there don't seem to be that many ODF viewers for mobile devices. If it carried the LibreOffice brand, people would trust that the viewer supports ODF well. Better compatibility with Microsoft Office's file formats and a way to import clip art from Microsoft Office (if the license permits) were other proposals.

Another request was that bug reporting should be made simpler. One commenter complained that it takes approximately half an hour for every bug you file. You have to first search if the bug has already been reported by trying a couple of search strings, and then you have to click a lot of buttons with the risk that you choose the wrong options. Michael Meeks chimed in: he sees some value in a simple bug reporting work flow for users. For conversion errors, this could ask the user to take a screen shot of a file in Microsoft Office and the same file in LibreOffice, so that the developers can try to find out where the conversion went wrong. With such a simple work flow, instead of a daunting bug reporting tool with countless options, users may file many more bugs. A project like Officeshots might also be helpful for bug reporting.

A welcoming community

[Contributor graph]

Although the LibreOffice community has a daunting task, a lot of OpenOffice.org contributors have resigned and decided to spend their time instead on the new fork. To visualize this, Cédric Bosdonnat created a graph showing the contributors by week, using the gitdm tool created by Jonathan Corbet and Greg Kroah-Hartman. He also created a video of the first week of coding on LibreOffice, as visualized by Gource. It surely seems like a successful start for LibreOffice, but it remains to be seen whether the project can keep up that pace. One thing is clear, though, from the talks at the openSUSE conference: the LibreOffice community is very welcoming and does its best to lower the barriers for new contributors.

Comments (none posted)

Brief items

Distribution quotes of the week

Just because we're a community of volunteers doesn't mean we don't have to treat each other professionally. If people spoke to their co-workers the same way they sometimes speak to each other on Fedora lists, there would be consequences, and justifiably so. I've always thought that Fedora's "code of conduct" could be as simple as "don't be a jerk", but I support the mandate of the soon-to-be-formed CWG [Community Working Group] to decide otherwise.
-- Max Spevak

I have now been doing Fedora Release Engineering for nearly 5 years. My first task was to rebuild every Fedora Core package for a gcc change leading up to the release of Fedora Core 5 (hey look, a --turbo option!). I've seen us through 10 releases, the merger of Core and Extras, countless mass rebuilds, the creation of Live Media and the explosion of spins, an unfortunate security incident, many evolutionary changes in our development process, the creation and growth of a release engineering volunteer team, the creation of release criteria, the migration of source control, and the creation of a plethora of Standard Operating Procedures for release engineering. It has been a challenging and very rewarding 5 years. But I need a break.
-- Jesse Keating resigns

Comments (none posted)

Announcing the release of Fedora 14

Fedora 14 has been released along with several official spins (KDE, XFCE, LXDE, SoaS, Security, ...) Some of the new features in this release include libjpeg-turbo, Spice, the D programming language, Python 2.7, and much more.

Full Story (comments: 8)

MeeGo 1.1 released

The MeeGo 1.1 release is available; the netbook, "in-vehicle infotainment," and handset versions have all been updated. "The 1.1 Core OS provides a complete set of enabling technologies for mobile computing. The MeeGo stack contains Linux Kernel 2.6.35, X.org server 1.9.0, Web Runtime, Qt 4.7, and Qt Mobility 1.0.2, supporting the contacts, location, messaging, multimedia, and sensor and service frameworks. It also includes a number of leading edge components, such as the oFono telephony stack, the ConnMan connection manager, the Tracker data indexer, the Telepathy real-time communications framework, the Buteo sync framework, and many more."

Comments (44 posted)

OpenBSD 4.8 released

OpenBSD 4.8 has been released. The announcement (click below) contains lengthy list of new features and improvements in this release. The announcement also looks at the new features and bug fixes in OpenSSH 5.5 5.6, which is included in this release.

Full Story (comments: 3)

DragonFly BSD 2.8

The DragonFly team has announced the release of DragonFly 2.8. This release features a working X environment, a Packet Filter update, a port of FreeBSD's WiFi stack, and better multprocessor performance.

Comments (none posted)

Debian Installer 6.0 Beta1 release

The Debian Installer team has announced the first beta release of the installer for Debian GNU/Linux Squeeze. "This release is dedicated to Frans Pop, who worked as Debian Installer Release Manager for several years. Even after he stepped out from this responsibility in 2007, Frans continued to be heavily involved in several aspects of D-I until he passed away."

Full Story (comments: none)

Distribution News

Debian GNU/Linux

Debian sprint program

Debian Project Leader Stefano Zacchiroli has been working toward having more sprints. "The main principles of the program are that: (1) sprints are good to both get work done and strengthen our community; and (2) there are responsibilities of transparency towards the rest of the Project, so we need to communicate before, during, and after a sprint about what is happening."

Full Story (comments: none)

Fedora

ATrpms for Fedora 14; upcoming EOL for Fedora 12

ATrpms is a 3rd party general purpose package repository for Fedora. Packages for Fedora 14 are now available with repositories for "stable", "testing" and "bleeding". The Fedora Project will end support for Fedora 12 in about a month and ATrmps will also end their support for Fedora 12 at the same time.

Full Story (comments: none)

Cooperative Bug Isolation for Fedora 14

The Cooperative Bug Isolation Project (CBI) is an ongoing research effort to find and fix bugs in the real world, by distributing specially modified versions of popular open source software packages that monitor their own behavior. CBI is now available for Fedora 14.

Full Story (comments: none)

Fedora to (try to) remove setuid files for F15

The report from the October 26 FESCO meeting (click below for the whole thing) includes the news that the remove setuid feature has been approved for the Fedora 15 release. "File Capabilties have been present in the Operating System for a few releases now, it is time that we remove setuid applications and just assign the capabilities required by an application. This should make the applications and the Operating System more secure." Implementing this should be an interesting challenge.

Full Story (comments: 17)

Looking for help with Fedora Elections

The Fedora project is looking for people to help out with the elections that are coming up later this month. "Helping out with this elections process is a great opportunity to get started as a free software contributor, especially if you're unable or prefer not to write code."

Full Story (comments: none)

Fedora 15 Release Name

The release name for Fedora 15 has been selected. It is Lovelock.

Full Story (comments: none)

SUSE Linux and openSUSE

openSUSE Conference big success

Jos Poortvliet reports on the success of this year's openSUSE Conference. ""Collaboration Across Borders" - Under this moto the openSUSE Community received in Nuremberg several hundreds of Free Software enthusiasts and contributors. Giving a strong statement to it's moto, the openSUSE Conference received ambassadors from the Fedora Project and Debian Project as well as people from Mandriva/Mageia, Slackware, Skolelinux and many other distributions. Moreover, many downstream projects presented their work, seeking cooperation with the openSUSE community."

Comments (none posted)

openSUSE Conference results overview

Andreas Jaeger presents an overview of the recent openSUSE Conference. Links to additional resources are included for the tracks and the overall conference results.

Full Story (comments: none)

Ubuntu family

A short summary of UDS-N

Allison Randal wraps up the recent Ubuntu Developer Summit for the Natty Narwhal release. "We had a productive and fun week at UDS-N! Thanks to all who participated on-site and remotely, or contributed ideas in advance on the list. To help navigate the information overload, here are some important highlights from the summit".

Full Story (comments: none)

Live from UDS (Linux.com)

Gerry Carr, head of platform marketing at Canonical, has been blogging live from UDS (Ubuntu Developer Summit) at Linux.com. Here's Day 1, Day 2, Day 3, Day 4, and Day 5.

Comments (none posted)

Minutes from the Ubuntu Technical Board meeting, 2010-11-02

Click below for the minutes from the November 2 meeting of the Technical Board. Topics include Dynamic "per package upload permissions" for Debian Developers and a micro release exception request for Chromium.

Full Story (comments: none)

New Distributions

MintPPC

MintPPC is a Linux distribution for 32-bit PowerPC computers. It is based on Linux Mint LXDE, ported to Debian/PPC. The idea behind MintPPC is to have a fast good looking lightweight desktop manager, which runs well on older G3 and G4 machines. It aims to be easy to use and complete. MintPPC is not affiliated with Linux Mint but it uses the same underlying source code. MintPPC was first released as Linux Mint LXDE Debian Lenny in May 2010. MintPPC 9, based on Linux Mint LXDE 9 (Isadora) and Debian Squeeze is now available.

Full Story (comments: none)

Newsletters and articles of interest

Distribution newsletters

Comments (none posted)

Fedora 14 Dives Deeply into Memory Debugging

Red Hat News continues its series on Fedora 14 with this article looking at some of the developer tools in this release. "Another innovation anticipated in Fedora 14 builds on the Python scriptability Red Hat engineers contributed to GDB. This capability allows developers to create new and richer functionality for this powerful debugger. The new GDB "heap" command, for instance, helps a developer dive down into the memory that is allocated for use by a program."

Comments (none posted)

Fedora 14 Has Its Head in the Cloud

Red Hat News takes a look at the availability of Fedora 14 for use with Amazon EC2. ""Offering Fedora on Amazon EC2 is a way to to deploy Fedora on a wider scale. Anyone will be able to have multiple Fedora virtual machines at his or her fingertips quickly," said Garrett Holmstrom, a Fedora Cloud SIG community member. "On the opposite end of the spectrum, this will give faster and easier access to a dedicated Fedora instance that is accessible from anywhere in the world. People without persistent Internet access will be able to host their web sites using Fedora. Anyone will be able to try out Fedora from a server perspective without needing to install, boot, or even download it themselves.""

Comments (none posted)

Page editor: Rebecca Sobol
Next page: Development>>


Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds