January 21, 2009
This article was contributed by Derek Kite
When Nokia purchased
Trolltech in early 2008, it stated that the acquisition would "enable the acceleration
of their cross-platform software strategy for mobile devices and desktop
applications, and to develop its Internet services business." It is
not entirely clear what that means, but one
thing is
certain: Nokia is now a major player on the free desktop since it owns the
library upon which KDE is based. The free software community is not
unfamiliar with large, well-established firms taking an interest in and
contributing to an endeavor. But there is always the question: How well
would Nokia work with the community?
It was a pleasant surprise, then, when Nokia announced that the Qt library
will be released under the LGPL version 2.1. This is for the coming Qt 4.5
release that is due in March 2009, and applies across almost all its
products. The new license is
in addition to the existing commercial and GPL licenses.
Some history
Trolltech (now known as Qt Software) started marketing the Qt
cross-platform library in 1996, and made the X11 version available under a
free
use, code available license. It was later offered under the Q Public License
(QPL), which is an OSI approved
license. Later Linux versions were released under the GPL. If someone
desired to write a closed source binary application, they could purchase
developer licenses from Trolltech.
Shortly after the initial release of Qt, Matthias Ettrich proposed using
the library as a basis for the Kool
Desktop Environment, better known as KDE.
One can think of many examples of successful business ventures based on
free software, but they are usually in the server market. The desktop is
much more
challenging; against a well entrenched and rather rich competitor, we have
something not quite done, but free. What Trolltech managed to accomplish is
noteworthy. It had a library with a free license; the KDE developers
tested it, learned how to use it, and evangelized about it. Trolltech got a
large developer pool eager to use the product, and the irreplaceable hard
knocks feedback from KDE developers. Over the years many KDE developers got
jobs with Trolltech, or established consulting businesses selling services
based on Qt, cementing the good will further.
But that necessity of selling licenses caused friction. The desire of
Trolltech to own and control the code created a situation where outside
patches were rarely accepted. KDE has long maintained a patch set called
qt-copy, while they awaited the next version of Qt with the fixes written
by a Troll (Trolltech engineer). The trend in free software has been to
offer libraries under a license which allows closed source application
development but, with Qt, that required paying for a license.
Although KDE is a vigorous project with a large user and developer base,
the licensing and Trolltech's tight control over its library has relegated
KDE and Qt somewhat
to the margins within the free desktop stack. The rejection of the Qt due
to its license prompted the creation of GTK and Gnome as a free
alternative, and even elicited condemnation
from Richard Stallman. Happily the relationship has improved to the point
where both desktops are having a joint
developer conference.
Opening the repository to contribution
Along with the license change, Qt Software is proposing to open the
source repository to external contribution. The purpose is to make it easier for
external developers to contribute to Qt, while still maintaining the
quality and cross platform characteristics of the library.
Knut Yrvin, the Open Source Community Manager for Qt Software outlined
the proposed criteria for accepting external contributions. In order to be
accepted, the code would:
- follow Qt coding conventions
- be reviewed by another developer
- use a license compatible with Qt licenses
- follow Qt branch commit guidelines
- not add regressions except for new test cases
Qt Software will give full access to the internal unit tests that Qt
developers have been using. It has already switched to Git internally,
and is setting up Gitorious
for hosting Git repositories.
There is more to the task than just providing access, as Mr. Yrvin described:
Unit tests, Qt guidelines, Git and Gitorious are just tools. The
development process and workflow are important too. I label this as the
social side of the development process. When opening up we are also
making communication more transparent, increasing our effort with the
community code camps and developer gatherings.
Mr. Yrvin described how Nokia benefits from all this. He explained that
instead of having different code bases for the same application when
targeting different devices, Qt can improve the time to market, targeting
desktop, mobile and embedded platforms with a single code base. The
increased use, contributions, and feedback from projects across all the
platforms will ensure a high quality library. Nokia and all users of the
platform benefit.
George Makrydakis raised
some questions regarding the LGPL and C++ templates. Mr. Yrvin said that
the legal department is aware of this and are currently investigating the
template situation. They will come back with more details. He said that
Nokia wants to ensure that it will be easy for developers to adopt Qt. It's
worthwhile to note that gtkmm, the GTK C++ bindings, has the same
issue.
This is a significant step for Nokia. It has been very difficult to
attract developers to large commercial code releases. Nokia and Qt Software
seem aware of the difficulties, and with feedback from KDE developers are
attempting to avoid the pitfalls and make the process mutually
beneficial. Let's not
forget that Nokia makes phones, so it will be interesting to see how this
move will play out
in the briskly
competitive smart phone marketplace.
Comments (19 posted)
By Jonathan Corbet
January 21, 2009
The first two days at linux.conf.au are dedicated to "miniconfs," which
cover specific areas of interest. The 2009 event in Hobart, Tasmania
included a miniconf for mobile Linux; your editor attended a few talks
there. As might be expected, there is a lot going on with mobile Linux,
and a lot of interest.
Baglady
Nancy Mauro-Flude is a performance artist who has used mobile Linux as part
of a device intended as an artistic and political statement. The Baglady device
is a purse with a numeric keypad on the outside. Inside, it contains a
Linux-based system with wireless networking. A camera and microphone have
been discreetly placed on the strap.
When enabled, this device captures pictures and audio from its owner's
travels, then immediately uploads them to a remote server. It allows its
owner to capture the events around her, perhaps in situations where
recording devices are not appreciated or allowed. The immediate-upload
feature ensures that the data gets out, even if the device is discovered -
at least, in places where an open access point is available.
The subversive possibilities of such a device are clear; so are the
potential privacy problems. Nancy was clearly aware of those issues, but,
arguably, has not worked through them completely. Others will certainly
follow this particular artist's lead; expect to see more mobile devices
which record their immediate environments and put the results on a server
for all to see. It is going to be interesting.
Ubuntu Mobile
Canonical's David Mandala gave a well-attended talk on Ubuntu's efforts in
the mobile arena. Like other such projects, the Ubuntu Mobile
effort faces challenges beyond simply making the distribution run on mobile
systems. Mobile systems truly are different, and, as a result, a user's
expectations of the operating system are quite different. Small screens
are a problem; not all applications have been written to function well when
the amount of screen space is limited. Touchscreens complicate things
further; David issued a challenge to developers to find ways to allow more
space in menus so that fat-fingered users can use them on touchscreen-based
systems.
The Ubuntu Mobile effort is actually two related projects: Ubuntu MID (for
small, tablet-like devices) and the newer Ubuntu Netbook, aimed at larger
devices. The Ubuntu MID work is currently based on GNOME Mobile, though
David suggested that things could change at that level. In particular, he
said, the Qt license change has stirred things up a bit. There is a
selection of applications which are optimized for small screens. The
distribution as a whole is intended for original equipment manufacturers;
it is not expected that users of MID devices will be installing their own
distributions.
MID systems typically use a touchscreen as their primary input device.
Netbooks, instead, combine a larger screen with a real keyboard; that leads
to different requirements. The Ubuntu Netbook distribution uses the full
GNOME desktop - for those applications which behave well on an
800x600 display, at least. This distribution should be available in stable
form at
the end of the Jaunty development cycle.
David seemed to be having the most fun, though, with the new Ubuntu ARM
port. One does not normally think of the ARM processor when one ponders
netbook devices, but it seems that ARM is making a real effort to enable
products in that area. As part of that work, ARM is working with Ubuntu to
have a proper distribution ready. This effort seems to have gone pretty
well; at this point, the full Ubuntu distribution is available for ARM
systems. The biggest difficulty, it seems, is that ARM-based systems lack
proper video acceleration. Canonical is working around this issue, though,
and plans to support this port along with the others.
It seems that Canonical sees a bright future for the ARM port. While there
are a number of systems available for x86-based devices, there is no real
competition to Linux on the ARM processor. Windows does not run there.
Symbian does, but it is not a true desktop-based system. So, any ARM-based
netbook devices which appear on the market are sure to be running Linux.
Canonical is doing its best to ensure that they run Ubuntu in particular.
Poky Linux
An alternative for small systems is Poky
Linux, a system put together by Opened Hand prior to its recent
acquisition by Intel. Poky Linux is, in fact, two different things: it is
a system for building Linux-based platforms, and it is also the
distribution which is that system's output. Rob Bradford, in his
presentation, acknowledged that this naming practice may lead to some
confusion. Still, while Poky may suffer from some ambiguity, its
developers seem to make up for that with enthusiasm.
Poky Linux started as a fork of the Open Embedded platform. The
developers tossed in a bunch of tools which are useful on small devices:
the Clutter desktop work, GeoClue, the "Sato" user interface, the Pimlico personal information
management system, GStreamer, WebKit, etc. The result is a fully-featured
distribution which is well tuned to the small device environment.
Perhaps the highest-profile use of Poky Linux is in the Vernier Labquest device.
Rob discussed at length the build system that was created to allow the
creation of Poky Linux distributions. There are a lot of tools there which
make the task relatively easy, and which, as Rob pointed out, are well
suited to people who do not like to type very much. More information on
how that works can be found on the Poky
Linux site.
What the audience really wanted to know, though, was Intel's intentions for
Poky Linux, which it acquired with Opened Hand. Though Rob didn't say so
directly, the real answer appears to be that Intel doesn't have much
interest in Poky Linux and is not putting resources into its further
development. So, says Rob, while the infrastructure is still in place,
Poky Linux has become a community project. The future of this project, it
seems, is in the hands of those who use it and wish to see it continue.
Android
GeunSik Lim gave a talk outlining the internals of the Android system.
Much of that talk is not amenable to summarizing here, though there were
useful details which will help as your editor digs more deeply into that
system. One thing that jumped out, though, was this: Google decided to
create its own C library for this platform. The size of glibc was
part of the motivation for this work, but the real reason, it seems, is
that Google doesn't want to have GPL-licensed code running in user space.
They worried, perhaps, that glibc could go to GPLv3 in the future; that, of
course, would make it impossible to use in a locked-down device. So they
started with a BSD-licensed libc which was then tweaked extensively for
their needs. The resulting library (called "Bionic") has some big gaps (no
support for C++ exceptions, for example), but it evidently suits the
Android platform well.
In summary: mobile Linux is clearly one of the hot topics for this year.
There are a lot of people and projects working in this area, doing no end
of interesting things. It is going to be fun to see what our community
comes up with.
Comments (14 posted)
January 21, 2009
This article was contributed by Bruce Byfield
Free and open source software (FOSS) has produced several off-shoots,
including the Open Access
Movement for academic literature and the Free Hardware
Foundation. As the FOSS desktop matures, one of the most important
off-shoots is the free font movement. Designing free, general-purpose
typefaces and font tools, this loosely organized group of typographers is
starting to make graphic design on FOSS easier, and to give ordinary users
a more aesthetic desktop. The only catch is that you sometimes have to dig
to find the free typefaces and tools, and knowing how to use them
appropriately frequently requires expert knowledge about what to look for.
Free fonts have been released under a variety of licenses. As the Free
Software Foundation points out on its license
page, standard FOSS licenses like the GNU General Public License (GPL)
are not really designed for fonts. In particular, the fact that fonts are
embedded in a document means that the GPL is suitable only if the document
is also released under the GPL unless an exception
is added to the license.
Another problem is that many font designers do not want to see their work
bundled on a CD by a third party. To provide at least a token solution to
this concern, many free typographers now favour the SIL
Open Font License, a GPL-compatible license developed by SIL
International, a Christian academic organization concerned with literacy
and the preservation of minority languages.
Whatever their license, free fonts come in three different file formats:
Postscript (.pba, .pfm, .inf, and .atm), TrueType (.ttf), and OpenType
(.otf). TrueType is the most common, although OpenType is rapidly
gaining. All three work on GNU/Linux systems, although some programs might
not take full advantage of OpenType's features. Those still in development
may come in the format for FontForge (.sfd), the main
free software tool for designing fonts, and require you to load the raw
files into FontForge so that you can output them to one of the three main
file formats, a process roughly equivalent to compiling source code.
Where to get free fonts
Many major distributions include free fonts in their repositories, and
include them in basic installations. Ubuntu, in particular, is rich in free
fonts in order to supplement its multi-language support. However, as with
any software, distribution packages can sometimes be slow to include the
latest versions, or all the available free fonts.
Those who want the widest selection of free license fonts (as opposed to
fonts that are simply free for the download), can find them at:
-
Open
Font Library: A sister-site to the Creative Commons' Open Clip Art
Library, the Open Font Library is the largest single repository of free
fonts, with over 100 selections — a small number compared to
proprietary fonts, but a much larger number than even a few years ago. The
site includes users' reviews, tags, and ratings, as well as remixes of
various fonts.
-
SIL
Font Downloads: This is the main site for free fonts for language
support, especially for minority languages, but also for the full range of
western and eastern European languages, Cyrillic, Greek, and Hebrew. Some
of these typefaces are so obscure that only specialists will use them
regularly, but they include a number of general purpose fonts for
English and other western European Languages, such as Gentium, Charis SIL
and Doulos SIL.
-
Raph Levien's
fonts:A maintainer for GhostScript, Raph Levien also designs some
of the best free fonts for everyday use. Be warned, though, that these are
works in progress, and some are not be completely ready for use.
-
Linux
Libertine: Linux Libertine is designed as a free replacement for
the ubiquitous Times Roman. Its letters are designed to have the same
proportions as those of Time Roman, so that, when a recipient's machine
replaces Linux Libertine in a document with Times Roman, your document's
design does not suffer.
-
Liberation
fonts: A set of three fonts designed as free replacements for
Times Roman, Arial/Helvetica, and Courier — respectively the most
commonly used serif, sans serif, and monospace fonts
used on Windows.
-
DejaVu:
DejaVu is a version of the Bitstream
Vera family, one of the first free fonts. The main difference is that
it includes support for a greater number of international characters.
Installing free fonts
Once you download free fonts, the easiest way to install them in GNU/Linux
is with the font installer included in KDE's setup tool. Using KDE's font
installer, you can make selected fonts available to all users on the
system, or just the current one, as well as previewing all installed
fonts. The installer makes fonts available to the X Window System, not just
KDE, so you can use the fonts it installs regardless of your choice of
desktops.
If you do not have KDE installed, then you can use a font manager such as
Fonty Python
or FontMatrix. Both these applications
enable or disable fonts on the fly for your current account, and allow you
to group fonts in sets — for instance, the fonts you need for a
certain project — so that you do not clutter your system with
seldom-used fonts, and can enable or disable related fonts with a single
action. Of the two, FontMatrix has an edge because of its cleaner interface
and its ability to print out sample fonts for easy reference.
In programs like OpenOffice.org or LaTeX, you can install fonts only for
that program. However, so long as a program can read system fonts,
installing for a single program hardly seems worthwhile.
The use of free fonts
Whether free fonts are useful depends very much on your needs. If language
support is your priority, you have hundreds to choose from, with those from
SIL International being among the highest quality. Typically, the files for
such fonts are much larger than those for traditional fonts, because they
contain hundreds of additional Unicode characters — for example, SIL
Doulos checks in at one and a half megabytes, as opposed to about 50
kilobytes for all the files associated with a postscript font — but
on a recent hard drive, this increased size should not be much of a
problem.
If compatibility with the fonts on another operating system is your
concern, you have several choices, including Linux Libertine, the
Liberation fonts, and SIL Doulos. Of these choices, Linux Libertine is
probably the more aesthetically pleasing, although you may prefer SIL
Doulos if international character support is also a concern.
Other fonts are useful for a specific need. For instance, Deja Vu or Vera
Sans are not among the best-designed fonts, but their large size and wide
letters make them well-suited for online display because they are highly
readable and easy on the eyes.
However, if you want everyday fonts for documents, your choices are still
relatively limited compared to those you have when using proprietary
fonts. Many free font designers, like font designers in general, prefer to
design decorative fonts that have limited use, and are not suitable for
large blocks of text or, at best, anything more than a heading. If you
exclude the poorly designed fonts that have always accompanied the average
distribution, such as Nimbus or Lucida, at most you have maybe a couple of
dozen choices for everyday use, as opposed to the hundreds available in
proprietary fonts.
Of the workday choices that are available, the most aesthetically pleasing
text fonts include Goudy
Bookletter 1911 and Raph Levien's Century Catalog and LeBe, the incompleteness of the last one not
withstanding. Perhaps the strongest choice is Gentium,
an award-winner that, with its calligraphic influence, is among the most
beautiful fonts ever.
For heading fonts, choices are even scarcer, although you might use
Levien's LeBe
Titling. Levien's Museum Caps looks promising as well, although no
download is currently posted on his site. The available monospace fonts
are also hard to find, although you might look at OCR-A, NotCourier-sans
or Rursus
Compact Mono.
Until high quality free fonts for common uses become more numerous, the
FOSS desktop is unlikely to attract large numbers of designers. Still, the
free fonts that are available are a start, and an improvement over what was
available as recently as two years ago. As with the FOSS desktop itself,
the choices are only going to improve. But, for now, the choices are
limited and restricting for professional designers who would prefer to use
only free fonts. Before too many projects have passed, the average designer
will almost be forced into importing fonts from Windows, or else buying
proprietary typefaces from vendors such as Adobe, just to get some
variety.
Comments (39 posted)
Page editor: Jake Edge
Next page: Security>>