News and Editorials
April 23, 2008
This article was contributed by Diego Pettenò
[Editor's note: This article, which looks at the interactions of software
projects and distribution providers, is presented in three parts.
Part 1 introduces the issues downstream
distributions have with upstream software providers.
Part 2 covers the technical needs of the
distributions.]
Philosophical requests
The philosophical side of packaging is mostly of concern to the users,
although the global goals of the distribution will have some philosophical
issues as well. In this section I'll try to cover the most common requests
of the downstream distributions to the various upstream providers.
Technical requests can usually be taken care of with compromises and
options at build-time, so a solution will usually be found in time.
Philosophical needs, on the other hand, often put distributions and
original developers on two opposite positions, and cannot be fixed unless
one of the two accepts the position of the other.
While technical needs are usually shared between distributions,
different distributions have different goals, and in turn different
philosophical needs, and this adds to the problem. A project wanting
to accommodate the requests from a distribution might make life more
difficult for another, that has different philosophical issues.
User expectations
Users of a distribution usually expect a
certain behaviour from the software they install. For graphical
applications, they also might expect a certain graphical aspect so
that all the applications
blend in together. These problems may be
easier to solve as non-technical concerns go, as they usually require
providing more choices.
One common example comes with fonts in graphical environments: most
distributions these days ship with all the graphical applications set to
use the same font family. This is done to follow the style rule of
using as few different fonts in a single view as possible (you don't
usually see a book using ten or twelve different fonts in the
text). So one common request is for software to provide a way to
change the default font without user intervention (which otherwise
often involves changing the source code).
This still seems to be a technical issue; for example, using TrueType fonts
requires the use of some sophisticated libraries for font rendering. Some
projects don't want to complicate their code with them. Similarly, some
distributions like to provide anti-aliasing for the default fonts, but some
projects dislike the whole idea of using anti-aliased fonts.
A similar issue might arise with GUI toolkits. Distributions tend to
provide the same graphical aspect for the software they install, this
usually means that both GTK+ and Qt are set to a similar, if not
identical, themes. So one other thing distributions might like is for
graphical software to rely on a theme-capable toolkit. Themes and
skin, though, are often disliked by minor projects, which might also
not be using GTK+ or Qt toolkits, as they tend to make the code more
complex and slow.
Users expect to be able to set their language preference and to have all
applications use that language. Unfortunately adding support for
translations is a far from trivial task, and adds complexity to the
software, which is something that especially smaller software projects try
to avoid. Similar complexity stems also from supporting text
encoding like UTF-8, which - for certain distributions like Fedora -
is a prerequisite for the software to be added to their repository.
It's easy to see that user requests are often pretty complex and hard
to implement on many existing projects. The best way to make a
project more appealing for distributions is to start from the
beginning with these points in mind.
Distribution philosophical policies
There are also
distribution policies regarding issues that are simply
philosophical. In this category you can find the requests of distributions
for removing code that deals with non-free formats, like most multimedia
formats. All these issues are usually centered around licensing, copyright
and patent-encumbered formats or algorithms:
- Multimedia formats, video, audio or picture formats
are often considered patent-encumbered (sometimes with the exception of
Xiph formats like Ogg, Vorbis and Theora). Most distributions would like
support for these to always be optional, for this reason. This
might actually start to be a problem for multimedia applications as their
main goal is just to provide support for these patent-encumbered formats.
- Usage of GPL-incompatible libraries by GPL
applications, and other forms of licenses mixing is a quite big issue for
almost all binary distributions. Some distributions will not be able to
legally redistribute packages with licensing issues. This is why
distributions often push for optional support for GnuTLS as a replacement
for OpenSSL, or build packages without SSL support by default. (In
addition to license problems, SSL support is also encumbered with special
cryptography legislation, which makes its handling even more a
problem).
- In both multimedia and cryptography there is the problem of
patent-encumbered algorithms. Even when the format
itself is not encumbered, the algorithm used to generate the result might
be. Distributions want a way to opt-out some of the support in the
software.
- Support for network analysis tools can also be a
problem. While the boundary between analysis and
cracking can be quite thin, laws like the ones enacted in
Germany start making it difficult for distributions to carry tools
that are even well inside the definition of network analysis rather
than network cracking.
For some distributions, there are extra policies that depend on the
license used by the project itself. For instance if they disallow
changes to the source (verbatim copy only) they might disallow the
distribution from taking the proper steps to fix technical issues.
Each distribution has its philosophical goals, such as a focus on Free
Software or a focus on corporate users. These goals will influence the
distribution's view of philosophical issues. Companies tend to take a more
defensive look at these issues than community projects. European projects
tend to be more lax when it comes to software patent problems, and other
countries don't enforce copyright laws. These are the types of factors
that will affect a distribution's philosophical goals.
Conclusions
The issues described in this section can also
conflict directly with the goals of the upstream project (and they often
do), in which case the project is very unlikely to be packaged officially
by at least some distributions.
This is why I categorized these issues under the philosophical
name rather than technical. It's actually fairly common that
issues of this kind sprout debates inside and outside projects and
distributions, as developers and maintainers have very different
feelings about them.
One example is a software package in which the team is composed entirely by
native English speakers. Such a project has a fair chance to start without
considering that some users might expect the user interface to be available
in any other language. While this might sound a bit harsh, it's
often true.
It is nearly impossible for a project to satisfy these issues
altogether for every possible distribution. And it becomes even harder
when the project itself focuses on keeping the code as simple as
possible, even when that means ignoring features and optimizations
that require adding complexity.
For this reason, the issues listed here have to be taken as suggestions,
rather than requirements, depending on the original goals for the
project. If the project wants to be widely accepted though, it will need to
provide a good mitigation method for these issues.
Afterword
In addition to these issues, that relate directly with the source and
the software, there are some extra suggestions that can be given to
make the whole project friendlier to distributors, entailing process
and workflow changes.
Making it visible in the source code who and where to send patches and
suggestions is certainly a nice initial step. When preparing a patch
for software that misbehaves, it's usually simpler to read the
documentation shipped with the software. Distribution developers are less
likely to open a browser to check the homepage of the software, looking for
the address to use. This also means that you should always make sure to
update your address referenced in the software documentation. If you change
your email address, and the old one is no longer reachable, it is a good
idea to re-roll the tarball even if no code changes are present (in these
cases, adding a suffix to the tarball is better than changing the version).
Even better, having a public way to track patches is often useful:
distributions can easily see if someone else fixed that issue before, and
how. It might save a downstream maintainer some work, and it helps having a
solution that works for more than one person at a time.
Acknowledging the patches, and pointing out what is not going to work,
is something that helps reduce the frustration for maintainers, as
it allows them to better suit the coding style of the project each
time. Ignoring a patch entirely is not a good idea, as these patches are
rarely non-issues.
It's also important to notice that almost always the patches don't
concern optimizations. Most distributions are generally less concerned with
the performance of the software over the correctness as defined by their
own policies. Distributions would often prefer to reduce the speed of the
software if that makes it better follow their policy. This has also to be
understood and accepted, and at the best worked around by either improving
the optimization, allowing an option, or by making a trade off.
Having a public repository for the source is often helpful, but often not
in major ways. While it makes it easier for the downstream maintainers to
check the progress of the code, it might not be trivial to identify where
the correct source is. If the project uses branches it might well be that
the upstream developers have already moved away from the broken code by the
time a distribution tries to package it. If a repository is available,
regular tagging and branching is helpful, and makes it easier for a
maintainer to find what has actually changed between two or more versions.
Finally
This article cannot cover all the possible requests that a
distribution might have, and it does not even get close to all the possible
requests by all possible distributions. There are even more requests
relating to portability, for distributions that target particular
non-mainstream hardware (e.g. distributions targeting embedded device like
OpenWRT) or distributions for other (Free and non-Free) operating systems
(like Cygwin, Fink or FreeBSD ports). The remaining issues have to be coped
with on an incremental basis, with collaboration of the downstream
maintainers for that distribution.
Following these practices might make it easier for those people to contact
the upstream developers to work out a solution. They make the project
appear friendlier, just as well as saying Please let us know how we can
improve your users' experience with our software. They change the
mindset of a project so that it makes it less frustrating for packagers to
prepare it for distributions. Going against all these points not only makes
the job harder for the distributors, but might give the (wrong) idea that the
project is not open to accommodating distributions.
Comments (1 posted)
New Releases
A preview release of Fedora 9 is now available. "
For this Preview
release, we will be doing a staged offering. The first stage, available
now, will be via bittorrent. The second stage, which should be available
early next week, will be via our world wide mirroring system, and will
include jigdo." The final GOLD Fedora 9 release is expected on May
13th. Update: Direct download and jigdo download options are now available for Fedora 9 Preview. Please see
this page for details.
Full Story (comments: 34)
The first beta release for openSUSE 11.0 is out. "
There are many exciting enhancements and features in
the new release. Among these is the incredibly fast package management
(libzypp), KDE 3.5.9 and 4.0.3, GNOME 2.22.1, a beautiful new
installer, installable live CDs and much more."
Full Story (comments: none)
Concurrent has announced that it has released a new version of the RedHawk
Linux real-time operating system. RedHawk Linux 5.1 can be used in
time-critical applications in simulation and training, data acquisition,
imaging, financial services and process control. RedHawk guarantees that a
user-level application can respond to an external event in less than 30
microseconds.
Full Story (comments: none)
The April 21st entry in the Slackware-current changelog says: "
We
have now reached the Slackware 12.1 RC2 milestone. :-) We're beyond
updating packages or fixing minor cosmetic bugs at this point (actually, we
had hoped to be past that with RC1, but there were still items in need of
attention). What we have here now has proven to be stable for our testers,
so unless some real showstoppers are found we'll be releasing this as Slackware
12.1-final soon.". Click below for this snippet of the changelog,
or view the
complete
changelog.
Full Story (comments: 6)
The Ubuntu team has announced the Release Candidate for Ubuntu 8.04 LTS
(Long-Term Support) on desktop and server. The Ubuntu 8.04 LTS family of
variants, Kubuntu, Xubuntu, UbuntuStudio, and Mythbuntu, have also reached
RC status. The final release of Ubuntu 8.04 LTS is scheduled for 24 April
2008 and will be supported for three years on the desktop and five years on
the server.
Full Story (comments: none)
Ubuntu 8.04 LTS, the Hardy Heron, is scheduled for release on Thursday,
April 24, 2008. In anticipation, Canonical has issued a pair of press
releases for the
server and the
desktop editions.
"Ubuntu 8.04 Long Term Support (LTS) Server Edition adds new features to
enhance the performance, stability and security of this fully supported
general platform. The LTS release sees further expansion of the commercial
ecosystem of software, hardware and services vendors supporting Ubuntu
Server."
"Ubuntu 8.04 Long Term Support (LTS) provides a stable platform for
software and hardware vendors, developers and users. With three years of
support and maintenance on the desktop, 8.04 LTS is a great choice for
large-scale deployment. A substantial and growing ecosystem of free and
commercial software built for Ubuntu provides a rich set of choices for
desktop users. This is the eighth desktop release of Ubuntu. Ubuntu's
track record in delivering - on a precise schedule every six months - a
commercial operating system that is free, stable, secure and fully
supported, remains unique."
Comments (28 posted)
Vyatta has
announced
Vyatta Community Edition 4 (VC4), the latest release of its reliable,
commercially supported open-source network operating system. "
VC4
delivers significant scalability improvements and expanded application
support to its router/firewall/VPN feature set and achieves a 10X
price/performance advantage over proprietary network solutions."
Comments (none posted)
Distribution News
Debian GNU/Linux
Sam Hocevar, the current Debian Project Leader, has appointed Joerg Jaspert
as FTP-master and a full Debian Account Manager. Joerg is therefore
empowered to create and remove developer accounts according to the New
Maintainer procedure.
Full Story (comments: none)
Sam Hocevar has appointed Andreas Schuldei and Moritz Muehlenhoff to the
Debian marketing team. "
I like to think of the marketing team as a
non-technical equivalent to the technical committee, with a looser
organisation. Its goal is to improve Debian's visibility and attractiveness
amongst users and contributors, both actual and prospective."
Full Story (comments: none)
Steve McIntyre, the newly elected Debian Project Leader, shares some of his
plans for the coming year. "
The first thing I've promised to work on
is a review of all the core jobs in Debian. There are plainly places where
we can improve on how things are working, and my very first task is going
to be looking into those."
Full Story (comments: none)
Three Debian work meetings were held last year in Extremadura, Spain.
Click below for a summary of the meetings with Debian Edu, the QA, VoIP and
Zope teams and the Qt/KDE and i18n teams.
Full Story (comments: none)
Fedora
Fedora project leader Paul Frields has announced a change in the way the
Fedora board is elected; as of the upcoming election, five of the nine
seats will be elected by the community, while four will be appointed by Red
Hat. So Red Hat will no longer select a majority of the board. "
This is an issue I've been advocating
over the past couple of weeks, and I'm delighted to be able to make this
change following my first release as Fedora Project Leader. I look at
this as a significant step in the evolution of the Board and Fedora's
governance overall." It's worth noting that the Fedora leader (who
must still be a Red Hat employee) retains veto power over board decisions.
Full Story (comments: 8)
Click below for a recap of the April 15, 2008 meeting of the Fedora board,
which looks at spins, board succession, and Codeina.
Full Story (comments: none)
Rahul Sundaram takes a look at the Fedora 9 Xfce spin. "
One of the
major reasons I kept the package list small in Fedora 8 was to retain even
the x86_64 image under CD size. Since the default multi-lib policy has
changed in yum now to not install both 32-bit and 64-bit libs, I have added
more useful (hopefully) packages. The total size in x86 arch is 608 MB and
additional 20 MB or so for x86_64. I haven't tried it under PPC. Any
testing there would be very welcome."
Full Story (comments: 1)
The Fedora project has announced that the release
date for Fedora 9 will be delayed until May 13.
"
This slip is not intended to make room for more changes, it is only
intended to make room for fixing the things we already know about, and
allowing new things to be found, and evaluated as release blocking, and
fixed. There are also a fair number of bugs we think we've already
fixed, but need wider audience testing to be sure."
Full Story (comments: 12)
Ubuntu family
The Ubuntu SPARC architecture has moved. If you use this port you should
update your /etc/apt/sources.list file to get future updates. Click below
for more information.
Full Story (comments: none)
64 Studio Ltd. has announced that its Debian customization platform has
been extended to support Ubuntu sources. This means that the company can
now produce, maintain and support one-off distributions which retain
package compatibility with official Ubuntu releases. "
64 Studio
offers OEMs and system integrators an automated platform which takes the
labour out of distribution maintenance and back-porting. The company also
offers day to day developer and end user support for the custom
distributions it produces, including documentation services. Customer
applications and branding are integrated into both daily install image
builds and fully managed APT servers, allowing users to keep their systems
up to date easily. Builds can be optimised for 64-bit x86 CPUs, low energy
consumption 32-bit hardware, or legacy systems."
Full Story (comments: none)
New Distributions
Webconverger uses Debian Live
technology to provide a Web platform for kiosks, thin clients, or anywhere
else you want a secure, dedicated web browser. It runs from a live CD or
USB device. A hard drive install option will probably be available in the
future. The maxi version of Webconverger has good support for CJK
languages, such as Korean. Webconverger 3 beta with Firefox 3 beta is
available for
download.
Comments (none posted)
Distribution Newsletters
The Ubuntu Weekly Newsletter for April 19, 2008 covers Ubuntu 8.04 LTS
Release Candidate, Release Candidate Testing, Ubuntu Open Week, Abiword 2.6
needs testers, ShipIt 8.04 CD orders, Hardy Heron release parties, FISL
(5th International Free Software Forum) in Brazil, Ubuntu Desktop training,
Ubuntu ported to ARM, and much more.
Full Story (comments: none)
Pure:dyne is a community effort maintained by media artists for media
artists. This newsletter covers the 'pure:dyne for everyone' program, the
upcoming pure:dyne public events, pure:dyne code sprints in 2008, a new,
Debian based pure:dyne! Click below to find out more.
Full Story (comments: none)
This edition of the
openSUSE Weekly
News covers openSUSE Project Releases Major Update to openSUSE Build
Service, Counting down to 11.0 - Get your counter here!, LugRadio Live (so
far), Tips and Tricks: Colored shell, Stephan Kulow: openSUSE 11.0: Package
installation 743% faster for default patterns, and more.
Comments (none posted)
The
DistroWatch
Weekly for April 21, 2008 is out. "
It's that time of the year
when the fans of Ubuntu rejoice over another new release, while those
jealous of the project's growing success on the desktop would rather stay
away from the Internet. But Ubuntu is not the only option; although delayed
by two weeks, Fedora 9 will arrive in a blink of an eye, while openSUSE
11.0, one of the most technologically advanced distribution releases the
Linux world has ever seen, is also making huge strides towards the planned
release date in June. In other news, Red Hat and OpenSolaris take different
views of the alternative desktop, Mark Shuttleworth opens a discussion over
the future of Gobuntu and gNewSense, Mandriva introduces a new urpmi
feature for adding third-party repositories, and sidux announces the
release of sidux-seminarix, a Debian-based distribution for
schools. Finally, don't miss our feature story: a first look at Draco
GNU/Linux, an unusual distribution that combines Slackware's base system
and NetBSD's packages into a powerful desktop Linux solution."
Comments (none posted)
The first issue of Debian Project News (DPN) is out, with coverage of the new Debian Project Leader, an update on the release status, Debian participation in the Google Summer of Code, and much more. DPN is the successor to Debian Weekly News and will be a bi-weekly publication. Click below for the edition.
Full Story (comments: 3)
Distribution meetings
Registration is open for Ubuntu Live 2008. The conference is scheduled for
July 21 and 22, 2008, at the Oregon Convention Center in Portland, Oregon.
Canonical Ltd. and O'Reilly Media copresent this conference, which happens
concurrently with the O'Reilly Open Source Convention 2008 at the same
venue.
Full Story (comments: none)
Interviews
Gentoo council member Mike Frysinger talked to David Abbott of LinuxCrazy.
You can download the
podcast
or read the
transcript.
"
David Abbott: What is the most fun about being a Gentoo
developer? Mike Frysinger: As Gentoo users, we tend to learn a
lot. Even as a developer, you learn about how everything fits together and
how all the low layer pieces work. There really isn't any more magic
anymore. You really learn it all. And the other aspect is working with all
the other people. There are so many other Gentoo developers that are
smarter than I am. They are great to work with. It's so much fun."
Comments (none posted)
Distribution reviews
Red Devil
takes
Fedora 9 Preview for a test drive. "
I'VE spent a few of days in
the company of Fedora 9 Preview and my first impressions are very
favourable. Installed into an 8GB Virtualbox virtual machine, it's a
snappy release with a high degree of consistency and stability throughout.
A lot of the hard work has been done on background stuff - those items
mentioned in my 'Big Stuff' list below. But that's not to ignore the
importance of visual appeal, where Fedora 9 scores very highly too.
Anyway, here's my early impressions and a few screenshots to whet your
appetites."
Comments (none posted)
Jonathan Roberts
looks
forward to the final Fedora 9 release. "
One significant feature
that has appeared in this release that has come from active Fedora
developer Alexander Larsson is the improved file management abilities
provided by GVFS, allowing the queuing of file transfers and increased
resilience to failures. Also new in GNOME for Fedora 9 is integration of
support for the X RandR extension: this allows a user to do many things,
including drag and drop configuration of multi-head monitor set-ups. This
particular feature landed too late to make it upstream for the 2.22
release, but it will be included in the next up-stream release."
Comments (none posted)
Page editor: Rebecca Sobol
Next page: Development>>