Sei sulla pagina 1di 104

COMMENT INTRO

General Contacts
General Enquiries
Fax
01625 855169
01625 855071
www.linux-magazine.co.uk
CURRENT ISSUES
THE QUIET
Subscriptions subs@linux-magazine.co.uk
Email Enquiries edit@linux-magazine.co.uk
Letters letters@linux-magazine.co.uk

Editor John Southern


jsouthern@linux-magazine.co.uk

REVOLUTION
CD Editor Richard Smedley
rsmedley@linux-magazine.co.uk

Contributors Alison Davis, Dean Wilson,


Colin Murphy, Alison Raouf,
Richard Smedley, Kim Hawtin,
Richard Ibbotson

International Editors Harald Milz


hmilz@linux-magazin.de
Hans-Georg Esser
hgesser@linux-user.de
Ulrich Wolf
uwolf@linux-magazin.de

International Contributors Fionn Behrens, Simon Budig,


Mirko Dölle, Thomas Drilling,
Thorsten Fischer, Bjorn
Ganslandt, Georg Greve, Frank
Haubenschild, Patricia Jung, Jan The world of Linux development often seems, various levels; slowly releasing code to the
Kleinert, Christian Perle,
Alexander Roehrl, Stefan from the outside at least, to be populated by open community and providing community
Schmiedl, Tim Schürman,
Stephanie Teufel, Marianne small, committed companies, who are access to mainframes for developers.
Wachholz, Carsten Zerbst
essentially doing their own thing. However, if IBM has now decided to attack the
Design Renate Ettenberger vero-design, you scratch beneath the surface just a little, financial markets with Linux. Venezuela’s
Tym Leckey
you’ll find that some major business interests Banco Mercantil with 375 branches is running
Production Bernadette Taylor,
Stefanie Huber are lending their support. SuSE on a s/390, replacing the previous 30 NT
Operations Manager Pam Shore Hewlett-Packard is working with Linux – server farm. So many divisions within these
Advertising 01625 855169
it’s busy spending a fair amount of money on multinationals and yet they do not shout
Carl Jackson Sales Manager Linux development. The current project of about their achievements. Why don’t they
cjackson@linux-magazine.co.uk
Linda Henry Account Manager assessing Linux on its Jornada handhelds and make their own distributions? They have the
lhenry@linux-magazine.co.uk
Verlagsbüro Ohm-Schmidt the release of the printer drivers demonstrates staff and resources to do so. They could easily
Osmund@Ohm-Schmidt.de
the multinational’s presence. promote it and with such power could soon
Publishing IBM on the other hand seems to be even be the dominant Linux distributor. Yet they
Publishing Director Robin Wilkinson
rwilkinson@linux-magazine.co.uk more proactive, but very quiet about its don’t. Maybe it is that they have don’t want
Subscriptions and back issues achievements. When earlier this year IBM to risk money. More probable is that they see
01625 850565
announced that it would spend $1 billion on Linux as a community and so are willing to
Annual Subscription Rate Linux, a lot of the industry said that it would support and submit code while making sure
(12 issues)
UK: £44.91. Europe (inc Eire) : not amount to much. Since then, IBM have they are not seen to take over. They benefit
£73.88 Rest the World: £85.52
Back issues (UK) £6.25 carried on as normal for a multinational. It with Linux support for their ranges while we
announced partnerships with RedHat, SuSE benefit form the code releases. It’s a
Distributors COMAG, Tavistock Road, West
Drayton, Middlesex and TurboLinux. Then all seemed to go quiet. nice world.
England UB7 7QE
Behind the scenes, IBM continues with its
Print R. Oldenbourg own path. Differing divisions from within
Linux Magazine is published monthly by Linux New Media UK support, or actively work on, Linux. Mandrake
Ltd, Europa House, Adlington Park, Macclesfield, Cheshire,
England, SK10 4NP. Company registered in England. is supported by the Via Voice team, Caldera by
Copyright and Trademarks (c) 2001 Linux New Media UK Ltd
the xSeries team. Even Debian is supported at John Southern, Editor

No material may be reproduced in any form whatsoever in whole


or in part without the written permission of the publishers. It is
assumed that all correspondence sent, for example, letters, e-mails,
faxes, photographs, articles, drawings, are supplied for publication
or license to third parties on a non-exclusive worldwide basis by
Linux New Media unless otherwise stated in writing.

ISSN 14715678

Linux is a trademark of Linus Torvalds

Linux New Media UK Ltd is a division of Linux New Media AG,


Munich, Germany

Disclaimer We pride ourselves on the origins of our magazine


Whilst every care has been taken in the content of the magazine, the
publishers cannot be held responsible for the accuracy of the
which come from the very start of the Linux
information contained within it or any consequences arising from the revolution. We have been involved with Linux
use of it. The use of the CD provided with the magazine or any
material providied on it is at your own risk. The CD is comprehensively
market for six years now through our sister European-based titles Linux Magazine (aimed at
checked for any viruses or errors before reproduction. professionals) and Linux User (for hobbyists), and through seminars, conferences and events.
By purchasing this magazine you are joining an information network that enjoys the benefit of
Technical Support
Readers can write in with technical queries which may be all the knowledge and technical expertise of all the major Linux professionals and enthusiasts. No
answered in the magazine in a future issue, however Linux other UK Linux magazine can offer that pedigree or such close links with the Linux Community.
Magazine is unable to directly provide technical help or support
services either written or verbal. We're not simply reporting on the Linux and open source movement - we're part of it.

12 · 2001 LINUX MAGAZINE 3


NEWS

SuSE provides all-round firewall protection


software firewall. The SuSE Linux Firewall on CD can
check, monitor, analyse and log ongoing data
transfer. Features of the SuSE Linux Firewall include
its ‘live system’, which enables the operating system
to be booted directly from a CD-ROM instead of
being installed on the hard disk, making it
impossible to manipulate the firewall software.
Meanwhile, the configuration files for the firewall –
such as the ipchains packet filter settings are held
on a write-protected configuration floppy.
Other features of the firewall on a CD solution
include syslog, postfix as mail relay, and SSH
support. The firewall can protect the network
against both external and internal tampering by
enabling administrators to define limits for various
divisions with the company. An http content filter
can recognise and, if required, block certain HTML
pages, while the proxy server, based on the open
source Squid package, speeds up the accessing of
Web pages by saving previously viewed pages and
reloading them on request.
The source code is provided together with the
firewall solution, enabling the solution to be tailored
to specific requirements. A second CD contains the
SuSE Linux has released its new Firewall on a CD, Firewall Administration System, a set of tools
offering companies linked to the Internet protection designed to simplify configuration and
for their data and IT infrastructure in a CD format administration of one or more firewalls.
which, SuSE believes, businesses will find easier to The package consists of two CD-ROMs, a 500-
install and maintain. page manual, and 30 days of installation support. It
Designed as an application level gateway, the is available from the manufacturer or from
SuSE Linux Firewall combines the security standards authorised SuSE Business Partners priced at
of a hardware solution with the flexibility of a £429.00 plus VAT. ■

Toshiba
chooses Hard Hat
Toshiba has chosen to use MontaVista’s Hard Hat
Lineo and ADS announce handy Linux in the development of embedded products
for the printer, set top box and digital
partnership television markets.
Toshiba and MontaVista have already begun
Embedded systems, real-time and high availability solutions provider Lineo is working together and will mark the launch of their
collaborating with RISC-based systems developer Applied Data Systems (ADS) to deliver partnership by porting MontaVista’s Hard Hat
a development platform for smart handheld devices. Linux to Toshiba’s TX39 and TX49 embedded
The Lineo Embedix Plus for SHDs platform has been developed for manufacturers processor families. Toshiba will also name Hard Hat
who require a solution to enable rapid production of SHDs, PDAs and other information Linux as one of the standard operating systems for
appliances. It offers an open standards platform based on Linux and Java and uses Lineo its TX39 and TX49 processors. Toshiba plans to
Embedix SDK to integrate SHD solutions including Insignia’s Jeode Java Virtual Machine release Hard Hat Linux-supported TX39 and TX49
technologies, Trolltech’s Qt/Embedded GUI and Opera Software’s Operal 5 for Linux processors from September 2001.
Web browser. Masafumi Watanabe, Deputy General
The ADS Graphics Client Plus system is the first hardware to run Embedix Plus for Manager, of Toshiba Corporation said, ”We are
SHDs. Addressing the needs of graphics intensive applications with onboard I/O working with MontaVista to provide more
requirements, Graphics Client Plus is based on the StrongARM SA1110 processor, with comprehensive support for our current and future
up to three serial ports, onboard Ethernet, CAN and IrDA, SCMCIA, USB slave, ‘smart’ customers, not only in Japan but throughout Asia
real-time I/O and integrated flat panel and touch screen support. ■ and the world.” ■

6 LINUX MAGAZINE 12 · 2001


NEWS

Virus-free
Data security software developer Kaspersky Labs
has released the latest version of its KasperskyT
Anti-Virus for UNIX/Linux operating system.
Registered users of Kaspersky Anti-Virus
Business Optimal and Corporate Suite can
install the latest version for
UNIX/Linux free of charge.
The new version adds
multithreaded
object-scanning
technology that
enables the
antivirus scanner Solaris in the Izodia loop
to simultaneously check Business to business e-commerce solution provider
any number of files, with sessions limited only by Izodia has added support for Sun Solaris 8TM to its
the server’s capabilities. The number of active InTrade 5 ecommerce software platform.
sessions can be defined in the start-up command InTrade 5, a unified application for business-to-
line or in the Kaspersky Anti-Virus configuration file. business e-commerce chain management, also
The new version also features support for OpenBSD supports Windows NT, Windows 2000, and UNIX.
2.8 and Solaris 8 operating systems, as well as for The Solaris release for InTrade 5 will also add
the exim email gateway for UNIX and Linux. support for Oracle 8iTM databases, and any
As a time saving benefit for administrators, the standards-based Web Server.
solution now enables remote control of the With more than 1,600 documented XML API
program for use with a Web interface using a calls, the system’s functions can be called by, and
secure HTTPS connection. Other modifications to exchange information with external applications.
the solution include faster email scanning speeds The InTrade 5 solution is designed to address the
and improvements to the antivirus monitor, which needs of businesses trading internationally and
can now intercept file operations and transfer provides them with support for multiple language,
objects in real time for scanning without the need currency, tax systems, date formatting and
for a buffer directory with delayed scanning. ■ international trade principles. ■

Berkeley squared
Sleepycat Software has announced that its operational twenty-four hours a day, seven days a
Berkeley DB version 3.3, together with its week, it’s possible to have brief periods of time
complete source code, is now available for when there’s no spare disk space available. It’s
download from the Sleepycat website. important for key system services, like the
Version 3.3 includes offers features for high database, to continue operating in those cases.
availability, along with performance Release 3.3 of Berkeley DB can survive these kinds
enhancements, and support for Lineo’s Embedix of failures. We’ve also added some new
embedded Linux operating system. Once performance enhancements, like support for
embedded in the application, Berkeley DB needs lower isolation levels and faster data retrieval, that
no separate database server or administration. our customers have asked for.”
Features include concurrency, transactions, Berkeley DB runs on most UNIX and Linux
disaster recovery, hot backup, and other systems, as well as Wind River’s VxWorks, QNX’s
critical services. RTOS, and Windows 95/98/NT/2000.
Michael Olson, vice president of marketing for
Sleepycat Software, said that new features of the
system were added in response to customer Info
requests. ”Our customers have been asking for http://www.sleepycat.com
high availability features for some time now. For
example, in complex systems that must be up and ■

12 · 2001 LINUX MAGAZINE 7


NEWS

Conversion by command Red Hat’s database


Command Prompt has announced the release of the latest version of its Linux-based
DocParse tool for professional technical authors who maintain a large amount of HTML
solution
based documentation. Red Hat has announced its new database solution,
DocParse can convert an HTML document into a valid DocBook XML/SGML which, says the company, fills a gap in the market
document. From the XML or SGML format users can convert the document to XHTML, between large, complex and resource-hungry
HTML, RTF(MS Word Format) or print-ready postscript. enterprise databases and smaller, more affordable
DocParse con handle the conversion of multiple documents, lists, and tables and databases that lack the sophistication needed for
entities. Currently the tool is only available for x86 Linux. However Command Prompt handling complex Web and
plans support for YellowDog Linux (PPC) and MacOS X in the near future. e-business applications.
Red Hat Database is an open source database
Info solution based on Postgre SQL 7.1 and optimised
http://www.commandprompt.com with Red Hat Linux 7.1. It supports a range of
programming languages, including C/C++, PHP,
■ Perl, Python, Tcl/Tk, Embedded SQL in C and
supports core SQL 92 support, ODBC and JDBC
APIs, as well as offering support for object
oriented features, such as large objects, structured
Cyco’s fresh focus types and user-defined abstract data types (ADT).
The solution is online-backup enabled and is
Recently downsized document management designed to deliver robust transaction support for
software developer Cyco Software has announced intensive computing environments and has
that the company is to focus on strengthening its advanced locking capabilities for maintaining the
position in the departmental and divisional integrity of the database over the course of
CAD/engineering market. updates and changes.
Cyco has decided to discontinue its direct
business activities in the enterprise EDM market.
However the company is to continue to work with Info
its channel partners and plans to extend its global www.redhat.com/databasesolution
distribution network. Martijn Janmaat, chief
executive of Cyco Software, said the strategy would ■
give the company the opportunity to capitalise on
its strengths and the growth potential in the generic
departmental and divisional CAD/engineering
market while at the same time building business
opportunities in specific market segments with
more specialised solutions.
Cyco plans to launch new versions of its
AutoManager WorkFlow and AutoManager
Meridian products later this year. ■

Caldera releases new OpenLinux workstation.


The Caldera OpenLinux Workstation 3.1 is released necessary tools to build, test and deploy business
concurrently with Caldera’s OpenLinux Server and applications in a secure, supported, and scalable
Open UNIX 8 products. The new version of the server setting while developing in an easy-to-use,
workstation is a self-hosted operating system built developer-friendly environment.”
on the Linux 2.4 kernel and aimed at developers The workstation incorporates Sun Microsystems
who want to build commercial, Open Source, or Java 2 Platform, Standard Edition J2SE Software
corporate applications for an open standard Development Kit version 1.3, StarOffice 5.2 and
environment, including the proposed Linux Forte for Java 2.0, and JBuilder 4 Foundation from
Standard Base (LSB), using Java, C and C++. Borland.
Drew Spencer, chief technology officer at
Caldera described the new Workstation product as
”an ideal environment for developing on Linux or Info
developing for Linux-compatible platforms such as http://www.caldera.com/products/workstation
Caldera’s Open UNIX 8”, adding, ”For the
development lifecycle, it provides developers the ■

8 LINUX MAGAZINE 12 · 2001


NEWS

A kind of magic
Linux customers looking for an Internet-based purchase requisition tracking, insurance policy
service desk solution may be interested in a new tracking, online employment application and
offering developed by Magic Solutions in software defect logging.
partnership with National Computer Chuck Clements, president of NCE,
Enterprises (NCE). commented, ”Now that Magic is running on both
The browser based Magic Total Service Desk Linux and UNIX, enterprises using these platforms
(TSD) solution is designed for rapid deployment will benefit from the improved business efficiency
and aimed at users running the Oracle database on and lowered costs that Magic provides. This is a
a Linux platform. great advantage to companies that were
Magic TSD features remote control capabilities previously unable to merge their solution desk
and enterprise-level support management with their platform.”
integrated with desktop, network and event
management tools. The solution’s functionality
covers business automation, purchasing and Info
customisation tools. The software is geared to www.magicsolutions.com
enabling users to manage their service desk from http://www.nai.com
any location while serving as a platform for the
development of such Web-based applications as ■

Family support
Business application development solution
provider Acucorp has announced that it is
providing support for Linux on IBM’s eServer z900
and S/390 on its Acucorp extend 5 solution.
The extend 5 family of solutions enables
software developers to convert their COBOL
applications for use by modern systems. extend 5
is available for a variety of platforms including
Windows 9x/NT/2000, AIX, Solaris, HP/UX,
DG/UX. Features include products and services for Service included
enabling Internet deployment, graphical COBOL
development, data access, distributed computing Caldera has released two new server products designed for enabling the deployment of
and increased programmer productivity. Linux applications on both the Linux and UNIX platforms.
The new Acucorp solution will enable Caldera OpenLinux Server and Caldera Open UNIX 8 are geared towards business
software developers to move their ACUCOBOL-GT needs ranging from those of the low-end server to the high-end data centre.
to Linux for eServer z900 and S/390 without the Open UNIX 8 is a deployment platform for industry standard Intel processor systems.
need for costly recompilation. Evolved from Caldera’s acquisition SCO UNIXware, it incorporates the Linux Kernel
Dr. Pamela Coker, chief executive of Acucorp Personality (LKP) technology, enabling users to run Linux applications and UNIX
said, ”Acucorp has been supporting Linux for applications simultaneously.
years, so there was no question that we would Aimed at users engaged in building Internet-enabled business solutions, OpenLinux
support Linux for z900 and S/390We know that server is based on the Linux 2.4 kernel has an integrated Linux operating system. The
our worldwide customers, including more than software comes with default configurations for secure Web, file and print and network
1,000 ISVs, as well as z900 and S/390 customers infrastructure servers. Management tools include the Webmin secure browser-based
requiring a robust COBOL solution for Linux, will management capability, Caldera’s Volution agent for simplified configuration and
find substantial value in combining the strength of management of Linux systems, and the Volution Online browser-based decision tool and
Acucorp’s proven technology with the Linux for update service for the deployment and analysis of software updates.
S/390 operating system. This unique combination Caldera chief executive Ransom Love said, ”Caldera’s release of these products
will provide customers with powerful Linux-based demonstrates our desire to lift the strengths of Linux and incorporate them with the
COBOL applications and data access solutions that many well-known strengths of UNIX. With Open UNIX 8 and OpenLinux Server, Caldera
are unparalleled in the industry today.” provides the best in UNIX and Linux deployment. The result is cost savings, stability and
an extremely scalable application environment.”
Info
http://www.acucorp.com/Services/evalform.html Info
http://www.caldera.com/

12 · 2001 LINUX MAGAZINE 9


NEWS

OpenOne delivers Scyld: the next


new mail server generation
OpenOne Corporation has Scyld Computing has released the latest version of
announced the new version of its its next generation cluster operating system
MailOne Internet standards-based software. Scyld Beowulf Professional Edition is a
enterprise email server for the Linux scalable solution designed to simplify cluster setup,
and UNIX operating systems. integration and administration. The new version
MailOne version 3.2 is now simplifies traditional Beowulf clusters by initiating
available and adds support for IMAP and administering operations performed on the
standard email clients to its existing linked cluster nodes through a single master node.
support for POP-based email clients The Single System Image (SSI) design makes the
such as Outlook Express, Internet cluster behave as if it were a single computer.
Explorer, Netscape Communicator and Donald Becker, Scyld chief technology officer,
Eudora, as well as Microsoft Exchange, said, ”Our mission at Scyld is to create software
TeamLinks, an X-Windows Motif and LessTif user that will bring cost effective, easily managed, high-
agents and command line interface. performance computing to the commercial
MailOne is a re-engineered version of Digital marketplace. The new features in this release add
Equipment Corporation’s MailWorks for UNIX, an significantly to our existing standard upon which
open messaging system, which exchanges high performance cluster applications have been
messages using a range of industry standard developed. This new release will further stimulate
messaging protocols including Sendmail and deployment of turn-key commercial applications”.
commercial SMTP/MIME message transports, as ■
well as the option to handle X.400 protocols.

Info
www.openone.com
RAD tool
■ Cape Clear Software has announced that the beta
version of its CapeStudio Web Services Rapid
Application Development (RAD) tool is now
available for download from its website.
The CapeStudio Web services development
environment works with Web Services platform
based on XML, SOAP, WSDL, and Universal
Description, Discovery and Integration (UDDI)
industry standards. It can be used to generate
code sutomatically for Java or Visual Basic from
RidgeRunning Texas support Web Services Description Language (WSDL) files,
which describe the interfaces to Web services. The
Embedded Linux software and tools developer RidgeRun has released its Board Support solution works with Cape Clear’s CapeConnect
Package (BSP) for the Texas Instruments TMS320DSC21 digital signal processor. Web Services platform to form Cape’s end-to-end
The new solution aims to speed up development cycles by enabling embedded design-to-deployment solution for Web services.
system developers to build an embedded product quickly, start writing applications John Maughan, CapeStudio product manager at
before hardware is available, access royalty-free Open Source code, and use DSPs Cape Clear Software commented, ”CapeStudio
without the need for expertise in DSP algorithm development. brings a new level of ease-of-use to Web Services,
RidgeRun DSC21 BSP offers a compiler, assembler, debugger, linker, Standard C automating much of the code generation and
library and utility programs for software development. In addition to providing the Open opening Web Services to a whole new range of
Source Linux Kernel optimised for the TI TMS320DSC21 processor, the BSP provides developers and business analysts. Web Services
drivers for system-on-chip peripherals including on-screen display, UART, compact flash have succeeded in delivering cross-platform
and USB. An Appliance Simulator enables developers to build, implement and test integration across the Internet, but unless the
products for hardware which may not be readily available, by enabling them to run their development and deployment of Web Services is
software on a simulation of the required hardware using the same cross-compile tools made widely accessible its success will be
as they would use on the real target. hampered – CapeStudio provides that access.”

Info Info
www.ridgerun.com http://www.capeclear.com

■ ■

10 LINUX MAGAZINE 12 · 2001


NEWS

SuSE and Heroix solution


key system issues and notifying the user in real time
of potential problem areas.
Frank Puranik, Global Technical Director for
Heroix said, ”The off-the-shelf nature of the
Heroix/SuSE integration will let users easily
implement a monitoring solution that will return
value in a very short period of time. We are very
excited about the Heroix/SuSE integration, and with
Linux being billed as the operating system of the
future it’s imperative that improving availability of
Systems management software developer Heroix critical systems on the Linux platform is an essential
has announced a new partnership relationship with part of this.”
SuSE Linux which will deliver a systems monitoring Dirk Hohndel, chief technology officer for SuSE
management solution for Linux servers. Linux AG, said that the integration of Heroix
Under the terms of the partnership, Heroix’s eQ Monitoring Management Solutions demonstrated
systems management software has been integrated the relevance of Linux for enterprise customers. He
into the new release of SuSE Linux 7.2 Professional. added, ”We are proud to make these
The software enables monitoring of system level comprehensive tools available to our customers and
information by carrying out tests on a number of support Heroix in its commitment to Linux.” ■

Interconnectivity New Perforce SCM now available


A coalition of high-tech industry leaders have Perforce Software has announced that version 2001.1 of its Software Configuration
formed a nonprofit corporation to support the Management (SCM) solution is now available.
future development and adoption of AMD’s Benefits of the new version include improved support for multiple platforms,
HyperTransport I/O Link specification. scalability, speed, usability and simpler cross-platform development as well as a choice of
The HyperTransport Technology Consortium, both pessimistic and optimistic locking models, FTP-based check-in/check-out for non-
consists of API NetWorks, Apple, Cisco Systems, Perforce users, and improved Python support.
NVIDIA, PMC-Sierra, Sun Microsystems, Additionally, the Perforce now supports WebGain’s Visual Cafe 4.2 and Perforce
and Transmeta. Windows GUI, p4win, can now be personalised by the user, so, for example a developer
HyperTransport interconnect technology is a could add personal menu items to interface with other tools and scripts, and customise
high-speed, high-performance, point-to-point link views of the Perforce database.
for integrated circuits, developed to deliver faster Christopher Seiwald, president and chief technology officer at Perforce Software,
communication speeds between chips in of high- said, ”This release has been built upon customer feedback and so we know that each
performance computer, networking and and every improvement is relevant to developers. Perforce 2001.1 does exactly what it
communications devices. With a bandwidth of should, providing an environment that allows fast effective development across multiple
12.8GB per second, HyperTransport is designed to platforms within teams of two to more than two thousand.”
work with bus standards such as Peripheral All Perforce users with a current support and maintenance contract are entitled to be
Component Interconnect (PCI), as well as upgraded to 2001.1 free of charge.
emerging technologies like InfiniBand and
10Gb Ethernet. Info
Gabriele Sartori, president of the http://www.perforce.com
HyperTransport Technology Consortium explained
that the consortium represented the commitment ■
of its members to develop industry-wide adoption
of HyperTransport technology, and to drive the
technology into the market. He added,
”HyperTransport technology is a popular new chip-
to-chip communications technology that is
endorsed by major industry players. It is designed
to provide a smooth transition from existing
technologies and to support the necessary
scalability and bandwidth for future
product innovations.” ■

12 · 2001 LINUX MAGAZINE 11


FEATURE RDIST

Remote Backups with Rsync and Rdist

SECURITY
MIRRORING PATRICIA JUNG

You don't have to use classic data back up methods.


If you're part of a local network or have an Internet
connection, you could use remote back up.

They're the stars of any large (http://freshmeat.net/projects/freerdist/), which can


computing centre – the robots at least show last-amended data. And not very
which equip the tape much will change in terms of functionality in future
drives of commercial data – which can certainly be an advantage.
storage facilities. While In the case of rsync
there's no shortage of (http://rsync.samba.org/rsync/) the authors are more
memory space there, smaller energetic. This program has the advantage that,
users are still faced with where files have changed, it only transfers the
probing the mass of data to be changes. rdist sends the complete file again. If you
backed up and actually want to keep the transfer volume as low as
creating copies. possible, this is a crucial criterion for
But there is another principle of decision-making.
these central data back up systems which you Otherwise it really depends on your individual
shouldn't shy away from. There may be a couple of taste. Neither has yet been the serious target of GUI
fat server computers directly attached to the programmers, so you will still have to get to grips
storage server. If workstations in the next room, at with the syntax, which takes some getting used to.
the other end of the campus or from the client Since we devoted a long article to rsync in
company in the city centre have to be backed up, Answer Girl (Linux Magazine issue 9, p. 84 ff), we
the back up data migrate via LAN, dial-up or will now cover the alternative product.
dedicated line into the storage system.
Remote distribution
Data vehicles
Before you can configure the data mirroring, it is
The key phrase here is remote backup, and worthwhile making sure that rdist is installed not
this can be done even when one has a only on the system with the data to be backed up,
small LAN or sufficient space on another computer but also on the destination system. The rdist client
on the Internet. The only requirement is that there is may not necessarily be installed, but the rdist
server software running on the backup computer daemon rdistd must, because this is called on when
which allows log ons from remote computers. it comes to data comparison.
Nowadays this will be a secure shell server If rdistd is not on the search path to the destination
(sshd). On some machines, you will also still find account, it is best to note down where it is.
Remote-Shell-Daemons rshd, but since this means On the computer with the data to be
the data is transferred unencrypted, this should only duplicated, you must take the rdist client by the
be considered in a well-secured LAN, in which all hand. In the first instance, this will only know the
users are trustworthy. Path to the secure shell client ssh and perhaps the
To mirror the data (where synchronous copies of name and path of its configuration file:
original data are made on separate media) there are
/tmp$ rdist -P 'which ssh' -f ~/distfile
two possible programs: rdist and rsync. The original
rdist is no longer being actively developed, but there If the rdistd cannot be found on the destination
are still projects such as freerdist system without precise path specification, there is

54 LINUX MAGAZINE 12 · 2001


RDIST FEATURE

still the option -p /path/to/backupcomputers/rdistd.


If there is a file named distfile or Distfile in the ensures that tmp directories, but also files such as
current directory, the -f option can also be left out: wtmp or chapter1.tmp are not backed up at the
same time. One can specify several patterns in
~$ rdist -P /usr/bin/ssh
round brackets, and regular expressions can be used
But this file is not to be sniffed at, since it contains to a certain degree. So
all the details on what, how and to where it is to be
except_pat ( \\.tgz\$ [Tt][mM][pP] );
duplicated. Several entries are possible here, so that
different copy rules can be specified for various ensures that all files ending in .tgz (\$ stands for the
directories. If you like, you can back up the data for end of the file name) and all files/directories with
your thesis on a uni account, while love letters tmp in any combination of upper and lower case
would be better backed up on the second computer letters are excluded from the backup. Since the dot
in the home LAN. is meant, not as a regular expression for any symbol,
Each entry begins with a name for the following but as a dot, there must be a \ in front, and as this,
rule and a colon. The former can be anything you too, is a special symbol, another backslash is placed
like, but can only be one word without a space. in front of that.
Then comes the specification of what is to be The command
copied. This can be directories or just individual files.
notify pjung@linux-magazine.co.uk;
If there are several specifications separated by
colons, everything must be enclosed in a pair of in turn ensures that pjung@linux-magazine.co.uk
round brackets. receives an e-mail, in which rdist reports on the
Next comes a stylised arrow, ->, pointing to the work performed.
address of the destination computer. If you have a Equipped with all these options, distfile then
different username on the other system, this is looks e.g. as in Listing 1. Comments are – as usual
written in front, as with an email address. In that in the shell – preceded by a #.
case, a @ separates user name and host name.
Thus, a distfile with the following content ... Doppelgängers
private: ( ~/.netscape/bookmarks.html \
Provided you leave the back up space in peace,
~/private \
everything is hunky-dory. Nevertheless, now and
~/letters ) -> trish@192.168.1.249
then you change one file or another and do not
thesis: /home/trish/thesis -> lillegroenn.trU want the back up to ruthlessly overwrite these
ish.de changes. To inspire in rdist a little consideration at
this point for files which are newer on the
... is saying that the directories ~/private and destination system than on the source computer,
~/letters together with the Netscape bookmarks the quick and easy option -o younger is added to
should land in the account of trish on the computer the rdist call up.
with the IP address 192.168.1.249, while the And a contrary approach is also possible: If you
directory /home/trish/thesis with all its sub- want to ruthlessly destroy everything on the back
directories, should be shovelled onto the computer up system which does not exist on the original
lillegroenn.trish.de. system, specify the option -o remove on the
command line.
Destination anywhere? Of course, that does not bring us to the furthest
limit of fine tuning. The rdist man page can become
What's missing now is the Where To on the your constant companion when planning a backup. ■
destination computers. This is specified with install:

install /mnt/backup;
ensures that the respective data lands under Listing 1: Example of an rdist distfile
/mnt/backup on the destination system. If there isn't private: ( ~/private ~/letters ) -> trish@192.168.1.249
one, rdist (to be precise, the rdistd called up by it on install /mnt/backup/private;
the destination computer) also makes this directory. except_pat tmp;
What matters here is the semicolon at the
command end. thesis: /home/trish/thesis -> lillegroenn.trish.de
install ~/backup;
There are a few commands such as install,
except_pat ( \\.tgz\$ [Tt][mM][pP] );
which modify the action of rdist; we shall pick out
notify pjung@linux-magazine.co.uk;
two more at this point, which are of general interest
with respect to backups: except_pat excludes files # Copy the Netscape bookmarks on the spot
and directories from the backup which corresponds bookmarks: ~/.netscape/bookmarks.html -> lillegroenn.trish.de
to the pattern specified. install ~/.netscape/bookmarks.html;
except_pat tmp;

12 · 2001 LINUX MAGAZINE 55


COVER FEATURE TEST DISTRIBUTIONS

Ten distributions in a lab test

APPLIED
ALCHEMY
PATRICIA JUNG, THOMAS DRILLING, ULRICH WOLF, MIRKO DÖLLE, JAN KLEINERT

Most Linux Magazine The candidates


readers will get SuSE Linux 7.2
http://www.suse.de/uk/
themselves a new Personal Edition
distribution about £29
Professional Edition
once a year. Now's a £49, Update £27
good time to do it as
Red Hat Linux 7.1
all the main http://www.redhat.com
distributions have just Deluxe Edition
£71
come out. Professional Edition
£177

Linux-Mandrake 8.0
http://www.linux-mandrake.com
Power Pack
£56
Pro Suite Edition
£136

Caldera Open Linux


http://www.caldera.com
Workstation 3.1
60/100 $US (without/with support)
Server 3.1
600/800 $US (without/with support)

Progeny Debian 1.0


http://www.progeny.com
£44

14 LINUX MAGAZINE 12 · 2001


TEST DISTRIBUTIONS COVER FEATURE

This is the right moment for a distribution test; on commercial development by the founder
the one hand the 2.4 kernel is still nice and fresh, of Debian, Ian Murdock.
but on the other hand, it has been hanging around The concept of the test follows
long enough to be suitable for productive systems. the idea that when choosing a
Also, Xfree86 4.0 and KDE 2.1 have made their suitable distribution, every user
names as standards. has different preferences.
In February SuSE had already presented its Linux Hence the test is broken down
7.1, based on kernel 2.4.0. But the reviews were into sections called
somewhat mixed (Linux Magazine Issue 9). Now the Installation, Hardware,
German developers have souped up version 7.2. Desktop Compatibility,
The competition is not sleeping. Red Hat Linux Server Compatibility,
7.1, Linux-Mandrake 8.0 and Caldera Open Linux Security and Support, and
have also just come out. The testers did a top-to-toe Documentation. This
examination of all four distributions for each makes it easier to find
Standard and Professional variant. The test field is your own personal
completed by the Debian-derivative Progeny, a requirements. ■

Waiting for Woody


While commercial distributors chuck a new product onto the market several times a year
(which has not always been perfected but may be equipped with all the latest features), the
Debian team takes a more relaxed approach to the matter. Until they are satisfied with a
version, it keeps the testing label.
Although Potato is constantly being updated with security patches, it contains neither a
2.4 kernel, nor XFree 4.0. There are unofficial packets available to adapt a Potato
installation to Kernel 2.4 at http://www.fs.tum.de/~bunk/kernel-24.html. Anyone who really
wants to keep their finger on the pulse must weigh up stability against newness and
upgrade to the successor test version, Woody. It is not yet known when Potato is to be
succeeded by Woody as a stable version. Commercial Debian distributors such as Progeny
therefore offer rebored releases of Version 2.2.
The Debian Project is not lying idle. For the recent LinuxTag meeting, Michael Bramer
produced a release squeezed onto one CD containing the Potato installation system, the
majority of the packets from Woody and also KDE and Gnome from the unstable version
Sid. Kernel 2.4 is also included as an option, as is XFree 4.0.3. Although it is not possible to
offer the range of software on one single CD, which Woody is missing when the current
binary packet size is of five CDs.

This should be a 1/2 page not a


third!

1/3
ad

12 · 2001 LINUX MAGAZINE 15


COVER FEATURE DISTRIBUTIONS ON TEST

INSTALLATION Linux has managed to score a good One collection of software intended for the mass
market is now no more complicated to put onto
few points against Windows disk than Windows 2000. But sometimes the devil is
recently because the installation in the detail.

programs of most distributions have


SuSE Linux 7.2 Professional
become markedly easier to use.
Opinion is divided about SuSE's YaST2. As an
installation tool it is now refined, easy to understand
and makes an excellent case for itself. But this does
not mean that it is beyond criticism. Due to the
ruthless sequential processing, installation takes a
very long time. This does guarantee that you can
always go back to the beginning before the actual
partitioning, but then the tool remembers some, but
not all, of the previously made settings, which leads
to some confusion.
Errors in the previous version have largely
disappeared, so the network configuration

Installation
- SuSE Linux 7.2 SuSE Linux 7.2 Red Hat Linux 7.1 Red Hat Linux 7.1
Personal Professional Deluxe Edition Professional Edition
Language English yes yes yes yes
Clarity very good very good usable usable
Automatic Partitioning yes, result relatively usable, yes, result relatively usable, yes / result relatively usable yes / result relatively usable
FAT32 resizing possible 1) FAT32 resizing possible 1) (see text) (see text)
Other FS offered FAT32 ReiserFS LVM, FAT32, ReiserFS,-LVM, FAT with restriction, FAT with restriction,
encryption possible encryption possible Soft-RAID with Ext2 Soft-RAID with Ext2
Number of standard 5/7 5/7 4 / 3 to 8 4 / 3 to 8
profiles / packet groups
Package manager organised hierarchically, organised hierarchically, organised hierarchically, organised hierarchically,
searchby packet name search by packet name search by packet name does search by packet name does
possible possible not work, only for CD 1+2 not work, only for CD 1+2
Hard disk capacity (MB) 1500 1500 1200 1200
Graphics card correctly yes, but 3D-acceleration yes, but 3D-acceleration yes yes
recognised cannot be activated cannot be activated
Large Monitor DB yes yes yes yes
Image Refresh optimal optimal optimal optimal
Image geometry optimal optimal optimal 2) optimal 2)
Boot manager installation automatic and manual, automatic and manual, Win fully automatic, can be fully automatic, can be
Win98 partition recognised 98 partition not recognised adapted to user-defined inst. adapted to user-defined inst.
Boot manager Lilo 21.6 Lilo 21.6 Lilo 21.4 Lilo 21.4
Dial-up Installation Modem, ISDN, ADSL Modem, ISDN, ADSL no no
Provider-DB yes yes no no
Mouse/wheel recognised yes / no yes / no yes / no yes / no
Printer database yes, printer autom. recognised, yes, printer autom. recognised, add-on only, then driver add-on only, then driver
test image printout test image printout DB in Linuxconf DB in Linuxconf
Navigation in wizard serial and forwards / serial and forwards / serial and forwards / serial and forwards /
backwards backwards backwards backwards
Overall impression Consistent, easy to Consistent, easy to Usable, but a few bugs Usable, but a few bugs
of installation understand, clearly described. understand, clearly and language confusion, and language confusion,
Apart from the LVM described. difficult to install additional difficult to install additional
configuration, exemplary. CDs. CDs. (DVD: see Text)
Assessment ++ ++ - -
1) Bug: With automatic partitioning an existing Windows partition must be reduced, although there are deletable partitions.

16 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

functions perfectly, unlike the SuSE-7.1 YaST2. unclear user help and error messages such as "The
The bugs which have not been removed entry is invalid. You must enter a value between 1M
included an insistence on wanting to reduce an and 0MB. e.g. 40M 1 G...".
existing Windows partition even when other
partitions have to be deleted to make space. Red Hat Linux 7.1
SuSE offers to encrypt file systems of any kind
whatsoever on installation. You then need a Installation of Red Hat 7.1 Deluxe and Professional
password for mounting. Logic volumes can also be edition are the same, because the first eight CDs of
defined at the time of installation. A Yast module both variants are identical. The installation program
for run-time configuration should soon be issued as has hardly changed at all compared to
an online update. earlier versions.
Gnome fans will not get their money's worth Automatic partitioning is somewhat misleading.
with a standard installation, but they will from the Contrary to the description "Automatic partitioning
extended packet selection. Missing the checkbox and DELETION OF DATA" only Linux partitions are
means you will have to install the individual packets removed – except in the case of server installation.
later in YaST2 manually. Only YaST1 offers easy But the help text on the left margin does explain
retro-installation of the Gnome group. this peculiarity.
Since version 2.4.1 Reiser-FS has had official
SuSE Linux 7.2 Personal entry to the Linux kernel – but this has not
prompted Red Hat to support this file system. In the
SuSE Linux in the reduced Personal version offers partition program Disk Druid one still has to settle
the same installation routine as its big sister. LVM for the Ext2 or DOS file system, although you can
can also be installed, but the target group of the make a software RAID system. LVM on the other
mass market product will be overtaxed by the hand is not offered by Red Hat.

Mandrake Linux 8.0 Mandrake Linux 8.0 Caldera Open Linux Caldera Open Linux Progeny Debian 1.0
Power Pack Pro Suite Workstation 3.1 Server 3.1
yes yes yes yes yes
good good good good usable
yes, result usable, FAT32 yes, result usable, FAT32 no no no
resizing possible resizing possible
no no ReiserFS ReiserFS no

no / yes no / yes 3 / yes 3 / yes 1 / yes

organised hierarchically, organised hierarchically, organised hierarchically organised hierarchically no


full text search possible full text search possible

650 650 1600 1600 800


yes yes yes yes yes:Voodoo3,
no: ATI Mach64
yes yes yes yes no
good good optimal optimal optimal
good good optimal optimal optimal
fully automatic, Win98 fully automatic, Win98 fully automatic, Win98 fully automatic, Win98 manual
partition recognised partition recognised partition recognised partition recognised
Lilo 21.7, Grub 0.5.96.1 Lilo 21.7, Grub 0.5.96.1 Grub Grub Grub 0.5.96.1
Modem, ISDN, ADSL Modem, ISDN, ADSL Modem Modem no
yes yes no no no
yes / no yes / no yes / yes yes / yes yes / no
yes yes yes yes yes

free free serial and forwards / serial and forwards / serial


backwards (restric.) backwards (restric.)
Installation easy, bug in Installation easy, bug in the Installation easy, a few Installation easy, a few Appears inconsistent and
the data communications data communications cosmetic faults cosmetic faults half-finished, graphics
installation installation card not recognised

++ ++ + + -
2) Bug: The selected resolution/colour depth cannot be tested. Instead the first setting appears.

12 · 2001 LINUX MAGAZINE 17


COVER FEATURE DISTRIBUTIONS ON TEST

DrakeX – the details of which have been


Defective DVD in Red Hat 7.1 Professional improved compared to the previous version – offers
A surprise awaits owners of the first DVD pressing of the Red Hat Linux 7.1 a choice between two classes of installation,
Professional. The XFree86 Basic packet XFree86-4.0.3-5.i386.rpm contains an Recommended and Expert. The Recommended
incorrect MD5 sum and can only be half installed. But the installation program variant lives up to its name. The context-sensitive
does not notice this. When you first start the system the X11 system will not run. help in the installer is also new. Both types of
There are substantial libraries and modules missing. installation use automatic hardware recognition as
Retro-installation of the packet from CD helps only to a limited extent. But this far as possible. New processors, such as Pentium 4,
means it was not possible for us to start a KDE session via the GDM – the Duron and Athlon, are directly supported.
interprocess communication by means of DCOP server fails. Red Hat promises to During the installation, the user always knows
exchange any faulty DVDs. where they're up to, because the work step which
has just been performed is displayed in the left
margin. You can also make items which have already
been processed pop up in the left menu frame, so
entries which have already been made are not lost.
Selection of software is easy to understand,
being grouped into Workstation, Server and
Graphical user interface. The pros will surely tend
towards the individual packet selection, which is
also on offer. The latter is somewhat time-
consuming and nerve-racking, but the
manufacturer has distributed the individual RPM
packets so neatly over the CDs that you hardly need
to qualify as a DJ.
In addition to KDE 2.1.1 and Gnome 1.4, you
can select from another nine desktops. To finish off,
X11 is configured. The current release XFree86 4.03
recognises a range of new graphics chips and
activates 3D acceleration.
Both of the current Linux Mandrakes are well-
suited to the desktop and for server application. Even
beginners will cope well with installation. But the
manuals did not blow the testers' socks off. In sum,
The installer screen for Mandrake Disk Druid has a slight tendency to this French distribution is certainly a match for SuSE.
Linux has three areas. Left, the
inconsistencies if you trouble it a second time It is highly doubtful whether the 30 days extra
worksteps and below, the current
help text. In the middle is the main during installation. When installing a network card support justifies the considerable additional cost of
selection workarea it is important to have a functioning connection to £80 for the ProSuite, when you consider that the
the Net and nameserver. Otherwise, if the IP address rest of the equipment is identical. MandrakeSoft is
is static, the computer name is not taken on and the planning to revise the manuals for the Pro version.
machine later logs on as localhost.localdomain.
The installation of the X-server demands Caldera Open Linux 3.1
particular attention. The recognition of graphics
workstation and server
card and monitor functioned very well in our test;
but not the setting of resolution and colour depth. Installation of the two new Open Linux variants, as
The installer suggests 1024x768 pixels for 16 bit. usual, runs smoothly and without any problems.
Anyone who alters the settings cannot rely on the Visually, next to nothing has changed by
test image. The X-server test is always done with the comparison with the already-dated previous version
standard settings, thus 1024x768 pixels at 16-bit 2.4. Orgies of CD
colour depth. changing are
something the
Linux-Mandrake 8.0 installer need not
fear. Both
Power Pack/Pro Suite Edition
versions install
Both Mandrake versions are identical (apart from the the basic
amount of support provided). The manufacturer system from
supplies six chock-full CDs, the content of which – at just one CD.
least in part – is to go onto the hard disk. This runs After that you
satisfyingly smoothly due to the nicely designed can log onto
graphical installation assistant DrakeX. The installation the system
requires, with graphical user interface at least without
64MByte RAM, 32MByte for text-based installation. rebooting.

18 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

The lack of a repartitioning option for an existing


MS Windows system makes it dated. Here, external
tools like Partition Magic or Fips have to be used. If
required, the new Caldera makes ReiserFS partitions,
from which it is also possible to boot, and configures
a SoftRAID system. There is, however, no LVM.
Considering the quantity of data, you should
completely install Open Linux. The variants Minimum,
Recommended and the individual selection of
packets are also available, though in the case of the
latter the curious categorisation of many packets may
give you a crashing headache. In the Open Linux
server for example news and FTP servers are placed in
the WWW category, but the nameserver BIND comes
under Server -> NFS/NIS -> DHCP.
The installer does not offer a search function for
such cleverly hidden RPMs. The Unattended
Installation Mode installation failed on all test
computers due to unsuitable hardware.
The warning from Caldera about problems in
testing the X-server configuration should be taken
seriously, or to be more precise, in returning to
installation mode after a successful test. In the case there are other problems. ReiserFS or encrypted The well thought out Caldera
installation program lets you choose
of a Voodoo3 graphics card the X-server managed Ext2 partitions, which have to be reformatted and
which type of install you require
to get so completely hung that only a reset and used, completely flummox the program. The
restarting the complete installation helped. Since partitioning dialog hangs.
the X configuration comes at an early stage, this is In the case of computers that manage it in the
something to get over. second part of the installation, you will also be
Caldera shines as a good team player in the shown configuration dialogs, which can be called
LAN. DHCP is no problem, and in the workstation up later from the Gnome control centre.
variant even CUPS is configured with the found Once nice feature of the X configuration dialog:
network printers. In ergonomic terms the when selecting a monitor you can make it simple
distribution is highly satisfactory. Clear help texts in and just enter the size in inches – unfortunately 17
the right-hand third of the screen accompany inches is the limit. To install KDE and other packets
the installation. from the second CD, you will definitely have to look
The actual click work is done at the beginning. in the manual. The KO criterion is that at no point in
The installer can then devote themselves to other the entire installation is there the option of
Progeny: Mail and printer are
tasks or enjoy the odd game of Solitaire, while the configuring a keyboard layout which varies from the configured in the installer or in the
installation routines slave away behind the scenes. American style. ■ Gnome control centre

Progeny Debian 1.0


Debian may be very popular for its excellent update
systems and its stability, but we're reluctant to talk
about the installation routine.
Progeny Debian, the commercial distribution of
the Debian founder Ian Murdock, made its debut on
the website claiming to be a distribution based on
Debian 2.2 with "simple graphical installation,
hardware recognition and improved configuration
and management tools". It has to be said that it
does not live up to this claim.
So an ATI-Mach64 graphics card was certainly
recognised by the first, graphical part of the
installation routine. Once this has installed and
booted the basic system, it runs round in circles.
Without a Mach64 server (the card is not supported
by the SVGA server), there is no getting past
this point.
Even if you overlook the fact that the graphical
installer for the basic installation is rudimentary,

12 · 2001 LINUX MAGAZINE 19


COVER FEATURE DISTRIBUTIONS ON TEST

DESKTOP
COMPATIBILITY
Success on the desktop depends on
the delivery of a well-crafted product.
Mandrake and SuSE lead the field –
but Caldera is catching up fast.

SuSE Linux 7.2 Professional


and Personal
No sooner has YaST2 matured than SuSE users, with
the SuSEWizard, get access to a new, at first fairly
poorly equipped and ergonomically unrefined, tool
whose growth and progress you will presumably be
able to observe through the next versions.
Essentially, at present, this can be used to turn the
SuSE configuration of KDE into a standard
KDE configuration.
The new SuSEWizard allows easy choice on how
to start the system. Also new is the euro symbol
support into diverse applications such as the
console, Netscape and Star Office from the key
combination AltGr (right Alt) +4.

Workstation suitability
SuSE Linux 7.2 SuSE Linux 7.2 Red Hat Linux 7.1 Red Hat Linux 7.1
Personal Professional Deluxe Edition Professional Edition
Integration of the Integration very good, but Integration very good, but unusable (1) unusable (1)
config-tools faulty in operation faulty in operation
X-Server Standard tool SaX2 SaX2 Xf86xfg, Xconfigurator Xf86xfg, Xconfigurator

Network configuration good good unusable (2) unusable (2)


Server services recognition not automatic no no no
Automount no Automount, no Automount, Automount: yes / icons: Automount: yes / icons:
icons present icons present yes (security loophole) (3) yes (security loophole) (3)
Logical Volume Manager on installation yes no no
Problem-free change Menus of KDE integrated KDE only yes yes
between Gnome/KDE into Gnome, but not vice versa

Menu/Desktop layout KDE: good, Gnome: usable KDE: good, Gnome: usable Gnome: poor (fonts too Gnome: poor (fonts too
small) / KDE: good small) / KDE: good
Language support (system) usable usable poor poor
Antialiasing (X11) no no no no
Antialiasing (KDE) yes yes no no
Euro symbol support Console, Xterm, KDE, Terminal and Office no no
SOffice, Netscape
Sound Alsa and OSS Alsa and OSS neither RPM package neither RPM package
alsa nor oss found alsa nor oss found
Assessment + + - -

22 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

Because of the excellent selection of software Red Hat 7.1


and tidied-up KDE configuration, SuSE Linux is an
ideal candidate as a desktop distribution. When Red Hat 7.1 is implemented on workstations,
Unfortunately the menu of an installed Gnome a few annoying problems are to be expected. To
desktop does not appear in the KDE menu; only adapt the installation and to set up Internet access,
individual applications can be found. printer and a lot more besides, Red Hat attaches
Perfect example of a workstation: Apart from crucial importance to linuxconf - but installs it
sshd no Internet servers whatsoever run after neither in the workstation nor the server
the installation. installation, although the icons are in the control

The standard SuSE


desktop running KDE 2-1.2

Mandrake Linux 8.0 Mandrake Linux 8.0 Caldera Open Linux Caldera Open Linux Progeny Debian 1.0
Power Pack Pro Suite Workstation 3.1 Server 3.1
complete for workstation, complete for workstation, useful for initial useful for initial incomplete
network separate network separate configuration configuration
Hard Drake Hard Drake Kxconfig Kxconfig Configlet for Gnome
Control Center
usable usable good good usable for a network card
yes / yes yes/yes very good very good with DHCP
yes, with icons yes, with icons yes, with icons yes, with icons yes, only on Gnome
desktop
yes yes no no no
yes yes KDE only not applicable Change possible, but no
integration of the Gnome
menus into the K menu
good good good good usable

good good good good poor


yes yes no no no
yes yes no no no
- - no no no

Alsa Alsa OSS OSS Alsa and OSS

++ ++ o o - +

12 · 2001 LINUX MAGAZINE 23


COVER FEATURE DISTRIBUTIONS ON TEST

[right]
SuSE running the Gnome 1.4 desktop

[below]
Red Hat screen colour correction is
easily handled in Gnome with lmlib

searching via rpmfind.net are the only things that


will help.

Mandrake 8.0 Power Pack


The individual configuration tools for system-
relevant settings have been combined into the
Mandrake Control Center. But this is not an all-
rounder – important network tools are lacking. It is
easy to use and intuitive for beginners and at many
points a wealth of English help texts is offered for
beginners and occasional users. Pros will prefer to
potter about on the terminal or call up the relevant
KDE or X tools direct.
For a major release, and in view of the newness
of individual components, Mandrake 8.0 displays
amazing stability, with only a few weaknesses in the
total configuration and detail co-ordination.
panel. The system is thus almost impossible to
administer; linuxconf must be installed by hand. Caldera Open Linux 3.1
After installation the fixed width font in the
Gnome favoured by Red Hat is set to Courier in Workstation and Server
eight-point font size and is therefore For KDE/Qt developers and also for many typical
almost unreadable. office tasks, Caldera is a good choice because of its
A later package installation – at least in the case packages. It’s a shame that for these very target
of the inventor of the Red Hat Package Manager groups they have left out easy-on-the-eye anti-
(RPM) – does not bring any credit, because the only aliasing of the fonts.
way to proceed is manually. The user even has to Nor should users be expected to configure a
find out for themselves which one of the ten CDs great deal of the system themselves. The system
contains the library libSDL_mixer.1.0.so, in order to management tools integrated in the KDE control
be able to install Tuxracer. centre certainly invite you to do so, but all too often
There are no file lists in the distribution. Because you stumble across nasty surprises. Just one
the search does not work in Gno-RPM, and K- example: On a PC with ATI-Mach64 card we
Package only forages for the package name changed the screen resolution, logged off and
through one CD at a time, grepping all the CDs or restarted the X server – unsuccessfully! By changing

24 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

the run level we got stuck in a closed loop. The themselves with Debian, Progeny Debian is ideally
cause was an empty string in the driver entry in the suited as a desktop computer. Since the Progeny CD
/etc/X11/XF86Config-4. The only way out was to images can be downloaded free at
edit the file manually. http://archive.progeny.com/progeny/iso/, one or
The normal user doesn’t stand a chance with two Debian users will definitely fall back on Progeny
problems like this. In network operation a for their new installations, because despite all the
dcopserver, which was not running prevented this inaccessibilities, the Progeny installer speeds up a
as NIS-user under KDE. But with Caldera, anyone Debian installation enormously. Those migrating
for whom the aged version numbers doesn’t matter, from Windows might find the distribution a rather
will get a comparatively cleanly configured Linux, frustrating first experience of Linux. Newbies would
despite the occasional problems. be better starting off with other products.
KDE lovers must be easily satisfied. In the K-
Caldera Open Linux 3.1: menu there are no entries for the configuration
capplets accommodated in the Gnome control
Conclusion centre, and not without reason – outside Gnome
Caldera Open Linux 3.1, like its predecessor, is aimed they do not run at all, even when gnomecc is
at companies. You will not find the distribution on started manually. Without Star Office, the only
retail sale. Workstation and server variants do not choice for office tasks is Tex/ Latex,
glitter with opulent software packages and Abiword/Gnumeric or KOffice. Games are
innovations, but apart from a few bugs, they are also rare.
solidly built. The strength of Caldera has always lain On the other hand there is no shortage of Web
in network operations, in fact Open Linux, of all the browsers (Netscape, Konqueror, Mozilla), even if
products tested, made the strongest showing. Mozilla could no longer be persuaded to run after
the online update. But anyone who does not
Progeny 1.0 connect direct via Ethernet to the Net, will have
some work to do installing modem/ISDN/ADSL,
For advanced users, who have Gnome down as a which sometimes fails without additional software
desktop environment and would like to familiarise off the Net (warning, recursion). ■

1/2
Anzeige
128 x185 mm

12 · 2001 LINUX MAGAZINE 25


COVER FEATURE DISTRIBUTIONS ON TEST

SERVER
COMPATIBILITY
Undoubtedly the most important domains of Linux at present lie in the
server field. But is it possible in this day and age to build a Web, mail or
Intranet server with any distribution, without headaches?

SuSE Linux 7.2 load off the administrators, because the method using
YaST2 is not suitable for script-controlled updates.
In the software pool of the SuSE Professional release
you will find everything necessary to construct Red Hat 7.1 Professional
servers of all shapes and sizes. And less common
functions such as fax servers, virus protection for What SuSE and other distributions include in the
email gateways and routers can also be realised. If package price, comes at a high tarrif from Red Hat.
you use the distribution to construct servers, then a After 90 days of free online updates for 10
lot depends, not so much on the equipment, but computers via the Red Hat Network, this service
more on the personal preferences of the costs almost 20 dollars per computer per month –
administrators, because non-SuSE users must first for smaller and non-commercial server installations
get used to YaST, the central configuration file a KO criterion. Nevertheless Red Hat Professional
rc.config and SuSEConfig. provides a few interesting features especially for
On the other hand, server planners should keep server installations. So the server services can be
their hands off SuSE’s Personal Edition – unless selected even during the installation. X11 is, unlike
downloads are free. Apart from a mail server, the workstations, only installed on request. For
trimmed-down distribution version provides next to nameservers, Apache and Wu-FTP there are
no applications for this purpose. separate configuration tools, xinetd and the utilities
In the SuSE online update integrated in YaST2, to be started are installed via linuxconf.
with SuSE 7.2 there’s also an option of updating
packages via the Net. This is possible automatically or Mandrake 8.0 Power Pack/Pro
manually. Unfortunately this only takes part of the
Suite Edition
Current server services can be Even if there aren’t any help texts available for all
installed in Red Hat 7.1 simply with
subdomains, with Mandrake there are special
their own configuration programs
configuration tools to facilitate the initial
[right] configuration of server services. So a tool for
SuSE making the editing configuring the Apache server can be called up
of rc files easy
easily from the K menu under
[left] Settings/Network/ Netconf.
Current server services can be
installed simply in Red Hat 7.1 with It has a modular structure and offers a wide
their own configuration programs variety of options, such as speed, which can be
optimised or the security settings configured for
HTTP-SSL. Furthermore, the K menu offers a menu
on NFS, in which only the directory permissions can
be defined. For more extensive settings Webmin
may be more suitable.
To install the FTP server, the administrator can
fall back on ftpconfig. This manages users and
groups, gives directory permissions or performs
security and protocol settings.
Anyone wanting to use Mandrake and set up an
individual Linux-based server, must keep well away
from a standard installation, because there the
installer makes use of the first hard disk found and
merely makes reference to the presence of

26 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

additional disks. Plus, the separate partitions usual The Apache


configuration tool
to servers for /tmp and /var are not provided, so that in the guise of
a would-be server administrator will have to Mandrake
perform the partitioning by hand. By default,
Mandrake 8 installs Samba and a LAMP system
(Apache, MySQL plus PHP) when you select the
server package grouping.
There is no difference in the two Mandrake
editions in terms of software, so that they are in
theory equally suitable for server use. But there are
differences when it comes to support. Where SuSE
in the Professional Edition offers only installation
support, and expressly excludes server support, the
latter is fully guaranteed in the Mandrake Pro Suite.
This means that system administrators who face
problems in the initial phase are not left to their
own devices and don’t have to fall back on support
for which they’re charged.

Caldera Open Linux Server 3.1


The OpenLinux server can be defined during
installation for its later purpose, for example as a
file, print or Web server.
During operational use, Webmin considerably
alleviates configuration and fine-tuning, but
inexperienced administrators can be seduced into a
lot of aimless clicking around.
Unfortunately the software which comes with it
is often not quite up to date, so Samba 2.2 would
certainly have been an advantage for
heterogeneous environments. Anyone who wants
to get to grips with OpenLinux mail or list servers
should already have knowledge of Sendmail and
Majordomo. Caldera does not come with any
alternative servers. On the other hand it is gratifying
to see ready-installed security tools like Tripwire.

Progeny Debian 1.0


Because of its smooth update mechanism and its
stability, Debian GNU/Linux is very popular as a
server operating system. Progeny can considerably Progeny is highly suitable as a starting point for [right]
accelerate the initial installation here — provided the a small server, although administrators will have to Setting up the base Apache
configuration in Mandrake
administrator is fairly familiar with Debian or Linux install some hand tools later. For bigger servers you
without distribution-specific configuration aids. would still fall back on the large store of Debian [left]
Old acquaintance in new clothes:
gnome-dpkg-config in Progeny
SuSE Linux 7.2: Conclusion

Despite all criticism, we can attest to the fact that the latest SuSE distribution beats the
other candidates in terms of compatibility and tidy structure. The fact that diverse design
decisions are a matter of taste is old hat and will continue to ensure that the distribution
will be the subject of controversial discussion among Linux connoisseurs.
Both the tasks of the distribution are clearly oriented towards target groups. Anyone who
only needs Linux for their desktop, can do very well without diverse servers and is best
served with the Personal Edition.
The Professional release on the other hand is aimed at experienced Linuxers and
administrators. The justifiable price differential for the Personal Edition may pain home
users, but with a few extra downloads even the latter can be built up into a server for
special purposes.

12 · 2001 LINUX MAGAZINE 27


COVER FEATURE DISTRIBUTIONS ON TEST

packages available on the Net and adjust them here Spoilt for choice
and there by hand.
System administrators who have to look after With the diversification of the range of distributions
computer pools will value the automatic installation available the would-be administrator can’t rely on
of several computers, based on a Progeny system. current server software being an integral part of
Here it makes even less work to equip the desktops every Linux distribution. Even in those distribution
with KDE, since in this case users will have to do variants intended more for the mass market the
without the Progeny configuration tools anyway. accoutrements differ. Experienced administrators

Server suitability
- SuSE Linux 7.2 SuSE Linux 7.2 Red Hat Linux 7.1 Red Hat Linux 7.1
Personal Professional Deluxe Edition Professional Edition
Basic equipment with current servers
SecureShell OpenSSH 2.9 OpenSSH 2.9 OpenSSH 2.5.2 OpenSSH 2.5.2
Configuration during the installation? Yes Yes Yes Yes
Automatically started after installation? Yes Yes Yes Yes
Configuration front-end - - - -
Nameserver - bind 9.1.2 bind 9.1.0 bind 9.1.0
Configuration during the installation? - Not installed No No
Automatically started after installation? - - No No
Configuration front-end - - bindconf bindconf
Webserver Apache 1.3.19 Apache 1.3.19 Apache 1.3.19 Apache 1.3.19
Configuration during the installation? Not installed Not installed No No
Automatically started after installation? - - No No
Configuration front-end - - apacheconf apacheconf
Mailserver Sendmail 8.11.3 Sendmail 8.11.3 Sendmail 8.11.2 Sendmail 8.11.2
Configuration during the installation? No Yes Automatic Automatic
Automatically started after installation? No No Yes
Configuration front-end YaST2 YaST2 - -
FTP server - BSD-ftpd 0.3.2 wu-ftpd 2.6.1 wu-ftpd 2.6.1
Configuration during the installation? - No No No
Automatically started after installation? - No (inetd not started) No No
Configuration front-end - - linuxconf linuxconf
Database - MySQL 3.23.37, MySQL 3.23.36, MySQL 3.23.36,
PostgreSQL 7.0.3 PostgreSQL 7.0.3 PostgreSQL 7.0.3
Configuration during the installation? - Not installed Not installed Not installed
Automatically started after installation? - - - -
Configuration front-end - - - -
Dhcpd - dhcp 3.0rc4 dhcp 1.3.18pl18 dhcp 1.3.18pl18
Configuration during the installation? - Not installed Not installed Not installed
Automatically started after installation? - - - -
Configuration front-end - - - -
Samba - Samba 2.2.0 Samba 2.0.7 Samba 2.0.7
Configuration during the installation? - Not installed Automatic Automatic
Automatically started after installation? - - No No
Configuration front-end - - - -
Printserver Lprold 3.0.48 Lprold 3.0.48 LPRng 3.7.4 LPRng 3.7.4
Configuration during the installation? Yes Yes No No
Automatically started after installation? Yes Yes No No
Configuration front-end YaST2 YaST2 printer-config printer-config
Inetd inetd 1.2 inetd 1.2 xinetd 2.1.8.9pre14 xinetd 2.1.8.9pre14
Configuration during the installation? No No Yes Yes
Automatically started after installation? No No Yes Yes
Configuration front-end YaST2 YaST2 linuxconf linuxconf
Also automatically started, - nscd - -
fairly unusual servers
RunlevelConfigurator - - Control-Panel Control-Panel
Inittyp SysV SysV SysV SysV
Configuration of several network interf. YaST2 YaST2 Control panel Control panel
LVM support Yes Yes No No
Monitoring tools tcpdump, traceroute mrtg, tcpdump, traceroute etc. traceroute, tcpdump traceroute, tcpdump

28 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

will find the small Mandrake release sufficient, but installations is explicitly included in the
not the SuSE Personal. package price.
Newbies in the field of Linux system Software updates by Cronjob continue to be the
administration will appreciate it when they can domain of Debian and Co., but apart from that, the
make basic adjustments to current servers as in the decision for or against a distribution always
case of Red Hat and Mandrake in graphical depends on the personal preferences of the system
configuration tools. This is where Mandrake sets an administrator. For this reason the table does not
example, too, as in the Pro Suite, support for server include any rating. ■

Mandrake Linux 8.0 Mandrake Linux 8.0 Caldera Open Linux Caldera Open Linux Progeny Debian 1.0
Power Pack Pro Suite Workstation 3.1 Server 3.1

OpenSSH 2.5.2 OpenSSH 2.5.2 OpenSSH 2.5.2 OpenSSH 2.5.2 OpenSSH 2.5.1
Yes Yes Yes Yes Yes
Yes Yes Yes Yes No
- - - - -
bind 9.1.1 bind 9.1.1 bind 8.2.3 bind 8.2.3 bind 8.2.3
No No No No Incomplete
No No No No On request
linuxconf, netconf linuxconf, netconf No No -
Apache 1.3.19 Apache 1.3.19 Apache 1.3.19 Apache 1.3.19 Apache 1.3.9
Yes Yes No No Yes
Yes Yes No No Yes
linuxconf, netconf linuxconf, netconf webmin webmin -
Postfix 20010228 Postfix 20010228 Sendmail 8.11.1 Sendmail 8.11.1 Postfix 2000531
No No No No Yes (simple config.)
Yes Yes Yes No No Yes
linuxconf, netconf linuxconf, netconf - - Capplet in the Gnome-CC
ProFTPD 1.2.2 ProFTPD 1.2.2 - wu-ftpd BSD-ftpd 0.3.2
No No - - Yes
Yes Yes - - On request
linuxconf, netconf linuxconf, netconf - - Gnome-dpkg-reconf
MySQL 3.23.36 MySQL 3.23.36 MySQL 3.23 MySQL 3.23 -

No No No No -
Yes Yes No No -
linuxconf, netconf linuxconf, netconf kmysql, webmin kmysql, webmin -
dhcp 2.0 dhcp 2.0 - dhcp-server 3.0b2pl9 dhcpd 2.0pl5
No No - No No
Yes Yes - - No
linuxconf, netconf linuxconf, netconf - - -
Samba 2.0.7 Samba 2.0.7 Samba 2.08 Samba 2.08 Samba 2.0.7
No No No No No
No No No No No
linuxconf, netconf linuxconf, netconf webmin webmin gnosamba
CUPS 1.1.6 CUPS 1.1.6 CUPS 1.1.6 CUPS 1.1.6 LPRng 3.6.26
Yes Yes Yes Yes Yes
Yes Yes Yes Yes Yes
kups, kprint (Qt-cups) kups, kprint (Qt-cups) kups kups Capplet i. Gnome-CC
xinetd 2.1.8.9 xinetd 2.1.8.9 Netkit-inetd 0.17 Netkit-inetd 0.17 Netkit-inetd 0.10
Yes Yes No No Yes
Yes Yes Yes Yes Yes
linuxconf, netconf linuxconf, netconf webmin webmin -
Cups, qt-print, linuxconf, Cups, qt-print, linuxconf, calserver, slpd calserver, slpd ntpd
webmin, kuduzu webmin, kuduzu
Mandrake-CC Mandrake-CC - - -
SysV SysV SysV SysV SysV
linuxconf, netconf linuxconf, netconf K-Centre/kcmshell K-Centre/kcmshell -
Yes Yes No No No
traceroute etc. traceroute etc. traceroute, tcpdump traceroute, tcpdump traceroute

12 · 2001 LINUX MAGAZINE 29


COVER FEATURE DISTRIBUTIONS ON TEST

SECURITY
If you acquire a current Linux
distribution, you will rightly expect
it to have the latest software. We’ve
taken a look at the versions of a few
selected packages.

Security
- SuSE Linux 7.2 SuSE Linux 7.2 Red Hat Linux 7.1 Red Hat Linux 7.1
Personal Professional Deluxe Edition Professional Edition
Up-to-dateness
Auto-update? yes, automatic or manual yes, manual and automatic for a charge, choice of scope for a charge, choice of scope
selection selection
Base: Kernel 2.4.4 2.4.4 2.4.2 2.4.2

Base: Glibc 2.2.2 2.2.2 2.2.2 2.2.2


Base: X11 4.0.3 4.0.3 4.0.3 4.0.3
Base: KDE 2.1.1 2.1.1 2.1.1 2.1.1
Base: Gnome 1.4.0.1 1.4.0.1 1.2.4 1.2.4
Programming: gcc 2.95.3 2.95.3 2.96 2.96
Programming: lPer 5.6.0 5.6.0 5.6.0 5.6.0
Programming: Python 2.0 2.0 1.5.2 1.5.2
Programming: Java JDK 1.1.8 1.1.8v1 ? ?
Server: Apache 1.3.19 1.3.19 1.3.19 1.3.19
Server: WuFTP - 2.6.0 2.6.1 2.6.1
Server: Sendmail 8.11.3 8.11.3 8.11.2 8.11.2
Server: Samba - 2.2.0 2.0.7 2.0.7
Server: Bind - 9.1.2 9.1.0 9.1.0
Bug found / Advisory on
Man-S Heap Overflow No / 29.05. No / 29.05. No / 21.05. No / 21.05.
NEdit Temp File Creation -/- No / 19.04. No / 08.05. No / 08.05.
Samba TMP Symbolic Link - / - No / - yes / 14.05. yes / 14.05
Ntpd Buffer Overflow -/- No / 09.04. No / 08.04. No / 08.04.
Linux sysctl() Kernel Reading No / 17.05. No / 17.05. No / 16.04. No / 16.04.
Bind 8 Transaction Signatures Buffer Overflow -/- No / 31.01. No / 29.01.
Secure configuration
Security profiles 4 4 3 3
Firewall configuration Pre-configured Sample configuration Gui-Tool Gui-Tool
Unnecessary on pure client? No No rpc.statd rpc.statd
Security-Scanner No Saint, Nessus, Nmap none none
Intrusion Detection System No Snort, Tripwire, AIDE Tripwire Tripwire
IpSEC, VPN No FreeSWAN No No
Other special features? Crypro file system Crypro-FS, Amavis, Kerberos Kerberos Kerberos
Assessment ++ ++ + +

30 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

The viability of programs is also closely linked with


their security. If a loophole is discovered, it must be
closed, and this usually happens by means of an
upgrade to a new version. Our test therefore also
includes six randomly selected security loopholes
that cropped up in recent months. We ask whether
the version in the distribution displays these
loopholes and whether the manufacturer has
published an advisory in this respect.
We also expect a secure configuration, in which
there is a choice of several security profiles, as well
as support for the configuration of a firewall and a
few security tools.

SuSE Linux 7.2 Personal default. Otherwise the trimmed down version is on Gnome only executes the Autorun
file from the CD on Red Hat after a
a par with the Professional version. confirmation – but in Red Hat’s KDE
The ultimate security measure is to have no services installation this prompt is missing
running and SuSE Linux 7.2 Personal achieves this and thus opens a security loophole
SuSE Linux 7.2 Professional
with aplomb; because no services are running it is
perfectly secure. It does come equipped with The test SuSE Linux 7.2 Professional also passed our
Sendmail and Apache but these are switched off by checklist of current security loopholes with flying

Mandrake Linux 8.0 Mandrake Linux 8.0 Caldera Open Linux Caldera Open Linux Progeny Debian 1.0
Power Pack Pro Suite Workstation 3.1 Server 3.1

Yes Yes Yes Yes Yes, but no choice

2.4.3 / 2.2.19 2.4.3 / 2.2.19 2.4.2-11 2.4.2-11 2.2.18 default, 2.4.2 can be
installed later
2.2.2 2.2.2 2.2.1 2.2.1 2.2.1
4.0.3 4.0.3 4.0.2 4.0.2 3.3.6/4.0.2
2.1.1 2.1.1 2.1 2.1 2.0
1.2 1.2 - - 1.2.4
2.96 2.96 2.95.2 2.95.2 2.95.2
5.6 5.6 5.6.0 5.6.0 5.005_03
2.0-9 2.0-9 1.5.2 1.5.2 1.5.2
1.3 1.3 1.3 1.3 -
1.3.19 1.3.19 1.3.19 1.3.19 1.3.9
2.6.1 2.6.1 - 2.6.1 Bsd-ftpd 0.3.2
8.11.3 8.11.3 8.11.1 8.11.1 postfix 2000531
2.0.7 2.0.7 2.0.8 2.0.8 2.0.7
9.1.1 9.1.1 - 8.2.3 8.2.3

No / - No / - yes / - yes / - No / -
yes / 25.04. yes / 25.04. yes / - yes / - - / 27.04.
yes / 21.05. yes / 21.05. No / 18.05. No / 18.05. yes / 09.05.
No / - No / - No / 06.04. No / 06.04. No / 09.04.
No / - No / - No / 03.04. No / 03.04. yes / 16.04.
No / 29.01. yes / 29.01. yes / 29.01. No / 29.01. No / 29.01.

6 6 No Server profiles No
Gui-Tool Gui-Tool Webmin Webmin No
No No No No No
- - none none none
Portsentry Portsentry none Tripwire, Portsentry none
FreeSWAN FreeSWAN No No No
- - supports Volution supports Volution -
++ ++ 0 0 +

12 · 2001 LINUX MAGAZINE 31


COVER FEATURE DISTRIBUTIONS ON TEST

Two simple security mechanisms are


provided by Mandrake for the
beginner: Three complete security
stages and a firewall which can be
configured via simple prompts

colours. The online update makes it easier to play in Red Hat installs an auto-mounter for the local
security updates as soon as they appear. In SuSE’s X11 user. This monitors the CD or DVD drive and
software fund, security-conscious users can also mounts the media if they are in the drive when you
find cryptographic solutions as well as monitoring log in or if they are inserted later. After that,
and security tools, while the network manual offers autorun is searched for and prompted under
an introduction to problems. Gnome as to whether it is to be executed. Under
KDE there is no such prompt with Red Hat, and
Red Hat 7.1 Professional autorun is executed with user rights.
This opens up a security loophole: The fact that
and Deluxe CD burners and self-burned CDs are so common
Apart from the Samba version 2.0.7, all other means a Trojan Horse or a worm could easily be
system utilities are sufficiently current, so only one introduced. The user doesn’t even have the option
of our test loopholes actually exists. It is also very of checking a suspect CD safely. The problem can
easy to keep the system up to date using the online be corrected by removing the entry for autorun
update via the Red Hat Network, but at just under from the autostart group of KDE.
20 dollars per month, this is very expensive. The
firewall configuration gave a positive impression Mandrake 8.0 Power Pack/Pro
during the installation. Here the user can choose
between three profiles or manually open individual Suite Edition
utilities or ports. In Mandrake the kernel is installed in version 2.4.3;

Progeny Debian 1.0: conclusion

Anyone who uses Debian will soon learn what goes on behind the scenes of a Linux system.
And Progeny does not change this much. Even if the installation routine, with the
appropriate hardware, ensures that one can achieve a working system considerably quicker
than with dpkg, one should not expect the comfort and looks of the graphical installers
from other distributors. On the other hand, when it comes to the updates for Debian
packages, apt-get is still unrivalled as a command line tool.
The new Progeny configuration tools embedded in the Gnome Control Center ensure that
even Debian newbies can soon deal with a range of standard configuration tasks, but here
again other distributors are ahead in many respects.
Since Progeny is a distribution tailored for the American market, installers should be
familiar with the American keyboard layout.

32 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

but there is also the option of a kernel 2.2.19. The named ~x, which points to /home/B/target. User B
main new functions and modules of the 2.4.4 then opens the file /tmp/x with nedit and changes a
kernel, though, are already integrated in Mandrake large amount of text, without backing up the file.
in kernel 2.4.3. Nedit now tries to create an incremental backup -
Samba is only installed in version 2.0.7, but unfortunately this lands in /home/B/target. The
although for some time now a corrected version old content of target is thereby overwritten.
2.0.9 together with the current 2.2.0 would have Caldera delivers version 2.0.8 of Samba, but this
been available. And there is also room for does not correct the ”Samba TMP file Symbolic Link”
improvement with the installed Apache version bug. In this case there is in fact an advisory, but it did
1.3.19, as version 1.3.20 has come out. not come out until after the Creation Date of the
Mandrake is a bit negligent in the fact that an RPM archive. We can only hope for an update soon.
installed utility is basically activated automatically. Calling up lsof -i shows that Caldera is very
There is only a brief warning message and to cautious with the services started. The only unusual
compliance with the security updates. things are the slpd (SLP Service Agent) and the
calserver, part of the Cameleo package from
Caldera Open Linux 3.1 Caldera. The server variant is equipped with
additional security programs such as Tripwire.
Workstation/Server
Of the six security bugs tested, three slipped into Progeny Debian 1.0
the latest version of Caldera. By the time we closed
for press there had been no advisory from Caldera Since Progeny is based on Debian 2.2, not all the
on the ”Man -S Heap Overflow” for any of their packages out of the box are quite dew-fresh. At
Linux versions. http://archive.progeny.com/progeny/updates/newto
But Caldera is using version man-1.5h1, which n/ or at the nearest Debian mirror there are always
has the aforementioned bug. The test command updated packages available (including for Gnome
then also leads to a segmentation fault: 1.4). Debian is also famous for providing security
updates extremely quickly. Anyone using the
$ man -S `perl -e ‘print ”:” x 100’` ls
graphical package manager front-end, only has the
option of updating all the packages at a
Segmentation fault
single stroke.
It’s a similar picture with the ”NEdit Temporary File An update to the 2.4 kernel, also supplied, boils
Creation” – no advisory, but the shaky version down to manual work. Progeny supplies neither a
5.1.1. A little test shows how simple it is to exploit selection option during the installation, nor an
the loophole. User A makes a symlink in /tmp explicit introduction in the manual. ■

free space
maybe for an ad???

12 · 2001 LINUX MAGAZINE 33


COVER FEATURE DISTRIBUTIONS ON TEST

SUPPORT AND
DOCUMENTATION
A competent and easy-to-contact
support department, together with
up-to-date and comprehensive
manuals is what makes a
distribution actually usable. We
evaluate each distro in terms of
accessibility.

SuSE Linux 7.2 Personal SuSE Linux 7.2 Professional


The Personal release of the SuSE distribution has no This is practically the only distribution to come with
superfluous information. The manuals are so much documentation, and refined for various
harmonised according to target group and purpose. levels of knowledge. The manuals - from the ”Quick
Cryptic sysadmin jargon is only dished up to the Install Manual” (for visually oriented newbies) via
newbie in an easily digestible dose. With the 60-day the task oriented ”The Programs” up to the
installation support that can be called on via fax, ”Network Guide” (which is specialised and also of
telephone or email, any serious problems should be interest to experts) - cover the entire spectrum.
dealt with easily. The fact that the SuSE developers were involved

Support and Documentation


- SuSE Linux 7.2 SuSE Linux 7.2 Red Hat Linux 7.1 Red Hat Linux 7.1
Personal Professional Deluxe Edition Professional Edition
Electronic. help, content very good very good very good very good
Electronic. help, ease of use very good very good very good very good
Online help, database very good very good yes yes
Online help, FAQ yes yes yes yes
Telephone support, cost Long distance Long distance - no charge (0800/1825497)
Telephone support, 60 days 90 days - 90 days, max. 4 calls
free period
Manual yes yes yes yes
Manual, table of contents yes yes yes yes
Manual, index yes yes good good
Manual, keyword index yes yes good good
Online documentation, FAQ good good yes yes
Assessment ++ ++ - o

34 LINUX MAGAZINE 12 · 2001


DISTRIBUTIONS ON TEST COVER FEATURE

in the documentation work shows that within the Both manuals fail to make a good impression.
company a high value is placed on the The topics dealt with are certainly clearly illustrated,
documentation. And the online documentation, like but there is a marked lack of substance. And it is the
the support via the Web, is among the best the test system administrator who really wants more
field has to offer. information. The lack of a keyword index is
annoying. There is a great deal of room for
Red Hat 7.1 Deluxe and improvement in the documentation (both printed
and electronic).
Professional Edition
Red Hat only offers support for the Deluxe variant Caldera Open Linux Workstation
(around £71) over the Internet. Those buying the
more expensive Professional Edition get 90 days and Server
installation support via a free 0800 telephone Caldera sells its new Linux distributions for an extra
number, but the support is limited to four telephone charge with 60 days installation support via email
enquiries. By way of comparison, SuSE offers and a telephone hotline. The documentation
unlimited telephone support for all variants. available on the system could just about be called
The manual for configuring the Professional adequate. Many Linux basics can be found in the
Edition also contains a few inaccuracies. Time and Developer Guide, the Administration Guide explains
again non-existent menus, or entries with the fundamentals of Webmin and the configuration
inconsistent names or which have not been of various servers. Manual and online documentation
translated, are described. were not available at the time of going to press.

Linux-Mandrake 8.0 Power Pack Progeny Debian 1.0


and Pro Suite Edition The email support from the service network is still at
The only difference worth mentioning between the Beta stage - anyone who lets themselves in for
Power Pack and the Pro Suite Edition lies in terms of the Progeny adventure should know how to get out
support. While with the Power Pack, you have to of a jam in an emergency. Although the English
manage with 30 days telephone installation support manual is among the better ones, as long as you are
and 60 days Web support, with the Pro Suite you interested in the command line, there is still the
get 60 days telephone support and 90 days Web problem that there is very little relevant online
support, expressly including servers. documentation available. ■

Red Hat Linux 7.1: The conclusion

The American company is bringing a highly stable system into the shops, even the DRI
modules of the kernel are extraordinarily robust.
Seen like this, the Deluxe Edition is definitely worth considering, especially since the games
CD is good fun. But whether the overall performance of the Professional Edition justifies
the price of over £177 is something the customer must decide for themselves.

Mandrake Linux 8.0 Mandrake Linux 8.0 Caldera Open Linux Caldera Open Linux Progeny Debian 1.0
Power Pack Pro Suite Workstation 3.1 Server 3.1
yes yes - - nothing special
average average - - -
yes yes yes yes no
yes yes yes yes no
0700 number 0700 number not yet available not yet available overseas call
30 days 60 days 60 days 60 days 30 days for registered users

yes yes not yet available not yet available no


yes yes not yet available not yet available yes
no no not yet available not yet available yes
no no not yet available not yet available could be better
on website on website - - no
o o cannot be assessed cannot be assessed -

12 · 2001 LINUX MAGAZINE 35


COMMUNITY REPORT

UKUUG Linux Developers Conference

AT THE
DEVELOPERS
CONFERENCE RICHARD IBBOTSON

The UKUUG Developers


Conference was held at
UMIST in Manchester
this year. A great deal of
thought was put into
this year's venue and it
certainly paid off...

Professor Sumner David McAllister, a director of Strategic Technologies, Nick Davis delivered a speech about commercial
with early photos
was the first of the speakers. He gave a talk on Linux applications, which IBM is very interested in
of the UK computer
industry Clusters in the XSP environment. That's big iron to developing. Davis asserted that IBM are doing their
you and me. In spite suffering jet lag, McAllister utmost to support GNU/Linux and educate their
delivered a sound appraisal of the commercial uses own employees to work with free and open source
of clusters with XSP. He covered the increased software – all of which thoroughly convinced the
commercial use of the Internet and the greater Conference of IBM's commitment to Linux.
reliance of business on the Net. He advocated a new Davis believes that the open-source movement
approach to deal with this in the shape of integrated is no longer driven by one company; it's now an
hardware and software and networking. industry wide phenomenon, with big companies
Rob Gautier came along next to chat on brute ordering large Linux networks from IBM. Linux is
force clusters. His talk was about Grendel – a now a well-established part of the world of e-
Beowulf cluster used at the University of Wales by commerce. IBM is presently investing a "complete
the Bioinformatics Research Group. Most of the government budget" in Linux.
work consists of large database searches. The Bo Thorsen's talk about the porting of Linux to
design and management of the cluster is fairly 64-bit systems might have been the highlight of the
labour intensive. whole three days. Bo works at the SuSE labs and so

1 LINUX MAGAZINE 12 · 2001


REPORT COMMUNITY

should be regarded as an authoritative voice. He Manchester. This was the kind of thing that would Chris Benson
taking questions
asked those present not to "underestimate what's easily make a complete TV series. It was quite an
going to happen with 64-bit Linux in the next five amazing talk – rewarded by deafening applause.
years". His excellent presentation was well received Continuing with the shock 'em dead approach
by the crowd. to Saturday morning, Werner Heuser gave us his
Andrea Arcangeli came along next and gave us first presentation of the day, which was about the
his stuff on vsyscalls. Andrea also works at the SuSE use of Linux on a laptop. There are quite a few
labs and his main thing is kernel developing. Having people out there who haven't discovered that Linux
made a conscious decision to port Linux over to the can be used on a desktop, so Werner's presentation
X86 64-bit architecture, the task in hand just now is drew a lot of interest from the crowd.
to get it to work. His talk also gave practical insight Luke Leighton got up next and gave us Samba:
into something that is a closed world for most of us. The Next Generation. Luke says he'd like to get KDE architecture
Keep your eyes on www.x86-64.org if you want to people interested in open source software and the by David Faure
know more.
Professor Frank Sumner explained how
computers were built and how British attempts to
join the technology race were hard to sustain in pre-
Internet times. In spite of that, a small team of
academics managed to do some amazing things
back in the 1950s and 60s. We were then taken
over to the Manchester Museum of Science and
Industry where The Baby, one of the original
computers, was demonstrated.
Friday finished with a trip to the Yang Sing
restaurant where pre-dinner drinks were followed
by a Chinese banquet – the highlight of the day!
On Saturday morning (when most of us were
still suffering from the previous night's
overindulgence) Professor David Aspinall delivered
the second part of the birth of computing in

12 · 2001 LINUX MAGAZINE 2


COMMUNITY REPORT

whole thing works and how developers collaborate


was easy to digest and even those of us who are not
developers understood.
At the same time, Martin Hamilton spoke about
Heartbeat and the JANET virtual server. He works as
a developer on the JANET Web cache service.
Martin discussed building scalable and reliable
Internet services. Universities don't have much
money and any attempt at producing a low cost
and reliable Internet service for staff and students is
to be welcomed. The Linux Virtual Server project
provides for these conditions and, combined with
Heartbeat, all of the usual problems to do with
traffic handling and load balancing can be
quickly eradicated.
Martin was followed by David Woodhouse,
who explained the journaling flash file system.
David works for Red Hat UK, where he is
responsible for kernel drivers for memory
technology devices. The journaling flash file system
is all about the work that Axis Coomunications have
come up with in the shape of JFSS. The talk was
about the limitations of flash technology and how
JFSS can be implemented to improve it.
A wander across the road again revealed that
Reliable services with distributed computing environment. He'd like to get Michael Meeks was giving a presentation on the
Martin Hamilton
them really mad so that they go to their computer and Gnome architecture and development – something
start coding right away. He thinks that open source that most of us think he should do more of.
software is outdated when it comes to DCE and RPC. Christian Egli was also given a chance to explain
The crowd in the lecture theatre looked as though rapid application development with Gnome and
they actually agreed with him every bit of the way. Python. For those of you who haven't yet seen
Chris Benson from Treepax covered DCE and Michael give a public explanation of the way that
why Linux developers should know about it. He Gnome and bonobo components work should try
gave us a brief history of DCE, the service that it to be there for the next one. He's very good at
provides and the current availability on Linux. The taking an extremely complex piece of technology
Open Software Foundation was founded in 1998 as and explaining in a few simple words how all
a balance to the UNIX International Consortium, of it works.
which was set up by Sun and AT&T. One of the Next, Christian Egli chatted about using
strong points of DCE is integration. Gnome. He created an application called gPizza for
At this point the conference split between two the crowd in the room. If you have Glade or Anjunta
different buildings. Some of us went over to the and Kdevelop it's very difficult to find other tools
KDE talk by David Faure at Stafford House. Others that are just as flexible with the same range of
stayed behind in the Renold Building and listened to possibilities. gPizza worked first time without
Chris Benson talk about distributed a hitch.
computing environment. Back over at the Renolds building, Andrea
David Faure's presentation on KDE architecture Arcangeli of SuSE gave us an excellent talk on
and development was well worth taking in. Even NUMA. "What is NUMA?" I hear you say. Well, it's
some of the KDE developers we have spoken to like a technology that opens a new class of
to watch him in action. His explanation of how the optimisations so that the full power of a machine
can be utilised. Andrea showed us the optimisations
that are available on wildfire alpha boxes. He also
showed us Zerocopy O_DIRECT. This is something
Useful URLs that does massive I/O stuff to storage devices in
Linux Virtual Server: http://www.lvsp.org/ the filesystem.
Robert Gautier: http://www.ateb.co.uk/packages/farmer Steve Whitehouse came along from Sistina
Bo Thorsen: http://www.x86-64.org software and gave us Zerocopy. Steve is the DecNet
Andrea Arcangeli, SuSE Labs: http://www.suse.com kernel code maintainer and recently completed a
David Faure: http://www.kde.org PhD on error-resilient image compression. He runs
Tom Rathbone: http://www.aceldama.com/~tomr/papers/2001/web-gimp/ his own consulting company – ChyGwyn Limited, as
well as the European Sistina office. Steve explained
■ the recent improvements made in the GNU/Linux

3 LINUX MAGAZINE 12 · 2001


REPORT COMMUNITY

kernel under the 2.4.x kernel releases. Richter started his talk about Zope – an open source
Another trip to the Stafford building found Tom Web application server. There is a very steep
Rathbone giving an explanation about fractal learning curve before a user can understand Zope
generation using GIMP MathMap. MathMap is the but the end results justify the initial confusion.
scientific end of image manipulation. The bit that Stephan discussed Zope's ability to be scalable and
happens before photographers and commercial reliable at all times.
artists get to use GIMP. It's a GIMP plugin that Tom Rathbone explained how to simplify
allows a user to describe image transforms and dynamic websites with mod_perl and GIMP. This
combinations. It's very fast and only requires a was one of the highlights of the three days for those
reasonably good understanding of maths. It's also a of us who like graphics rather than darkened rooms
work in progress. and sober people. He described a template system
Luke Leighton turned up in good humour and for mod_perl, which is part of the Apache
gave us his Pymmetry – Python Trust Metrics application that is used on most of the servers
presentation. As presented in Linux Magazine Issue 9. around the world.
Saturday closed with Werner Heuser displaying Richard Moore arrived in the Renold building in
GNU/Linux on PDAs. This pulled in quite a crowd at a great rush explaining that he'd only just got back
the Renold building. The other presentations in the from Boston where he had been for about an hour.
Stafford building had finished and people preferred He gave his talk on dynamic probes for user and
to stay and watch Werner rather than go home. kernel space. Dprobes, as he calls it, is a generic and
This was followed by a friendly question and answer pervasive debugging system that can operate under
session where everyone discussed the events of the the most extreme conditions with minimal
day and possible future events. system disruption.
Sunday turned out to be a typical sleepy British He followed on with a talk about GKHI, which is
Sunday. The rail lines over the Pennines had been a generalised kernel hooks interface. This allows for
removed for maintenance and this made things many enhancements that otherwise would not be
even more sleepy. A few of us arrived by bus. possible. Richard's presentation contained many
Randy Appleton started the day in the Renold aspects of kernel design and use that most people
building with benchmarking the GNU/Linux kernel. don't get to see at all.
Three students and a professor spent a complete Alex Perry gave us the Flight Gear flight
term benchmarking nineteen different versions of simulator. This was a kind of a cross between a top
the Linux kernel from 2.01 to 2.4. The results show class joystick game and a flight simulator for 747s or
that many functions did improve in speed. Randy commercial aircraft. A virtually real instrument
showed that some improvements were in fact a display closely mimics the real instruments that are

1/4 a
step backwards and also that the total number of to be found on commercial aircraft. The question
lines of code has now tripled on an exponential and answer session at the end was fairly intense but
growth curve. also witty and humorous. Alex kindly gave us a
Next, Dave Jones from the SuSE Labs attempted demo of the flight simulator at the end of his talk.
to break us out of our slumber by tuning the Linux After a general discussion about past and future
kernel with Powertweak. Powertweak is the first events we trooped off downstairs to lunch where a
performance-enhancing tool for GNU/Linux. large pile of sandwiches was consumed in just
Back over in the Stafford building, Stephan a few minutes. ■

Ad wrong shape.
It should be THIS
shape
12 · 2001 LINUX MAGAZINE 4
ON TEST LINUX GAMES: ANDROMEDA9

Gaming for pocket money

ANDROMEDA9 FIONN BEHRENS

Andromeda9 is a free game of professional quality, programmed with OpenGL in Python.


Steer your spaceship to unknown worlds, alone or against other players on the Net.

After starting the game, you will be greeted


with a very nicely presented menu with neat
transparency effects. After finding a suitable
resolution (up to 1600x1200 is possible) in options
and an appropriate keyboard configuration or
joystick setting, the next thing to do is take a look at
the demo mode to see what it's all about.
Andromeda9 is in fact a mixture of Gravity Force,
Quake and Xpilot, using the concept of the first, the
Figure 1: A good playing modes of the second and the extras of the
tutorial makes
up for the lack of
third. Plus there are the pepped-up graphics, which
instructions (though the game is basically played out in two
dimensions) come up with really vivid and three-
Installation consists of merely unpacking the dimensional-looking ships, maps, extras and effects.
compressed archive. Unfortunately, at present the At the well made introductory level you can
game only runs on Intel-compatible processors. If learn everything of importance about the control of
nothing happens when you first start it, or if strange the game, handling of extras, displayed data and a
error messages pop up, it is often helpful to rename great deal more besides. Depending on the playing
the libSDL-1.1.so and instead, with the command ln mode (there are the usual Deathmatch and CTF
-s /usr/lib/libSDL.so ./libSDL-1.1.so (execute in the variants as well as races available) you can work
Andromeda9 directory) use the SDL library which is your way, either co-operatively or every man for
already in the system. More recent versions of the himself, through the still rather small number of
libSDL should function too. maps with their very special little traps, teleports,
The game requires a functioning installation of extras etc. There are filling stations at some point on
OpenGL, for example Mesa or GLX. This usually also each level, which you can fly over in order to top up
includes an accelerated graphics card. Otherwise the ever-scarce fuel. There are also repair stations to
the demands of the game are fairly modest: fix any damage to the ship.
200MHz processor, 32MB RAM and 36MB space on For orientation in the rugged maps you can
the hard drive. If you want to play against other blend in a display of a small overview map in one
players on the Internet, a modem connection, ISDN corner. A semi-transparent display box also gives
or similar is required. continuous information about current fuel reserves,

Figure 2: Cool
menus thanks to
OpenGL:
Andromeda9 Prefs

40 LINUX MAGAZINE 12 · 2001


LINUX GAMES: ANDROMEDA9 ON TEST

Figure 3:
Practice makes perfect

armaments and damage to the ship. thrust and a weapon to destroy powerups is said to The author
Since the game is squarely aimed at multiplayer be imminent. Additional settings for gravitation and Fionn Behrens is a student of
use, without an Internet connection very little will yet more new weapons are planned. There is also technical computer science. He
happen at first. But if you're online, then even with going to be an input screen for Net games with chat can be contacted on the Net as
a slow 33k connection, there are next to no limits option, plus drones (robots), against which you can Fionn at IRCnet.
on the fun you can have. Gruesome slaughters in practise whenever there are no human opponents
CTF mode and hair-raising racing round the, available or if you don't yet feel ready for the big,
sometimes extreme, tracks are pre-programmed. wide world. Last but not least, many parts of the
Tip: there is a mode for home practice using a split game are also going to be completely revised in
screen, so that a single computer is all you need to terms of graphics – so we can look forward to a
have fun with Andromeda9. game that will definitely be worth its
At first you would scarcely notice the fact that 15MB download. ■
the game was actually programmed in Python, or

Figure 4: Preview of the next version of Andromeda9: Revised graphics,


multiplayer ranking and cool new weapons

only by some characteristic file names. But it does


go to show that good games can be written even in Conclusion: Nothing new, but still very good! The graphics look simply top class.
a relatively "high-level" language - nowadays there Technically, the game is impeccable, simple to understand without being
is no longer the need to master machine code to undemanding -- and all free! The hard-core XPilot-gamer will shudder and turn
program a good game. Plus, it's an impressive away, but for the occasional Net gamer this game is certainly worth downloading
demonstration of the power of this language, and can bring you many hours of fun with your friends.
which is looked down on by "real c0derZ".
The sounds are good; the game can, Rating:
commendably, also cope with the enlightened Long-term gaming fun: 75%
sound daemon - so no problem with the Gnome Graphics: 85%
desktop. Anyone who wants to can copy their own Sound: 80%
favourite songs in mp3 format into a sub-directory Control: 85%
of the game - these will be played during the run Multiplayer: 90%
time of Andromeda9. Originality: 25%
The programmers are currently working all out Complexity: 40%
on a new version, which was not ready before we Overall rating: 85%
went to press. The new features are to include a The new version of the game was not ready by the time we went to press, but
global classification system that stores the scores of should be available for download in the near future from the Andromeda9 website
the individual pilots in an Internet Highscore List. -- www.andromeda9.com. ■
The space ships will be able to brake using reverse

12 · 2001 LINUX MAGAZINE 41


ON TEST TRANSMETA CRUSOE

Transmeta Crusoe TM5600 in detail

MESSAGE IN
A BOTTLE FROM
TRANSMETA MIRKO DÖLLE

The Crusoe TM5600 (with 633 MHz) has 128KB


first-level cache, 512KB second-level cache and can
split off a variable translation cache from the main
memory of the computer. For the test we had
exclusive use of the Fujitsu-Siemens Lifebook P with
the TM5600. Unlike the usual Intel-compatible
CPUs, the Crusoe is trimmed for minimum
consumption instead of maximum performance.

Internal
The Crusoe contains noticeably fewer functional
units than other x86 processors. Like the Mobile
Pentium III it has two integers, one floating point,
one memory and one unit step. ISSE and MMX units
only come with Intel.
Today's x86 processors use out of order
execution. The x86 command sequence specified by
the program is first broken down by the decoder
and translation unit into RISC-type micro-ops and
distributed by the dispatch unit over the functional
units. The sequence is determined by the available
CPU resources, not by the program. The dispatch
unit tries to use the CPU to full capacity. The results
In January 2000 then have to be re-sorted by the in order retire unit.
Transmeta presented the The aforementioned units are mostly realised by
hardware and, with only a few exceptions, by
Crusoe, a processor with software (jump prediction, optimisation, re-sorting).
a revolutionary mixture Transmeta has the cut back heavily on the
functionality of the control units or done away with
of hardware and them altogether and so manages with considerably
software. We tested the fewer transistors.
The Crusoe processor itself is not x86-
first 633MHz version compatible, but is a VLIW kernel with 64 or 128 bit
of the TM5600 in Europe. commands. The decoder and dispatch unit
responsible for the division of tasks is just a simple
bit-distributor, which splits up the arriving
command and writes it in parallel in the function
units. There is no optimisation or re-sorting.

42 LINUX MAGAZINE 12 · 2001


TRANSMETA CRUSOE ON TEST

Software/ hardware mix


To run x86 programs on the Crusoe, there has to be
a translation into the VLIW command set of the
Crusoe. This is done by the code-morphing
software, which Linus Torvalds was heavily involved
in developing. This is loaded from the flash, which
can be updated, into one part of the translation
cache. In addition to translation, the software is
responsible for the optimisation of the code up to
the out of order execution, packs the result in bite-
size chunks into VLI words and saves it in the
translation cache.
The concept is similar to the FX32 expansion of
Digital for Windows NT and Linux, which allows the
execution of x86 programs on Alpha CPUs and
saves the translation result created during the run The Crusoe TM5600 can be seen on the right with
the south bridge and ATI graphics chips to the left
time in a shadow file on the hard drive.
It takes a lot longer to translate the commands
with the code morphing software than in the
Decoder-Unit of the Pentium III. But unlike an
almost purely hardware solution, considerably One for all
larger algorithms can be used. If the same
command block comes up again for execution, the The encapsulation of the entire hardware by code
VLIW commands are supplied straight from the morphing software opens up some completely new
translation cache, without being retranslated. possibilities. So the VLIW kernel of the processor

Midori Linux

The Transmeta Crusoe is suitable as an image including partitioning onto a block


extremely energy-economical processor device. Red Hat 6.2 is suitable for the
especially for mobile PCs. Its main compilation, while the help scripts failed on
application is in the domain of notebooks, more recent Red Hat and SuSE releases.
which need a high-performance x86- You should allow a few
compatible CPU using as little energy as hours and sufficient space
possible. What matters is that the operating on the hard disk for the
system exploits the energy-saving abilities first compilation because
of the hardware. by the time you finish,
Linux doesn't offer stable support for sources, objects and
ACPI power management yet. And Linux binary packets will take up
systems are comparatively large – with a a good 1.6GB.
graphical user interface and browser they
come to over 128MB. Midori in practice
We were unable to get
Lean and mean Midori to run completely on
Transmeta has taken this problem on board the Fujitsu-Siemens Lifebook P,
and is presenting Midori Linux, which has as XFree86 4.0.1 simply could not
optimal slimness and support for power come to terms with the unusual
management. Transmeta does not supply any display. The kernel on the other
complete binary packages, so the distribution hand ran stably with ACPI. An
in the version to which we had access (version application test was thus not
1.0.0-beta2), consists of a tar archive with possible, as there are no console tools.
Web-based configuration front end. Midori is at present intended only for
The Midori program packages are tarballs developers of mobile PCs; it is not a user-
equipped with additional information with distribution. But due to the working power
the ending mlz. After configuration the management and small size it is noticeably
whole system is compiled using Cross- more suitable for portable applications than
Compiler and then written as a hard disk standard systems.

12 · 2001 LINUX MAGAZINE 43


ON TEST TRANSMETA CRUSOE

can be changed at will at any time, as happened Crusoe markedly different from Intel's Speed Step,
with TM3200 and TM5400. Bugfixes or which has only three stages.
fundamental function changes are no problem. The By integrating the north bridge into the CPU the
x86 upwards-compatibility is retained, only the code Crusoe TM5600 can separate off part of the main
morphing software has to be adapted. memory as translation cache and saves space on the
Emulation of other CPU architectures is also PCB.
possible, so there is a Java version of the code-
morphing software. This is interesting for the High integration
development of new processors. It is possible to
test the command set or develop software on An additional advantage is that of the integration of
very powerful, Crusoe-based development the north bridge into the Crusoe, which is also
systems long before the first trimmed for minimal power consumption. In all the
processor prototype. Crusoe consumes, at a kernel voltage of 1.4V, a
So Transmeta has built a Crusoe with maximum of 2.9W including north bridge, a Mobile
Clawhammer emulation for AMD, which is already Pentium III comes in at a minimum of 5W plus 2 to
in use. And the emulation of completely different 3W for the north bridge.
architectures such as Power-PC or RISC is also At the same time, the Crusoe – with the same
possible, although their performance is limited by structural size (18 millimetres) – is about a quarter
the VLIW hardware. smaller than Intel's Mobile Pentium III. As more
Transmeta has achieved additional energy chips fit onto one wafer, production gets cheaper.
savings with the Longrun power management. So One other plus point is the space saved, so now
the code morphing software dynamically adjusts the essentially only three chips are now needed for a
kernel voltage and the clock frequency can be complete PC. ■
reduced smoothly to 300MHz. This makes the

Fujitsu-Siemens Lifebook P
with Crusoe TM5600

READY FOR
THE ISLAND MIRKO DÖLLE

The Transmeta Crusoe The Lifebook P stands out because of its unusual
hardware. The Transmeta Crusoe TM5600 has
boosts the Fujitsu- 633MHz and just a 10.1-inch display with
Siemens Lifebook P to a 1280x600 pixels at 140 dpi – which is more than
many inkjet printers can get onto paper. The pre-
phenomenal battery life series model tested will be available in this format
of well over six hours. from October in all major electronics stores, but the
price has not yet been fixed.
Linux Magazine has Of the 128MB RAM, 16MB is set aside for the
tested the new sub- translation cache of the Crusoe, and an expansion
with standard SO-DIMMs is not possible. On the
notebook, which comes 15GB hard drive, it is planned to pre-install
out in October. Windows Me, but delivery with Linux is currently
floundering due to the lack of support for the
modem and the control buttons for the DVD player
built in below the display.

44 LINUX MAGAZINE 12 · 2001


TRANSMETA CRUSOE ON TEST

Run-time giant with multimedia Fujitsu-Siemens Lifebook P


Category Subnotebook
The Lifebook P is intended as a mini-multimedia Processor Transmeta Crusoe TM5600
machine, combining MP3, CD and DVD player in Memory [MB], (slot/free) 128 (1/0)
one and also offering the functionality of a standard Hard disk [GB] 15
PC. With a battery life of six hours, sixteen minutes DVD-ROM 8x/internal
and sixteen seconds, even on long holiday trips it is Drives open sideways yes
more than equipped to keep the peace among your Ports: PS/2 / serial / parallel / line -/-/-/+
offspring in the back seat with the latest Disney film. USB / Irda / TV +/-/+
The difference between the Lifebook P and the Docking Port / ext. drives -/-
Fujitsu-Siemens Loox T is the 100MHz faster CPU. Display: Type / Size [inch] TFT / 10,1
The large battery tested here, which is only Angle of installation [degrees] 180
available as an extra, stores 39-watt hours of Colour/ brightness ratio even no
energy. With the little 19 Wh battery there is still Keyboard: key lift / pressure point good / detectable
over three hours run time. The design is somewhat Offset cursor block no
unusual, but the silver surface does look finer and Cursor functions without function key no
more robust. Loudspeaker covered when writing no
Mouse: Type / buttons Trackpoint / 3
Problems adapting Battery: Type / Voltage [V] / Capacity [mAh] Li-Io / 10.8 / 3600 (1800)
Battery life [h:min] 6:16 (3:03)
The Linux installation of Red Hat 7.1 and SuSE 7.1 Pre-installed operating system Windows Me
and 7.2 is not unproblematic. With the X11 Graphics card ATI 3D Rage Mobility P/M
installation the standard modes refuse to work, so Memory [MByte] 4
some manual labour is necessary. The Trident driver Modem chip (addressable) Nitsuko Type 0002
for the sound card did not work – a patched Alsa Sound chip (addressable) Acer Type 5451 (+)
package is necessary to make it go. Cardbus chipset TI PCI 1410
At a weight of just 1.8kg and a battery capacity Cardbus slots 1x Type II
of over six hours, the Fujitsu-Siemens Lifebook P is a TV output / connection SVGA
faithful companion. Never before has a notebook in Power off / sleep usable +/+
the Pentium class been so frugal in terms of energy Usable on text console / under X11 +/-
without major compromises in performance. The Width / Depth / Height [cm] (Weight [kg]) 26.5 / 18.3 / 3.5 (1.8)
purely passively cooled CPU also makes the device Noise level [db(A)]: below measurement limit
of particular interest to those of you plagued by Temperature [°C]: underside / keyboard 43 / 36
noise. The display with the extreme high dot density Temperature [°C]: card slot 44
does, however, require good eyesight – or a Market launch October 2001
good optician. ■

12 · 2001 LINUX MAGAZINE 45


FEATURE IOMEGA

Access to Zip and


Jaz Media Made Easy

IOMEGA
TOOLS HANS-GEORG ESSER

new sub-directory Lomega-0.2 and there execute


the classic three-step of ./configure, make and
make install. After that the program should be
found and started under /usr/local/bin/lomega.
On first starting, lomega scans the SCSI bus and
displays the Zip and Jaz drives found. A sample
output is

Welcome hgesser, starting scan...


IOMEGA ZIP 100

The seven buttons have the following functions:


• Info outputs the current status of the drive and
Iomega's Zip drives have any medium that has been inserted
become a popular storage medium, not least because of the • Mount mounts the medium in the mount point
which, depending on the type of device, is either
low cost of a 100MB diskette. We take a look at running this /mnt/zip or /mnt/jaz. These mount points can,
handy hardware under Linux. however, be altered in the configuration file
/etc/lomega.conf
• Unmount cancels this
After the Zip drive came the Jaz drive with 1GB of • Eject ejects the medium
storage, later a 2GB variant and then a new version • Lock provides the medium with a write or
of the Zip drive, which can handle, alongside the read/write protection, whereby a password can
old Zip data media, 250MB media too. Common to be issued – this is needed to cancel this
all Iomega media is the fact that the write- protection again later on (Figure 2)
protection is done by the software, hence special • Un-Lock cancels this
tools are needed to set and to remove the write • Back-Up backs up a marked directory on Zip. This
protection. There is also the option of setting a directory must first also be selected in the tab,
password, without which write access or any access also named Back-Up, under which a file manager
to the medium can be blocked. is hidden

Lomega
One representative of the Iomega tools clones is
Lomega. This program offers all the functions
SCSI preferred necessary and combines them under a single, easy
Many of the tools interface. But be warned, lomega has the SetUID
described here prefer to bits set, so is always executed with root rights, even
work with the SCSI when you start it as normal user. The advantage is
drives. ATAPI and that you always have access to the device files, but
parallel port drives can, the drawback is that you have to trust the program.
in some cases, be As usual, Lomega has to be compiled before
persuaded to co-operate use. The program is not especially demanding,
– reference is made to when it comes to existing libraries, so no major
this in each case. problems should arise here. Unpack the archive Figure 1: Lomega is the most powerful tool in the
lomega-0.2.tar.gz. In /usr/local/src, switch to the comparison

48 LINUX MAGAZINE 12 · 2001


IOMEGA FEATURE

As support for parallel port drives Lomega offers the /dev/sdd is always specified, which is to be replaced
two options File/modprobe/ppa and by the correct name.
File/modprobe/imm. imm is a driver for the "Iomega • ziptool -e /dev/sdd: eject; eject medium. This only
MatchMaker parallel port SCSI host adapter", works if the Zip is not mounted – otherwise the
which is used in the Zip Plus drive; ppa supports the error message "Device is mounted" appears
normal parallel Zip drive. ATAPI drives are only • ziptool -s /dev/sdd: status; states the protection
supported if the IDE-SCSI-Emulation in the kernel status of the Zip medium (thus read or write-
has been activated. The requisite kernel module is protected, with or without password)
called ide-scsi.o. • ziptool -ro /dev/sdd: read-only; the medium is
write-protected. It must not be mounted for this.
gtkZip This protection can be cancelled by any user, since
no password has been issued
One alternative to Lomega is gtkZip. The program • ziptool -rp /dev/sdd: read-only, password; as with
has a modern design. Unfortunately it refused to "-ro", but a password is requested, without
work on our test machines. which the protection cannot be cancelled:

[esser@dual ~]$ ziptool -rp /dev/sda


jaZip Password: test
ziptool: medium is password write-protected.
jaZip is not dissimilar to Lomega, and on closer
inspection one notes in Lomega's credits the If you forget your password, you will have to format Figure 2: Lomega sets a read/
write protection with
reference, "Portions of code by: Jarrod A. Smith". the medium in order to be able to write on it again.
password for the Zip medium
This is the author of jaZip. So it's no wonder that • ziptool -rw /dev/sdd: read-write. This command
the functions of jaZip are similar. But jaZip cannot makes the medium generally accessible again.
create a read protection, which is why we have Any write protection is cancelled. If a password
devoted more time to Lomega. has been used for protection, it must be entered
Incidentally, the following behaviour of jaZip here, otherwise the barrier will not be raised. Figure 3: gtkZip's chic design
means it is compact and
was somewhat problematic: A Zip medium was • ziptool -ud /dev/sdd: unlock door; mounting a Zip
utilises desktop space well
already mounted in /mnt/zip when jaZip was medium normally causes it to be locked into the
started. After a click on the unmount button jaZip drive. Pressing the Eject button will not work until
then wrote "Unmounting and removing /mnt/zip" - the file system is released with umount. This
not very nice, since the directory later had to be allows the lock to be released without
made again by hand. Before starting jaZip, you unmounting first – if that's what you want
should take a look in its configuration file • ziptool -ld /dev/sdd: lock door – cancels the
/etc/jaziptab, which has a similar structure to fstab. unlock, locking the drive again
The sources would not compile on a current • ziptool -m /dev/sdd mountpoint: mount – mounts
SuSE system; but we were able to install an RPM the medium. In principle this is nothing but Figure 4: jaZip is
package, which was found at mount /dev/sda4 mountpoint, but can be similar to Lomega

ftp://ftp.rpmfind.net/linux/contrib/libc6/i386/jaZip- executed by any user, as ziptool always runs with


0.22-4.i386.rpm, without any problem. root rights
• ziptool -u /dev/sdd: unmount – removes the file
ziptool system from the file tree again

Back to the command line. Everything you can do As already mentioned in the listing, ziptool is
by a mouse click can also be performed in the executed with administrator rights, for which it has
console and thereby be built into its own shell set the SetUID bit:
scripts. The useful tool ziptool supports all special
[esser@kira iomega]$ ls -al `which ziptool`
functions of the Zip and Jaz drives.
-rwsr-xr-x 1 root root 9708 Jun 1 16:10 /U
Firstly, ziptool has to be compiled, if you are not
usr/local/bin/ziptool
installing any binary packet – in this case this goes
very quickly. Simply unpack, as root, the ziptool- This means that with the aid of ziptool, any user can
1.3.tar.gz package, change to the new directory directly access all device files, even if these would
and there call up make. Another make install copies not allow the user themselves access.
binaries and man pages to /usr/local. A look at the
man page of ziptool (which can also be addressed GUI or bash#
by symbolic link as jaztool) gives away the general
syntax ziptool -Option Device. At this point, you As usual, it is purely a matter of taste as to whether
should always specify as device the device file tasks are processed on the command line or in the
belonging to the Zip drive, not that of a data graphical window – in the case of the Iomega tools,
partition, thus /dev/sdd and not /dev/sdd4. though, it is interesting that Lomega is the only tool
There now follows a list of the possible ziptool which can also set up a read protection. This makes
commands. For greater ease of reading the device it preferable to ziptool. ■

12 · 2001 LINUX MAGAZINE 49


FEATURE AD FILTERS

Ad filters for your browser

BANISHING
Intelligent proxies
are handy things to BANNERS
have – they filter ARMIN AND ALEXANDER ROEHRL, STEFAN SCHMIEDL
out banners, help to
protect your privacy Banner advertising on the Internet is not nearly as For security reasons, proxies should not be
successful as marketing strategists had once hoped. accessible from outside. Programs like Nessus
and let you surf That is why banners keep growing and are placed in Security Scanner indicate weak points in this
faster. We introduce increasingly intrusive positions – even right in the respect. Incorrect requests will slow a system
middle of the page. Although most portal pages like down considerably.
six blocking proxies Yahoo limit the initial image size to 30K, four more In Netscape and Mozilla, click on Edit (top left),
for Linux. files of up to 50K can be loaded subsequently. All then Preferences, double-click Advanced, then
together, that's a whopping 230K. Proxies and Manual Proxy Configuration. For
Filtering proxies stem this unwanted stream of Konqueror the settings can be found under
data which, after all, users pay for with connection Settings, Configure Konqueror, Proxies. With Opera
charges. Under Linux, you can get standalone the path is File, Preferences, Network to the
solutions as well as extensions for Squid – every Proxy Server.
Linux user's favourite proxy.
What is filtered?
Proxies and browsers
In principle, anything that is sent from the browser
Blocking software works in the same way for all or returned from the Internet can be filtered.
browsers. The browser is instructed in the settings Pornography and cookies, which people like to
not to send any request directly to the Net, but block to protect their privacy, can be stopped, as
rather to the proxy. If this is running on your own can advertising banners or animated images. Most
machine, it is sufficient to specify localhost or the IP anti-ad proxies replace adverts with a transparent
address 127.0.0.1 and the proxy port. Blockers tend image or broken image icon. The ad image is
to use different standard ports (see Table 1). deliberately not replaced with a 1x1 pixel

1 LINUX MAGAZINE 12 · 2001


AD FILTERS FEATURE

News.cnet.com page:
Left in Konqueror without
and right in Netscape
with Adzapper. For ten Cnet
articles the proportion
of advertising to content in
terms of data volume is
on average 60 to 40

transparent GIF, so as not to interfere with the Adzapper's simple Web user interface
layout of the Web page. http://adzapper/. It can even be used to create
zaplets very easily. Zaplets are small XML files that
What happens to HTTPS? define what constitutes an advertising nuisance.
They can apply to one domain or to a whole domain
Secure Hypertext Transfer Protocol (HTTPS, RFC class.
2660) is a standard protocol for the encrypted Adzapper comes with a lot of demo zaplets for
transmission of sensitive data like credit card popular sites like Slashdot, CNN or Yahoo –
information. As soon as the browser sends sensitive fortunately mostly English language ones. Zaplets
data to, or receives it from, https://~Address, the can even include regular expressions in Perl syntax.
proxy could still filter the data, but it would not be A good introduction to this is provided by
able to recognise ad images, as these are now also python.org. To install, unzip adzapper-0.3.0.tar.gz
encrypted. Proxies therefore always transmit HTTPS and run the install or install-daemon script. The
requests unfiltered. program is started with adzapper or adzapperd
Naturally, it is possible to change the port as (daemon version).
required for all programs, either through the Here, as an example, theregister.co.uk zaplet:
configuration file or using a parameter. The port <?xml version="1.0"?>
should be set higher than 1024 if the proxy does not <zaplet>
run as root, although that's generally a bad idea. <version>0.9</version>
The filter tables provided should be treated with <host>theregister.co.uk</host>
caution, as there is no problem in teaching most <block_url type="regex">/media/(\d)*\.giU
programs to filter Flash animations for instance, f</block_url>
even if this cannot be done using the standard </zaplet>
setting. The crux is in the detail – for instance,
whether it is possible to treat cookies differently Table 1: Blocking Proxies
according to domain and page. Program Filters Port
Adzapper banners, popups, JavaScript, Java applets, cookies 51966
Adzapper Squid with Adzap banners, popups, cookies 3128
Muffin animations, Java applets and JavaScript, cookies, 51966
Of the tested proxies, we liked Adzapper (current referers, HTTP user agent headers, HTTP server headers
version 0.7) best, as it is simple to use and delivers Rabbit banners, background images, cookies 9666
good results. Unfortunately, it hung once in a while. Junkbuster banners, cookies, referers 5865
Perhaps this was because we were using version 2.0 Webwasher banners, popups, JavaScript, Java applets, cookies, referers 8080
of Python in the testing and Adzapper's author Guidescope banners, cookies, referers 8000
recommends 1.5.2. The picture is rounded off by

12 · 2001 LINUX MAGAZINE 2


FEATURE AD FILTERS

and then deliver it suitably changed. The entry

redirect_program /user/local/bin/squid_redirect
in the Squid configuration file (squid.conf) would
filter all URLs through squid_redirect, with
squid_redirect being, for example, a Perl script. We
will be using Adzap for this purpose.
If Squid hasn't been installed yet this is quickly
rectified using rpm -ih squid.rpm.
Adzap is available as a tar file. The file contains
the redirector, the images to be displayed instead of
the adverts, and a short wrapper script. After
unpacking it with

tarx -xvzf adzap-20010606.tar.gz;


the redirector can be copied to
/usr/local/bin/squid_redirect, for example, and made
executable with chmod +x. A relevant line needs to
be added to squid.conf and finally Squid has to
If you want to filter out all GIF images ending in be restarted.
To adapt Adzap to UK Web pages, it is advisable
to use the wrapper script. It must then be entered as
a redirector in the Squid configuration. The path of
the actual Adzap program then has to be set
correctly in the wrapper script itself. The syntax is
more like the glob expressions of the Bourne Shell
than Perl-type regular expressions.

Muffin: Coffee and cookies


Muffin is a sophisticated Java program, currently
available in version 0.9.3a. After a bit of fine-tuning
Muffin works readily and quickly.
The package contains a number of useful
utilities: Secretary can complete Web forms with
pre-defined answers, dispensing with the need to
constantly enter your own email address. Painter
automatically changes the background colour of all
transmitted Web pages. Document Info shows
hidden information in the HTTP header of HTML
The Register page: In ad.gif, use regular expressions: images/.*ad.gif. pages, for example, the change date or the actual
Netscape without and in
Other examples of popular websites can be found URL of the page.
Konqueror with built-in
Adzapper. 52 percent of at www.zaplet.org. The installation of Muffin is very simple.
the data volume on this The creation of the zaplet is simple. First, load Download the jar file and start it with java:
page consists of
advertising. The total theregister.co.uk page. The trained eye will
volume exceeds 60K muffin-0.9.3a.jar (binary only; right click U
immediately recognise the ads. Select View Image in
to download)
the browser, confirm through Reload and go to
java -cp muffin-0.9.3a.jar:$CLASSPATH Muffin &
http://adzapper.
Adzapper now asks which parts of the file name
to block. In the case of theregister, this is Rabbit
particularly easy, as the string media occurs in all ad
banner links. Rabbit is available in version 2.0.8 and is
distinguished by the fact that it compresses text and
Squid with Adzap images, which can be especially interesting on large
networks. Text is compressed by about 75 per cent
Squid is probably the best general proxy for Linux. It using gzip and images are converted to a lower
is fast and robust, but not really suitable for use as resolution with JPEG. Rabbit does this using Image
an ad filter. Squid is intended as a robust cache for Magick's convert utility.
whole companies or the networked home and it Warning: Five surfers can easily push an
performs this task very well. However, it also has a 800MHz machine to its limits with this.
redirect option that can read request information Rabbit allows you to view pages in their original

3 LINUX MAGAZINE 12 · 2001


AD FILTERS FEATURE

form by putting noproxy in front of the server


address: http://noproxy.www.altavista.digital.com/.
Install Rabbit with

gunzip RabbIT2.tar.gz; tar -xvf RabbIT2.tar;


it is started with jr. As for all other proxies, a restart
is necessary after any change in the configuration.
In ./conf /rabbit.conf you can see what Rabbit
regards as superfluous and consequently ignores.

# A filter to remove advertising from pages.


[rabbit.filter.AdFilter]
# The list of evils. Comma separated.
adlinks=.fsh,yimg.com,/ad/,/ads/,/ads2/,/netU
adsrv.,/ad.,/ads.,/ads2.,.ad.,.ads.,/ads1.,
.ads1.,/adv/,/cadv/,/adserver.,/adlog.,.adbaU
nnercenter.,/nsads.,adclick.,/banner.,
..

The first entry, .fsh, ensures that no file is loaded


that has .fsh in its name. This should protect you
from any more Flash ad banners.

Junkbuster
Junkbuster (version 2.0.2) is a classic. There are even
providers who let their customers use Junkbuster
directly. The program has no GUI, but it is very
stable. A typical Junkbuster logfile looks like this:

www.altavista.com/
www.altavista.com/images/img_avsubtitle_000U
.gif crunch!
www.altavista.com/images/pix.gif crunch!
www.altavista.com/images/img_avlogo_000.gifU
crunch!
ad.uk.doubleclick.net/ad/.../sponsor-buttonU manufacturer emphasises that there is no intention Adzapper's very easy-to-use
configuration menu invites you to
/toptext/lefta;sz=1x1 crunch! of doing this.
declare war on ad banners
The user can extend the database with local
The addresses marked crunch! are blocked by filters and is also able to pass identified ads to
Junkbuster and are never accessed. Guidescope so that they can be included in the
The heart of Junkbuster is the block file. The database. Guidescope is planning to provide central
entries determine directly which addresses are company databases for large commercial
called and which ones aren't. The sequence of customers.
entries is optional, but they should be divided into During testing, the installation instructions on
individual sections for the sake of clarity. the website turned out to be wrong. Guidescope
To start with, a ready-made block file will do, does work well for popular pages like Cnn.com.
but for our test there was a great need for Ironically, in its default setting it displays ad links
adaptation. We aimed for as few entries as possible – which supposedly makes it easier to get to good
and as many entries as necessary. This is an example Web pages. This feature can be switched off.
blocking all image files from Altavista.com:

# URLs: Webwasher
altavista.com/.*\.(gif|jpg|jpeg|png)
Webwasher (version 3.0) is free for non-commercial
use, a commercial license costs 29 Euro or $29 after
Guidescope a 30-day test phase. Webwasher.com was founded
by Siemens in 1998.
Guidescope is a semi-commercial product by former The manufacturer asserts that server-based
Junkbuster developers. At the time of testing, the Internet filters enable companies to provide their
price had not yet been set. Guidescope sends each staff with Internet access while still being able to
request to a central database, which returns a list of control which areas they can access. This is the only
images to be blocked. In theory, Guidescope can effective way of preventing abuse and unproductive
record who is looking at which pages, but the use of the Internet, such as the occasional little

12 · 2001 LINUX MAGAZINE 4


FEATURE AD FILTERS

engines like Google.

Clearway proxy undesirable


In December 1998 Clearway Technologies were
planning to launch an ad-blocking proxy program,
but the outcry, particularly from many small website
operators making their living from advertising – the
manufacturer's customer base for their other
products – led to Clearway withdrawing the
product. The official explanation was that the
Internet is, above all, about democracy and free,
open websites, and that the idea of filtering was
not compatible with this.

Conclusion
Of all the programs tested Webwasher is the best
solution for companies who need a filter version
that is always up to date. In addition, the Enterprise
edition offers the Dyna Blocator, a filtering
mechanism that is constantly updated by its own
search engine and also checks the content of
images. Apart from the standalone solution
Adzapper, Squid with filters like Adzap, is probably
the most stable and the fastest solution for home
use and company networks.
An overall evaluation is difficult, as a basic
game. Web filters protect productivity by making knowledge of scripting languages is sufficient to
life difficult for permanent surfers. According to a write your own filters quickly for any of these
study by the Meta Group, employees spend about programs. Unless you are planning to set up a proxy
40 per cent of their time on the Internet on things gateway, speed is of no consequence either. ■
that are nothing to do with their work.
The documentation is insufficient for a
commercial product. However, with a bit of
patience it is possible to find solutions to problems
such as Webwasher under Wine using search

The authors
Armin Roehrl and Stefan
Info
Schmiedl run the software forge Cnet: http://news.cnet.com
Approximity. Their main interests Yahoo Fusion Marketing: http://fusion.yahoo.com/resource_center/adspecs/flash.html
are high load and high Nessus Security Scanner: http://www.nessus.de
availability systems. RFC 2660: http://www.ietf.org/rfc/rfc2660.txt
Adzapper: http://www.zaplet.org/adzapper/
Regular expressions: http://www.python.org/doc/current/lib/module-re.html
Example Zaplets: http://www.zaplet.org/adzapper/updates.html
Squid: http://www.squid-cache.org
Adzap: http://www.zip.com.au/~cs/adzap
Muffin: http://muffin.doit.org/
Rabbit: http://www.nada.kth.se/projects/prup98/web_proxy/
Image Magick: http://www.imagemagick.org/
Junkbuster: http://internet.junkbuster.com/
ISP with Junkbuster: http://www.junkbusters.com/ht/en/ijbfaq.html#does
Guidescope: http://www.guidescope.com
Webwasher: http://www.webwasher.com/
Webwasher and Wine: http://www.miba.auc.dk/~bme/stuff/webwasher.html
Clearway Technologies stops ad blocker: http://news.cnet.com/news/0-1005-200-336086.html

5 LINUX MAGAZINE 12 · 2001


HISTORY 10 YEARS

LINUX HISTORY
This month sees the anniversary of Linux. Subject: What would you like to see most Newsgroups: comp.os.minix
It is 10 years old. It has come a long way since in minix?
its inception and the rate of development is Subject: Re: What would you like to see
speeding up. Only a year ago Red Hat and Summary: small poll for my new operating most in minix?
SuSE 7 launched – just two years ago system
Mandrake 6.1 was launched. Here we take a Summary: yes - it's nonportable
Message-ID:
look at the history of Linux as told by Linus.
<1991Aug25.205708.9541@klaava.Helsinki.F Message-ID:
The full transcripts can be found on the Web
I> <1991Aug26.110602.19446@klaava.Helsinki.
at www.li.org or in Linus' book, Just for Fun.
FI>
Date: 25 Aug 91 20:57:08 GMT
Date: 26 Aug 91 11:06:02 GMT
From: torvalds@klaava.Helsinki.FI (Linus Organization: University of Helsinki
Benedict Torvalds) Organization: University of Helsinki
Hello everybody out there using minix -
Newsgroups: comp.os.minix In article
I'm doing a (free) operating system (just <1991Aug25.234450.22562@nntp.hut.fi>
Subject: Gcc-1.40 and a posix-question a hobby, won't be big and professional jkp@cs.HUT.FI
like gnu) for 386(486) AT clones. This
Message-ID: has been brewing since april, and is (Jyrki Kuoppala) writes:
<1991Jul3.100050.9886@klaava.Helsinki.FI starting to get ready. I'd like any
> feedback on things people like/dislike > [re: my post about my new OS]
in minix, as my OS resembles it somewhat
Date: 3 Jul 91 10:00:50 GMT (same physical layout of the file-system >
(due to practical reasons) among other
Hello netlanders, things). >Tell us more! Does it need a MMU?

Due to a project I'm working on (in I've currently ported bash(1.08) and Yes, it needs a MMU (sorry everybody),
minix), I'm interested in the posix gcc(1.40), and things seem to work. This and it specifically needs a 386/486 MMU
standard definition. Could somebody implies that I'll get something (see later).
please point me to a (preferably) practical within a few months, and I'd
machine-readable format of the latest like to know what features most people >
posix rules? Ftp-sites would be nice. would want. Any suggestions are welcome,
but I won't promise I'll implement them >PS. Yes - it's free of any minix code,
Linus Torvalds :-) and it has a multi-threaded fs.
torvalds@kruuna.helsinki.fi
Linus (torvalds@kruuna.helsinki.fi) >>It is NOT protable (uses 386 task
PS. Could someone please try to finger me switching etc)
from overseas, as I've installed a PS. Yes - it's free of any minix code,
"changing .plan" (made by your's truly), and it has a multi-threaded fs. >
and I'm not certain it works from
outside? It should report a new .plan It is NOT protable (uses 386 task >How much of it is in C? What
every time. switching etc), and it probably never difficulties will there be in porting?
will support anything other than AT-
Then, almost two months later, I actually
harddisks, as that's all I have :-(. >Nobody will believe you about non-
had something working: I made sources for
portability ;-), and I for one would
version 0.01 available on nic sometimes Judging from the post, 0.01 wasn't
around this time. 0.01 sources weren't actually out yet, but it was close. I'd guess the >like to port it to my Amiga (Mach needs
actually runnable: they were just a token first version went out in the middle of a MMU and Minix is not free).
gesture to arl who had probably started to September ‘91. I got some responses to this Simply, I'd say that porting is impossible.
despair about ever getting anything. This next (most by mail, which I haven't saved), and I It's mostly in C, but most people wouldn't call
post must have been from just a couple of even got a few mails asking to be beta-testers what I write C. It uses every conceivable
weeks before that release. for Linux. After that just a few general feature of the 386 I could find, as it was also a
answers to quesions on the Net: project to teach me about the 386. As already
mentioned, it uses a MMU, for both paging
From: torvalds@klaava.Helsinki.FI (Linus (not to disk yet) and segmentation. It's the
Benedict Torvalds) From: torvalds@klaava.Helsinki.FI (Linus segmentation that makes it really 386
Benedict Torvalds) dependent (every task has a 64Mb segment
Newsgroups: comp.os.minix for code & data - max 64 tasks in 4Gb.

1 LINUX MAGAZINE 12 · 2001


10 YEARS HISTORY

The UK's premier provider of LiNUX IT solutions

Founded in 1998 iTS-LiNUX quickly to have great staff at iTS-LiNUX people who
established itself in the expanding market. are prepared to put in the time and effort to
iTS-LiNUX has become noted for its cost- ensure that the job is done right, and if its
conscious, innovative and creative solutions, never been done before they will invent ways
acquiring clients such as Banks and other to get the job done, in fact, according to
financial institutions, The Economist Group, IBM's own engineers, our CTO Andy Roffe,
Crewe Alexandra Football Club, utility was the first person ever to get Lotus Notes
companies, manufacturing and engineering running on Linux, and they still aren't sure
companies, ISP's and Internet organisations how he did it."
Local Government and Educational iTS-LiNUX in association with IBM and
establishments, e-commerce companies and Trustix recently announced the Goldbox as
many many "bricks and mortar" SMEs. the total IT solution for SMEs
When asked about their level of current iTS-LiNUX have become the prime
success, Matthew Clarke (Managing Director) distributor for the much admired Trustix range
replied "Naturally part of our success is due to of firewalls and secure server
the growth of the Linux market in the UK as a management tools.
whole, but as we've not, until recently, been The future looks promising indeed for iTS-
in a position to expand by acquisition, we LiNUX "We have made significant strides
have had to focus our efforts on working over the past 12 months, and are now
harder and producing better results for our looking to expand rapidly, taking on many
clients." he went on to say "We are fortunate more clients, and much larger projects."

12 · 2001 LINUX MAGAZINE 2


HISTORY 10 YEARS

Anybody who needs more than 64Mb/task - Some of my "C"-files (specifically mm.c) Note: linux has in fact gotten more
tough cookies). It also uses every feature of are almost as much assembler as C. It would portable with newer versions: there was a lot
gcc I could find, specifically the __asm__ be "interesting" even to port it to another more assembly in the early versions. It has in
directive, so that I wouldn't need so much compiler (though why anybody would want fact been ported to other architectures by now.
assembly language objects. to use anything other than gcc is a mystery). In Jan 92 things had moved on with a

From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds) place in /pub/gnu.

Newsgroups: comp.os.minix ALERT! WARNING! NOTE! These sources still need minix-386 to be
compiled (and gcc-1.40, possibly 1.37.1, haven't tested), and
Subject: Free minix-like kernel sources for 386-AT you need minix to set it up if you want to run it, so it is not
yet a standalone system for those of you without minix. I'm
Message-ID: <1991Oct5.054106.4647@klaava.Helsinki.FI> working on it. You also need to be something of a hacker to set
it up (?), so for those hoping for an alternative to minix-386,
Date: 5 Oct 91 05:41:06 GMT please ignore me. It is currently meant for hackers interested
in operating systems and 386's with access to minix.
Organization: University of Helsinki
The system needs an AT-compatible harddisk (IDE is fine) and
Do you pine for the nice days of minix-1.1, when men were men EGA/VGA. If you are still interested, please ftp the
and wrote their own device drivers? Are you without a nice README/RELNOTES, and/or mail me for additional info.
project and just dying to cut your teeth on a OS you can try to
modify for your needs? Are you finding it frustrating when I can (well, almost) hear you asking yourselves "why?". Hurd
everything works on minix? No more all-nighters to get a nifty will be out in a year (or two, or next month, who knows), and
program working? Then this post might be just for you :-) I've already got minix. This is a program for hackers by a
hacker. I've enjouyed doing it, and somebody might enjoy
As I mentioned a month(?) ago, I'm working on a free version of looking at it and even modifying it for their own needs. It is
a minix-lookalike for AT-386 computers. It has finally reached still small enough to understand, use and modify, and I'm
the stage where it's even usable (though may not be depending looking forward to any comments you might have.
on what you want), and I am willing to put out the sources for
wider distribution. It is just version 0.02 (+1 (very small) I'm also interested in hearing from anybody who has written any
patch already), but I've successfully run bash/gcc/gnu- of the utilities/library functions for minix. If your efforts
make/gnu-sed/compress etc under it. are freely distributable (under copyright or even public
domain), I'd like to hear from you, so I can add them to the
Sources for this pet project of mine can be found at system. I'm using Earl Chews estdio right now (thanks for a
nic.funet.fi (128.214.6.100) in the directory /pub/OS/Linux. nice and working system Earl), and similar works will be very
The directory also contains some README-file and a couple of wellcome. Your (C)'s will of course be left intact. Drop me a
binaries to work under linux (bash, update and gcc, what more line if you are willing to let me use your code.
can you ask for :-). Full kernel source is provided, as no
minix code has been used. Library sources are only partially Linus
free, so that cannot be distributed currently. The system is
able to compile "as-is" and has been known to work. Heh. PS. to PHIL NELSON! I'm unable to get through to you, and keep
getting "forward error - strawberry unknown domain" or
Sources to the binaries (bash and gcc) can be found at the same something.

newsgroup alt.os.linux but a message from "Linux is Obsolete" started a flame war. with supporters for both sides eventually
Prof Andy Tanenbaum (AST) (wrote Minix) on The flame war got quite heated at times agreeing to disagree.

From: ast@cs.vu.nl (Andy Tanenbaum) do in the evening when I get bored writing books and there are
no major wars, revolutions, or senate hearings being televised
Newsgroups: comp.os.minix live on CNN. My real job is a professor and researcher in the
area of operating systems.
Subject: LINUX is obsolete
As a result of my occupation, I think I know a bit about where
Date: 29 Jan 92 12:12:50 GMT operating are going in the next decade or so. Two aspects stand
out:
Organization: Fac. Wiskunde & Informatica, Vrije Universiteit,
Amsterdam 1. MICROKERNEL VS MONOLITHIC SYSTEM

I was in the U.S. for a couple of weeks, so I haven't commented Most older operating systems are monolithic, that is, the whole
much on LINUX (not that I would have said much had I been operating system is a single a.out file that runs in 'kernel
around), but for what it is worth, I have a couple of comments mode.' This binary contains the process management, memory
now. management, file system and the rest. Examples of such systems
are UNIX, MS-DOS, VMS, MVS, OS/360, MULTICS, and many more.
As most of you know, for me MINIX is a hobby, something that I

3 LINUX MAGAZINE 12 · 2001


10 YEARS HISTORY

First Started : October 1999


Distributions Used: Debian, FreeBSD
Specialist Area: Information Technology Management.

Current Perspective : Future Predictions. Growth Areas:


Wired 4 Life was established to actively A business' core function should not be to Many customers are realising that developing
promote Open Source and GPL based continually support costly software and intranet applications using Open Source
software. Realising that many businesses are hardware upgrades required by commercially products allows costs of projects to be spread
seeing increasing costs in software purchases driven products. In adopting Open Source out amongst the Open Source community.
despite continuing reductions in the cost of software and building on that philosophy, a Making the source „Open‰ means ensuring
hardware. To compensate Wired 4 Life is business can drive development of more that they are not railroaded into a technology
encouraging businesses to implement Open reliable applications whilst maintaining driven product.
Source and GPL applications, utilising shared control over their own internal processes.
file services such as Samba, internal and Sharing the cost of software development
external E-mail through the many varieties of means new applications can be born and
mail applications and providing Internet common standards will be built upon which
access and firewalls, using tools commonly no single entity can control. Open Source is
distributed with Linux and FreeBSD. Much of returning control to the consumer.
Wired 4 Lifes' business arrives via referral or
word of mouth which is a testament to Wired
4 Lifes commitment to customer satisfaction.

12 · 2001 LINUX MAGAZINE 4


HISTORY 10 YEARS

The alternative is a microkernel-based system, in which most of became an 8008. Then it underwent plastic surgery and became
the OS runs as separate processes, mostly outside the kernel. the 8080. It begat the 8086, which begat the 8088, which begat
They communicate by message passing. The kernel's job is to the 80286, which begat the 80386, which begat the 80486, and so
handle the message passing, interrupt handling, low-level on unto the N-th generation. In the meantime, RISC chips
process management, and possibly the I/O. Examples of this happened, and some of them are running at over 100 MIPS.
design are the RC4000, Amoeba, Chorus, Mach, and the not-yet- Speeds of 200 MIPS and more are likely in the coming years.
released Windows/NT. These things are not going to suddenly vanish. What is going
to happen is that they will gradually take over from the 80x86
While I could go into a long story here about the relative line. They will run old MS-DOS programs by interpreting the
merits of the two designs, suffice it to say that among the 80386 in software. (I even wrote my own IBM PC simulator in C,
people who actually design operating systems, the debate is which you can get by FTP from ftp.cs.vu.nl = 192.31.231.42 in
essentially over. Microkernels have won. The only real dir minix/simulator.) I think it is a gross error to design an
argument for monolithic systems was performance, and there is OS for any specific architecture, since that is not going to be
now enough evidence showing that microkernel systems can be around all that long. MINIX was designed to be reasonably
just as fast as monolithic systems (e.g., Rick Rashid has portable, and has been ported from the Intel line to the 680x0
published papers comparing Mach 3.0 to monolithic systems) that (Atari, Amiga, Macintosh), SPARC, and NS32016. LINUX is tied
it is now all over but the shoutin`. fairly closely to the 80x86. Not the way to go.

MINIX is a microkernel-based system. The file system and Don`t get me wrong, I am not unhappy with LINUX. It will get
memory management are separate processes, running outside the all the people who want to turn MINIX in BSD UNIX off my back.
kernel. The I/O drivers are also separate processes (in the But in all honesty, I would suggest that people who want a
kernel, but only because the brain-dead nature of the Intel **MODERN** "free" OS look around for a microkernel-based,
CPUs makes that difficult to do otherwise). LINUX is a portable OS, like maybe GNU or something like that.
monolithic style system. This is a giant step back into the
1970s. That is like taking an existing, working C program and Andy Tanenbaum (ast@cs.vu.nl)
rewriting it in BASIC. To me, writing a monolithic system in
1991 is a truly poor idea. P.S. Just as a random aside, Amoeba has a UNIX emulator
(running in user space), but it is far from complete. If there
2. PORTABILITY are any people who would like to work on that, please let me
know. To run Amoeba you need a few 386s, one of which needs
Once upon a time there was the 4004 CPU. When it grew up it 16M, and all of which need the WD Ethernet card.#

eoff (end of flame fest :-) very important one. It can be found at
http://www.gnu.org/gnu/the-gnu-
project.html
Although we always use the term Linux,
From: dingbat@diku.dk (Niels Skov Olsen) Niels most of the time we are refering to
GNU/Linux as we are including other
Newsgroups: comp.os.minix Professor Tanenbaum eventually released components with the kernel.
MINIX as public domain with the source and So where does this leave us. Well after 10
Subject: Re: 1.6.17 summary and why I various versions exist supporting hardware years we have an OS that competes on the
think AST is right. from Ataris to SPARC stations. world market (As I write MacDonalds have
With hindsight it is easy to look at the announced 4000 stores are to change to
Date: 10 Feb 92 17:33:39 GMT
arguements of Microkernel and Monolithic Linux). The OS runs on lots of differing
systems, but at the time it seemed to be a architecture using preemptive multitasking
Organization: Department of Computer
Science, U of Copenhagen major problem. AST jokingly awarded Linus supporting multi users. The IT industry is
michael@gandalf.informatik.rwth- two F grades for poor design. starting to understand Open Source and the
aachen.de (Michael Haardt) writes: Releases happened fast with some just desktop is becoming fun. In the next 10 years
weeks apart. New features and support was your guess is probably better than mine. Will
>Stop flaming, MINIX and Linux are two growing. Finally in March 92 the version the Internet be even more pervasive? Just
different systems with different number jumped from 0.12 to 0.95 as it was how fast can machines go? Problems ahead
purposes. almost a full release. It then took until 13/3/94 do exist such as software patent law and
for 1.0 to hit the world. Version 2.0 hit in June governmental control, but I still predict an
>One is a teaching tool (and a good one I
96 and 2.4 finally in January 2001. On the CD Open Source world will eventually dominate.
think), the other is real UNIX for real
you will find a copy of 0.01 just for fun.
hackers.
The listing of kernel revisions is held at
http://www.memalpha.cx/Linux/Kernel/Maste
r.html
Hear, hear! And now Linux articles in The beginnings of the GPL and the GNU
alt.os.linux (or comp.os.misc if your project go back further than 10 years to
site don't receive alt.*) and Minix January 1984 and the story of how Richard
articles here. Stallman developed the project after the IT
industry changed to proprietary software is a

5 LINUX MAGAZINE 12 · 2001


10 YEARS HISTORY

Celebrating 10 years
of Linux

Roger Whittaker
SuSE Linux Ltd

The old saying about how 'mighty oaks from


tiny acorns grow' was never more appropriate
than in the case of Linux. We have certainly
come a long way since that famous email
(August 25th 1991) which could be
considered the first announcement of Linux
and which began as follows.
Hello everybody out there using minix -
I'm doing a (free) operating system (just a
hobby, won't be big and professional like
gnu) for 386(486) AT clones. This has been
brewing since april, and is starting to get
ready. I'd like any feedback on things people
like/dislike in minix, as my OS resembles it
somewhat (same physical layout of the file-
system (due to practical reasons) among other
things) [ ... ]
What began as 'just a hobby' has become
extremely big and very professional. There is
indeed much to celebrate: far too much to
mention here. But in particular this is a good
time to remember the phenomenal work
done in those earliest days by Linux Torvalds
as he slipped from computer to bed and back
hardly noticing whether it was day or night. It
is also a good time to celebrate the
extraordinary prescience and foresight of his
decision to make the code available under the
GPL which allowed the open-source
development model to work its magic.
Speaking personally, the excitement and
fascination of exploring Linux led me to make
a complete career change and join SuSE, the
oldest existing Linux company. SuSE began in
1992 and started distributing Linux in the
following year: originally a localised version of
Slackware for the German market, but very
soon a distribution in its own right with an
international presence.
Linux has changed the world of
computing: the power of the open source
method has ensured that. 'World
domination' has not arrived (yet), but no-one
in the industry whichever side they are on can
possibly ignore it.

Yes, there is indeed plenty to celebrate.

12 · 2001 LINUX MAGAZINE 6


HISTORY 10 YEARS

Major developments in the last two years.


January, 1999 November, 1999 July, 2000
Samba 2.0 is released. Slackware 7 is released. StarOffice is to be released under the GPL.
Kernel 2.2.0 is released Reiserfs with journaling is released. Red Hat release Source Navigator under GPL.
Blackdown's JDK 1.2 Kondara MNU/Linux 1.0 is released. e-smith server 4.0 is released.
February, 1999 Corel launches its Linux distribution. August, 2000
Brave Gnu World starts. SuSE 6.3 is announced. Debian 2.2 is released.
Kernel 2.2.1 released. Mozilla Milestone 11 is released. IBM release the Andrew Filesystem (AFS)
Lyx 1.0.0 is released. Real-time Linux 2.0 is released. under the IBM Public License.
Linux-Mandrake 5.3 is released. December, 1999 XEmacs/GTK is released.
KDE 1.1 is released. Linux kernel 2.3.30 is released. LinuxPrinting.org, started.
Samba 2.0.2 SuSE 6.3 starts shipping. Blue Cat Linux 3.0 is released.
SuSE 6.0 released. Zope 2.1.1 is released. SuSE 7.0 is released.
Glibc 2.1 is released. Bastille Linux 1.0.0 is released. September, 2000
March, 1999 Development kernel 2.3.33 is released. Qt library released under the GPL.
Gnome 1.0 is released. Debian 2.1r4 is released. Python 1.6 and 2.0b1 are released.
Kernel 2.2.3 is released. Storm Linux 2000 is released. RSA encryption algorithm made public domain.
Debian 2.1 is released. Mozilla M12 is released. SmoothWall released.
April, 1999 January, 2000 Red Hat 7 is released.
Caldera OpenLinux 2.2 is released. SGI make OpenGL open source license. October, 2000
SuSE 6.1 is released. Mozilla M13 is released. SAP release its database under the GPL.
Python 1.5.2 is released. Linux-Mandrake 7.0 is released. The StarOffice source released.
KDE 1.1.1 beta is released. February, 2000 Turbolinux Workstation Pro 6.1.
Red Hat 6.0 is released. IBM's Journaled File System released as GPL. Python 2.0 is released.
May, 1999 OpenSSH 1.2.2 is released. KDE 2.0 is released.
Definite Linux 6.0 is released. Hard Hat Linux 1.0 is released. Linux-Mandrake 7.2 is released.
Tcl 8.1 is released. BlackCat Linux 1.0 is released. November, 2000
KDE 1.1.1 is released. TurboLinux 6.0 released. Debian 2.2r1 is released.
Kernel 2.2.8 comes out, and 2.3.0. March, 2000 Netscape 6 is released.
Slackware 4.0 is released. Helix Gnome started. Red Hat 7 on the Alpha is released.
Corel's WordPerfect for Linux. XFree86 4.0 is released. SuSE Linux 7.0 for the Alpha is released.
Linux-Mandrake 6.0 is released. Trustix 1.0, is released. Trustix Secure Linux 1.2 is released.
June, 1999 Chinese Penguin64 is released. December, 2000
LinuxPPC 5.0 is released. Red Hat 6.2 is released. Bruce Perens moves to HP.
PostgreSQL v6.5 is released. FreeBSD 4.0 is released. Conectiva 6.0 is released.
TurboLinux Workstation 3.6 is released. Perl v5.6.0 is released. Debian 2.2r2 is released.
Qt 2.0 is released. April, 2000 OpenBSD 2.8 is released.
Sun releases the JDK 1.2.2. Corel Word Perfect Office 2000 released. Mailman 2.0 is released.
July, 1999 Gimp 1.1.20 is released. The source to Solaris 8 is released.
Midgard 1.1 is released. Samba 2.0.7 is released. NetBSD 1.5 is released.
Oracle releases Oracle8i for Linux. Vine Linux 2.0 is released. Mozilla 0.6 is released.
IBM released DB2 for Linux. Plamo Linux 2.0 is released. January 2001
August, 1999 Applixware 5.0 is announced. 2.4.0 Kernel is released.
Stable kernel 2.2.11 is released. Mozilla M15 is released. SuSE 7.1 is released.
Definite Linux 6.1 is released. Qt 2.1 is released. February 2001
Midgard 1.2 is released. Netscape 6 preview release 1. KDE 2.1 is out
September, 1999 IBM introduces DB2 Universal Database V7. March 2001
Zope 2.0 is released. Trustix Secure Linux 1.0 is released. Progeny Debian RC1
Bind 8.2 is released. May, 2000 April 2001
Caldera OpenLinux 2.3 is released. IBM announces that Linux for its RedHat 7.1 released.
GnuPG 1.0 is released. S/390 mainframe. Mandrake 8.0 released.
Debian 2.1r3 is released. PostgreSQL 7.0 is released. May 2001
Development kernel 2.3.18 is released. June, 2000 Eazel closes
KDE 1.1.2 is released. Slackware 7.1 is released. June 2001
Linux-Mandrake 6.1 is released. MySQL now under the GPL. SuSE 7.2 released
October, 1999 Bastille Linux 1.1 is released. Caldera OpenLinux Workstation 3.1
Definite Linux 7.0 is released. BlueCat Linux release 2.0. Caldera OpenLinux Server 3.1
Red Hat Linux 6.1 is released. Linux-Mandrake 7.1 is released. July 2001
IBM announces their JVM for the JDK 1.1.8. Dmitry Sklyarov is arrested.

7 LINUX MAGAZINE 12 · 2001


10 YEARS HISTORY

The Master of One,


The Jack of Many

"So, you've good uptime"?

"Yes. A number of our shared servers have been


running without reboot for over a year"

"Excellent. And logging, good bandwidth, free


support..?"

"Yes, and more."

"Sounds great. And ASP scripting? My site runs from


an Access Database."

"Erm..."

Hereafter, if the sales call is to a technically "agnostic"


hosting provider, it's a one-way trip to the clutches of its
NT department, where the notion of 300+ days of uptime
is as absurd as the eventual site defacement is inevitable.
Some providers, however, aren't willing to be the Jack of
all trades. The proprietorially-wedded customer is asked to
be "always right" elsewhere.

The Positive Internet Company (http://www.positive-


internet.com/), based in London, gives just this dogged
message to prospective customers, and the reactions
range from incredulity ("I thought Bill Gates invented the
Internet!") to interest ("There are genuine alternatives to
being a Microsoft serf?").

Positive's choice to use just GNU/Linux and associated


Free software in its hosting and dedicated service provision
has its basis in efficiency, flexibility and even morality:
"We install and run facilities managed servers for very
big household names. The notion of doing this without
compiling afresh from the source code is alien: almost a
dereliction of duty!" says Andrew Och, an engineer at the
Company. He continues: "From our shared hosting right
up to our renowned Enterprise Max dedicated server,
customers are delighted with the reliable flexibility on
offer in the Free software ecosystem. And we're delighted
that it lets us run rings around the competition!"

With PHP, Perl, MySQL, Python, Java servlets and JSP,


customers kick the ASP habit quickly, particularly with
Positive's enthusiastic support team on hand.

Och chuckles, "I sometimes hope Microsoft continue


their successful marketing, because it means we always
have the secret of a GNU/Linux based system up our
sleeve: digital magic to a jaded MS veteran". But, with
every passing Code Red incident, the trend towards
GNU/Linux is unstoppable; increasingly, when a
customer's Access/ASP question is replied in the negative,
the retort is "Thank heavens - where do I sign up?"
KNOW HOW TCL/TK

Universal tool

A WIDE
CANVAS CARSTEN ZERBST

Canvas offers you a virtual canvas that allows


you to display objects such as lines, surfaces,
bitmaps and fonts. However, possibilities are not
limited to display. Objects can also be manipulated,
either in a pre-programmed process or interactively
by the user. Canvas can also export the finished
masterpiece as postscript. Due to its functional
range, it forms the basis of many drawing programs
(Impress for example).
The source text in Listing 1 demonstrates some
of the Canvas widget's features. As in the last
instalment of Tcl, we're dealing with the
representation and manipulation of type 1 fonts
(postscript fonts). The screenshot in Figure 1 is taken
from the detailed version of the program, which
draws an exclamation mark consisting of an upright
Tcl/Tk's universal tool bar (actually a polygon) and a spherical base.
for 2D graphics is the Canvas
widget. It can represent, Objects
manipulate and animate simple Firstly, two arrows are going to illustrate the
1000x1000 point design space of type 1 characters.
and complex graphic objects The coordinate axes are pointing upwards and to the
and enable mouse access. right. However, the Canvas widget uses its own
coordinate system that cannot be changed. In this, the
axes point downwards and to the right, as in X11. It is
Most user interfaces can be designed using the the programmer's job to create objects in Canvas with
usual GUI elements like buttons, entry fields and coordinates that have been converted – or can convert
labels. But some tasks go beyond the limits of these them using canvasName scale Element.
widgets. Whether you want to illustrate a factory's For the first two lines of Listing 1 the y
material flow, conjure up the romance of steam coordinate's sign is simply reversed. A negative
trains or just want to give your program an interface scaling factor along the y axis has the same effect
that is a bit out of the ordinary, look no further than for the remaining elements.
the Canvas widget. New Canvas objects are always created in the
same way. The syntax is canvasName create Type
Table 1: Attributes of Canvas Objects Coordinates Attributes. Table 1 contains a listing of
Tags List of tags important attributes.
-fill Colour colour of lines and surfaces If the commands from the listing are entered
-outline Colour colour of outlines one at a time (such as in Tkcon), not much of the
-width Width width of lines and outlines two lines is visible at first. The Canvas widget must
-dash Pattern line pattern, e.g. "-.." first be told which region to display. This is done
-stipple Pattern bitmap for shading, e.g. gray25 with the -scrollregion option. Considering the size
-arrow Where arrow point (none, first, last, both) and resolution of today's monitors, the display
-smooth Boolean splines instead of polygon could be smaller. This is achieved by simply scaling
down the arrows (in our example by a factor of 0.4).

1 LINUX MAGAZINE 12 · 2001


TCL/TK KNOW HOW

Listing 1: Canvas widget with some objects


canvas .c -width 400 -height 500 -bg white \
-xscrollcommand [list .hscroll set] \
-yscrollcommand [list .vscroll set]
scrollbar .hscroll -orient horizontal -command [list .c xview]
scrollbar .vscroll -orient vertical -command [list .c yview]

grid .c .vscroll -sticky news


grid .hscroll -sticky ew
grid columnconfigure . 0 -weight 1
grid rowconfigure . 0 -weight 1

# Two lines with arrow points


.c create line -100 0 1100 0 -fill red -arrow last -tags coord
.c create line 0 400 0 -1100 -fill red -arrow last -tags coord
.c configure -scrollregion {-100 -1100 400 1100}

# Scaling
set scale 0.4
.c scale coord 0 0 $scale $scale
.c configure -scrollregion [.c bbox all]

Figure 1: The complete example draws an # Bar


exclamation mark with several check points and set item [.c create polygon 440 800 560 800 530 270 470 270 \
displays the current mouse position
-fill seagreen2 -outline seagreen4 -tags outl1 ]
.c scale $item 0 0 $scale -$scale

Manipulated objects # A node


.c create rectangle 430 790 450 810 -tags {node outl1} \
Each manipulation must specify which object it is -fill seagreen2 -outline seagreen4
referring to. This can be done in two ways: using IDs .c scale node 0 0 $scale -$scale
or tags (markings). Each object is assigned a unique ID
when it is created. This could be stored for later use, # A curve
but it's easier to use tags. Each object can contain one set item [.c create line 400 60 400 100 450 140 500 140 \
or more tags, by which it can be addressed instead of -smooth true -fill seagreen4 ]
by its ID. Two tags always exist – all for all objects and .c scale $item 0 0 $scale -$scale
current for the most recent object.
# Some text
After scaling down, the arrows should be
.c create text 100 -100 -text "Print with ^p"
completely visible. However, the scroll region still
has to be adapted to the new dimensions. Instead # Output of coordinates
of specifying the area directly as before, we will use proc coords {x y} {
the command bbox. It determines the region within set x [expr {[.c canvasx $x]/$::scale}]
Canvas that is occupied by objects. set y [expr {-[.c canvasy $y]/$::scale}]
We want to create an exclamation mark as a puts stdout "x: $x\ty: $y"
simple outline. The widget itself can deal with scaling }
and reflection in the y direction. Like the arrows bind .c <Motion> {coords %x %y}
before, the bar is scaled down as soon as it is created.
# Selection
A negative scaling factor along the y axis takes care of
proc deselect {} {
reflection. Scaling only ever applies to coordinates – .c itemconfigure outl1 -outline green4 -fill green2
line width or text size are not affected. In our example, .c bind outl1 <Button-1> select
one corner of the bar still contains a little square. }
proc select {} {
.c itemconfigure outl1 -fill firebrick1 -outline firebrick4
Spherical objects
.c bind outl1 <Button-1> deselect
After the bar, it's the turn of the base. It does not }
simply consist of a circle, but has a more complex .c bind outl1 <Button-1> select
shape formed of several curves. In order to be able
# Printing the visible region
to represent curves instead of straight lines, the
proc printing {} {
option -smooth true exists for lines and polygons. puts stderr "Print postscript canvas.ps"
The display uses splines, which smooth the set fd [open canvas.ps w]
transition between two consecutive line segments. puts $fd [.c postscript ]
To introduce a bend into a spline curve, the bending close $fd
point must be contained twice in the list of }
coordinates. Type 1 fonts use bezier curves, defined bind . <Control-p> printing

12 · 2001 LINUX MAGAZINE 2


KNOW HOW TCL/TK

Interactive objects
News from the Tcl world
Jeffrey Hobbes has published a new version of Tkcon, a tool for every Tcl To be able to select or move objects with the
developer. It would be unfair on Tkcon to describe it simply as a substitute mouse, they must first react to it. The command
for the normal Tcl command line interface. Tkcon offers the same usability canvasName bind TagOrID Event Command is used
when working with Tcl that you will be accustomed to from Tcsh or Bash. to instruct one or more Canvas objects to react to a
Tkcon automatically completes file names as well as Tcl commands and specified event. In our example, when you click on
variables. In addition, it has other features that you will be familiar with the bar, it changes colour.
from fully-fledged editors, such as syntax highlighting and display of Lastly, we want to output the whole thing as
bracket levels. You can browse through name spaces with ease, extensions postscript. Using canvasName postscript, this is no
installed in the system can be loaded at a mouse-click, and much more problem either. If no printing area is specified, the
besides. Tkcon makes working with Tcl even more fun. output only contains the visible Canvas region.
Otherwise, the required section has to be specified.
Tkcon as universal tool When using texts in Canvas, it is advisable to
Tkcon not only offers valuable support when trying out new things but also remember that there are often more fonts installed
helps with debugging. It is even ideally suited to writing applications, as it than the printer will recognise. Either limit yourself
can display individual variables or load improved source text at runtime. to the 35 standard fonts or embed the additional
The Tcl extension Snack is undergoing quite a bit of development. This is fonts in the postscript file at a later date.
nothing to do with fatty foods rich in carbohydrates, but rather with sound.
Language researchers at the Royal College of Stockholm have created a tool How many dimensions?
that can deal with many sound processing tasks. Snack can record and play
sounds, edit and distort them and carry out further processing. If you're The Canvas widget offers a lot of functionality for
planning on dissecting your MP3 files, you may as well do it with Snack. 2D graphics, either purely for display purposes, for
Wavesurfer (see Figure 2), a handy program for editing audio files, uses Snack. user interfaces or for creating graphics with a lot of
The way to your own MP3 player has never been as easy as with this extension. interactions. Help is also available. For instance,
Pstoedit can prepare many postscript files so that
Reading matter they can be represented with Canvas. Gnuplot can
If you'd like to see what others are getting up to with Tcl/Tk, we'd output its graphics directly in Canvas widget format.
recommend a look at the pages of the 2nd European Tcl/Tk User Meeting. If, however, you're thinking more in terms of 3D
There is a wide range of papers, the focus this year was on the use of Tcl on for graphics, Canvas won’t make you happy.
the Web. Even though not nearly as much fuss is made about Tcl as about Depending on your exact requirements, the
some of its alternatives, Tcl is working behind the scenes of AOLserver and OpenGL widget Togl may be better suited, or VTK
Vignette's Story server, both of which are hardly the smallest in their field. for processing and representing scientific data, or
Fringe areas such as the coupling of COBOL with Tcl are examined, along the game engine Nebula Device.
with the application of Tcl for game control or as a testing tool. After this rather picture-heavy instalment, the
next issue of Tcl will describe how to design a really
user-friendly Tcl/Tk application. ■

Info
Tkcon: http://tkcon.sourceforge.net
Figure 2: Wavesurfer
not only plays Snack: http://www.speech.kth.se/snack/
and processes 2nd European Tcl/Tk User Meeting:
audio files, but also
displays wave http://www.tu-harburg.de/skf/tcltk
forms graphically. AOLserver: http://aolserver.com
This picture shows
a WAV file
Wiggles: http://www.wiggles.com
Animated steam loco: http://mini.net/cgi-
bin/wikit/1329.html
Xtcc: http://www.tu-
harburg.de/skf/tcltk/papers2000/xtcc.pdf
by two nodes and two check points. The example Impress:
The author for the first segment only uses four points. http://www.ntlug.org/~ccox/impress/index.html
Carsten Zerbst is a member of Work with Canvas often requires the mouse Pstoedit:
staff at Hamburg-Harburg position. The location within the system of screen http://www.geocities.com/SiliconValley/Networ
Technical University. Apart from coordinates is of less interest than the Canvas position. k/1958/pstoedit/
researching service integration on The commands canvasx and canvasy convert the Togl: http://sourceforge.net/projects/togl/
board ships, he investigates position, taking the current scroll position into account, VTK: http://www.kitware.com
Tcl in all its forms. but not scaling. The coords function divides the Nebula Device: http://www.radonlabs.de
coordinates by the scaling factor and then outputs the
converted coordinates on the command line. ■

3 LINUX MAGAZINE 12 · 2001


PASSWORDS KNOW HOW

Easy protection with

PASSWORD
POLICIES When I turn up at different
companies I look around a typical
office and it is easy to work out
JOHN SOUTHERN

login names. Passwords on a system Here we can see the encrypted password
is wfR0W8eSzI1Lo
that you control however should be The 11386 refers to the last time the
more secure and not too obvious. password was changed in the days
since 1/1/70
The 0 refers to the number of
On your Linux system the passwords are stored in days before the password may
the plain text file /etc/passwd be changed.
You can view this file with any text editor. A The 99999 is used for the
typical line is number of days before the
password must be changed.
darth:x:500:100:Darth Maul:/home/darth:/bin/bash
7 shows the number of days
This can be split up as follows: before a password change is forced
that the user will be warned. The
darth - Login Name
following 0 shows the time in days when
x - Encrypted password
the account is disabled after the password
500 - UID (User IDentity number)
expires. Following this could be the number of days
100 - GID (Group IDentity number)
Darth Maul - GCOS (Extra info about the user U until the account is disabled. A final field is a
such as name etc,.) reserved field.
/home/darth - Home Directory Looking at the encrypted password: If we take
/bin/bash - Shell used an eight-letter password, for example ABCDEFGH,
this is first encoded with a salt seed. The salt seed is
As we can see the password is shown as an x a two-character string giving 4096 combinations.
which indicates that we are using shadow This is the first two characters of the password. The
passwords. If we are not the password is a string lowest seven bits of each letter of the password is
which has been encrypted with the DES (Digital then used to generate a 56-bit key for the DES
Encryption Standard). algorithm to run against. The generated 11 ASCII
The problem with just using DES is that the character is added onto the seed to give the 13-
/etc/passwd file is readable to everyone, character encrypted password.
otherwise they would not be able to sign onto Simple dictionary attacks are now fairly quick
the system. This means that they could in turn with some 500,000 words being contained in all
read the encrypted string in a simple text editor. seed combinations and sorted in order. Compared
By using a dictionary attack program such to the password this greatly aids the cracker.
as Crack To overcome this weakness, passwords should,
ftp://ftp.cert.dfn.de/pub/tools/password/Crack/, as we all know, be random letters and characters
which tries a word from its dictionary and and not make sensible words. The usual policies
compares it with the encrypted string until about changing passwords often also apply. To
eventually it guesses correctly. make the password a little more safe requires us to
On the other hand, this is sometimes a good use the MD5 encryption method, which is a little
way to recover passwords and really depends on stronger than DES.
just how much security you need. Shadow Mind you, this is the usual case of do as
passwords are stored in /etc/shadow file which recommended and not as I do. As I write this I have
only root has read permissions. been roothacked.
Signing on as root and looking at the file we Yet another re-install and this time I will use
get a typical line as Tripwire. Still, on the bright side I do have a new box
darth:wfR0W8eSzI1Lo:11386:0:99999:7:0:: set distro somewhere... ■

12 · 2001 LINUX MAGAZINE 65


KNOW HOW INSTALLATION

Installing Open-Source
Software on Linux

RPM LOADING CHRIS BROWN


Everyone needs to update their
system with new programs from
time to time. Here, we show you
how to find and install applications
simply and painlessly.

guaranteed a working, useful system with a


reasonable collection of tools. Sooner or later,
though, you're going to want to use something that
the default installation didn't include. Or you may
want a package that isn't part of your Linux
distribution at all. Or you might want to install a
more recent version of a package than the one
you're running now, perhaps because it fixes bugs
which are troubling you, or has new features you
When you install a Linux need, or closes security holes which have been
distribution, the installation discovered.
software will ask you to specify In this article we're going to learn how we can
what pieces you want to include. Usually obtain and install new software packages on Linux.
it provides default selections such as a 'standard More often than not, finding the package in the
workstation' install, and if you're new to Linux, first place is the hardest part. So we'll look at ways
chances are you'll go with the default. You'll be of searching for software, too.

Figure 1:Finding
RPMs.

66 LINUX MAGAZINE 12 · 2001


INSTALLATION KNOW HOW

Figure 2: Check the


information before
you download

The sheer wealth of free software available for RPM is that it keeps a database of packages already
Linux can be overwhelming - what one might call installed on your system, and if you want to install a
an 'embarrassment of riches', to quote Abbe new package it will tell you if any of the pre-
D'Allainval. Well, actually, he said it in French, and requisite packages required by the new package
since he died in 1753 he most likely wasn't talking aren't present. Missing pre-requisites are the most
about software. But the sense of the phrase is that likely cause of failure when installing a new
the more alternatives you have, the more difficult it package. Although RPM doesn't magically fix the
is to choose. problem, it does at least give you a clear statement
of what's missing.
Distribution formats
Installing an RPM
Software packaged for Linux is available in a
number of formats. The two you'll most often Let's take an example of locating and installing an
encounter (and the two we're going to look at) are RPM package. Suppose I'm interested in migrating a
RPM packages, and a format rather quaintly known website, developed using active server pages, to my
as a 'tarball'. RPM packages usually provide Linux machine. I have heard that there's a tool
compiled binary code for a specific platform. called asp2php that claims to translate asp code
Tarballs usually provide source code that can be into php which I can run in my Apache Web server.
compiled and run on different hardware I'd like to give it a try.
architectures and a variety of versions of Linux and
UNIX. There are other packages formats, which we Looking locally
don't deal with here, such as the Gnu/Debian DEB
format. The first thing to figure out is, do I already have it?
That's not such a stupid question. There's an awful
What's RPM? lot of stuff on those CDs that came with my Linux
distribution I don't know about. I'm a great believer
RPM stands for Red Hat Package Manager, but its in trying obvious things first, so I'll open a terminal
use is not restricted to Red Hat Linux. The SuSE and window and try to run it:
Mandrake distributions, for example, also use it.
$ asp2php
RPM defines a format for parcelling up an installable
bash: asp2php: command not found
piece of software. The parcel (a '.rpm' file) includes
$
the compiled binary code of the software itself,
scripts which do whatever needs to be done to Not a good start. That doesn't prove it's not
install the software, and information about other installed, but it does show that it's not in one of the
software packages which this particular package directories on my search path. We can do an
requires. One of the biggest advantages of using exhaustive search of the file system with the find

12 · 2001 LINUX MAGAZINE 67


KNOW HOW INSTALLATION

command. It's best to do this as root, otherwise If asp2php required any packages which weren't
you'll get lots of messages about directories that present, it would have told you at this stage. For
find doesn't have permission to look in. Try the example, if I had tried to install asp2php-gtk-
command: 0.75.11-1.i386.rpm by itself, I would see this:

# find / -name asp2php -print # rpm -i /mnt/cdrom/RedHat/RPMS/asp2php-gtk-U


# 0.75.11-1.i386.rpm
error: failed dependencies:
which says "search the whole file system, starting at
asp2php = 0.75.11 needed by asp2php-gtk-0U
Figure 3: Using kpackage to the root directory, for a file called asp2php, and if
install .75.11-1.i386.rpm
you find it, print its name". This might take a #
minute or two. In my case, it didn't find anything. I
just got a prompt back. This is the usual Linux/UNIX Typing these really long command lines and
philosophy - as Thumper said in a rare moment of filenames (and getting them right!) is a pain, even
lucidity in the film 'Bambi': "If you can't say nutt'n for die-hard command line users like me. If you're
nice, don't say nutt'n at all". using bash as your shell, it's much easier if you turn
If your system uses RPM for its package on filename completion. To generate the command
management, you could have found this out a little line just shown, what I actually typed was:
faster by using the rpm command to query the list
of installed packages: rpm -i /mnt/c <T>/Re <T>/R <T>/asp <T>-g<T>
$ rpm -q asp2php
package asp2php is not installed where <T> means press the TAB key. At each
$ stage, bash will complete the filename for you.

Of course, the fact that it isn't installed doesn't If you don't like working at the command line,
necessarily mean that it isn't included in my Linux you can do all these things with graphical tools. For
distro. We need to take a look at the RPM files on example, clicking on the RPM file within the KDE
the distribution CDs. In the case of a Red Hat browser will bring up a kpackage install screen from
distribution, for example, the RPMs live in a where the package can be installed simply by
Figure 4:Showing the directory called Red Hat/RPMS on each CD. So, with clicking the Install button. See Figure 1.
dependencies needed
one of the CDs mounted on /mnt/cdrom, for Alternatively, kpackage can be started directly,
example, I can look for the package with a and pointed at the directory where the RPM files are
command such as: (click on Settings --> Location of uninstalled
packages), and used to browse, select, examine,
$ ls /mnt/cdrom/RedHat/RPMS/asp2php*
and install any package. See Figure 2.
In this way, I discovered that in the Red Hat 7.1
distribution CD2 contains two files:
Net gain
asp2php-0.75.11-1.i386.rpm
asp2php-gtk-0.75.11-1.i386.rpm
OK, what if we can't find the package we want
These filenames, whilst admittedly messy, tell on our distribution CDs? A great place to start
you quite a bit: asp2php is the name of the searching for RPMs on the Internet is
package. 0.75.11 is the version number. The '-1' http://rpmfind.net/linux/RPM. Just type the package
tells you that this is the first build of an RPM for that name into the search box on that page (see Figure
package and version. The 'i386' means it's compiled 3).
for the Intel architecture. (Remember, this RPM You'll get a listing of all known RPMs for the
contains compiled code so it's specific to the package, with the most recent version numbers
processor architecture for which it was built. If you listed first. The third line in this list is the same Red
were using a Sun sparcstation, for example, you'd Hat rpm we just installed off our local disk.
be looking for a name ending in '.sparc.rpm'). Look carefully at the filenames. The fifth line is
an entry for the same package compiled for the
Installing the RPM Sparc architecure. Clicking on the filename link at
the start of the line will display basic information
Now we've found the rpms, we can install both of about the package. See Figure 4. Clicking on the
them with the command: .rpm file name at the end of the line will download
the rpm which can then be installed as
# rpm -i /mnt/cdrom/RedHat/RPMS/asp2php* previously described.
#

You have to do this as root because the installation


needs to copy the program into a system directory
(/usr/bin in this case) and update the RPM database.

68 LINUX MAGAZINE 12 · 2001


KNOW HOW INSTALLATION

69 LINUX MAGAZINE 12 · 2001


KNOW HOW KOFFICE WORKSHOP

Koffice Workshop: Part 5

PRACTICAL
EXERCISES
WITH K TIM SCHÜRMANN

This, the final part of our KOffice


Workshop, is about the components
which have made the largest
advance in terms of range of functions.

As usual, in this last part,


all the functions of
KPresenter will be
explained with the aid of a
little example with which you
can join in. Noah Deer,
managing director of a reputable
car dealership, in the frame of a small
presentation, is going to cover what the
presentation is about and then introduce the firm to
the audience – a group of investors.
Let's get one thing out of the way right from
the start. At the moment, KPresenter cannot match
the range of functions offered by StarOffice
Impress. Nevertheless it is possible to conjure up Figure 1: The professional templates provided by
KPresenter
some pretty respectable presentations with the
KOffice components. At this point express reference
must once again be made to the fact that all you should always give some thought to structure
applications of the KOffice package, including and content. Thorough planning can eliminate the
KPresenter, are still in development. So you should need for later corrections.
not entrust important data to any of these In Noah Deer's case the presentation is to start
programs, and back up the documents you create off with a cover sheet, which includes the topic of
often during your work. the presentation. Then follows a slide on which the
firm is introduced (by means of bullet points).
Thinking things through In order to be able to take part in the
Workshop, you should now start KPresenter either
But before we really get going, as is always the via the KOffice desktop (see Part 1 of our Workshop
custom with presentations, the running order comes in issue 8) or via the KDE-2 start menu under Office
first. If you want to produce your own presentations, programs/KPresenter.

1 LINUX MAGAZINE 12 · 2001


KOFFICE WORKSHOP KNOW HOW

Once KPresenter has been loaded, you have the


option of creating a new, blank presentation,
opening an existing one or generating a new
presentation from a template. If you decide on a
template, after a click on OK the first slide will be
created according to the content. Some of the
templates contain coloured backgrounds, while the
professional templates limit themselves to text
boxes. For Noah Deer's example, select the
professional template 1-column and click OK.

Buenos Dìas
KPresenter works – as do most presentation
programs – with dias or transparent sheets, but
refers to these as slides. These names stem from the
days when presentations were still cast on
transparent slides for a daylight projector or via a
slide projector onto a screen. This procedure can still
be found in the presentation programs of today.
The user can make several slides, on which words,
images or graphics can be arranged, as on an rounded off by the easy-to-view toolbar on the Figure 2: The KPresenter window
after opening the template
ordinary slide. These slides can then be output via a bottom edge of the screen, which accommodates
suitable printer onto transparent overhead slides or the text formatting functions, and the bar with the
presented directly via the program. tools on the left side.
In addition to this, the computer-supported The white working area, which takes up the
presentation offers extra options which ordinary majority of the KPresenter window, is again split
slides do not. First you can cast your presentation into two. While in the middle (within the red
directly from the computer onto a screen provided border) there is always a display of the page on
an appropriate projector is available. But that's not which you are currently working, on the left-hand
all: Using the option of adding animations and side there is a list of all the pages in your project.
sounds within and between the individual slides, The little box with a tick indicates that this page will
this type of presentation turns a boring lecture into also be used later in the presentation. If you do not
a multimedia event. wish to present a page listed there later, all you
As already mentioned, KPresenter refers to need to do is deselect the relevant box here. This
transparent sheets as slides; we will also be using way you can easily manage two different target
this term here. In our example the first page should groups in a single project. Depending on the group
now be exactly the same size as the screen, which for which you are holding your presentation, simply
you can check and if necessary correct under select or deselect the correct pages prior to the
Extra/Page layout. If all you want to do with presentation. And you can also add to annotation
KPresenter is prepare a slide show, it will make pages, which serve only for your own notes.
sense if you insert the dimensions of the slide to be
used later. As a rule this corresponds to the A4 Background
format (29,7 cm x 21 cm). But if on the other hand
your presentation is to be a projector presentation But now back to Noah Deer's example. On each
direct from the computer, then leave the page size page a blue colour scheme and the logo of Mr.
at the default setting Screen. Changing between Deer's firm will be displayed. On the lower edge of
the different page sizes later is possible at any time, every page the name of the holding company and
but in most cases it also leads to tiresome repairs to the date of the presentation will be shown.
the already existing pages. To create a coloured background, select Workshop summary
Extra/Page background. For the colour scheme, on 1. Word processing with KWord
Work area the first tab, click on the top coloured line in the left (1): A business letter
upper half of the window. From the colour palette 2. Word processing with KWord
In the main window of KPresenter you will find that appears, use the sliders in the left upper half of (2): A newspaper
several toolbars around the white working area. On the window to select a blue tone. 3. Tables and diagrams with
the top edge, in addition to the painting and Take care to ensure that in the longish, smaller KSpread and KChart
drawing tools, there are also arrow symbols, with of the two colour palettes the black triangle does 4. Graphics and images with
which you can scroll back and forth between the not remain in the lowest position. This represents KIllustrator
various slides. The clipboard editing functions have the colour black there – your other settings in this 5. Presentations with
been shunted off, somewhat unusually, above the window will be ignored. In the box above the OK KPresenter
colour palette, on the right edge. The picture is button, the colour you have just selected will be

12 · 2001 LINUX MAGAZINE 2


KNOW HOW KOFFICE WORKSHOP

second tab sheet. First, make sure that in the top list
there centered is selected. Then click on Choose
Picture and in the window which opens, insert an
appropriate image of the firm on your hard drive.
After a click on OK it should be displayed in the
centre of the page.
To finish, click Apply, so that the background
thus created is also assigned to the current page in
the main window. If, later, you have several pages in
your project, you can assign this new background to
all the pages there using Apply globally. Now close
the window by using the button of the same name.
To complete the background, you should also
create a footer including the name of the presenter
and the date. To do this, select Edit/Header/Footer.
In the Footer tab, in the big input box, enter the
text "Abc Limited". Press the tabulator key twice
and enter the date of the fictional presentation.
Now make sure that the box Show footer is
selected, since otherwise the changes you have
made will not be visible on the slide. Then click on
[top] displayed. As soon as you have found the right the symbol for centring and assign all the entries
Figure 3: The background
colour, click OK. Now select Vertical gradient from you have made here via Page update. After closing
takes on some colour
the Plain list. This will create a vertical run pattern the window KPresenter should now return to the
starting with blue. Now click on the Unbalanced first page in the main window.
box and use the two slide controls to set a soft,
fairly discreet run. You should also take note of the Foreground
preview in the right side of the window.
To insert Noah Deer's logo, change to the Now your presentation is ready to be filled with life.
Double-click with the mouse on the upper frame on
[right] the page and enter "Trusted Used Car Sales" for the
Figure 4: The
first page. If the text appears too large or too small,
completed
background in the you can reduce or enlarge it using the symbols from
preview the bar on the lower edge of the screen. With the
centring symbol (also found there), you should
centre the text. All the commands in this toolbar
can also be found in the menu under Text.
When applying text formatting you should
[below]
Figure 5: A footer
always remember that the text or area to be altered
is quickly created must be selected first. To do this, you can either use
the mouse, or hold down the Shift key and then
select text using the arrow keys.
Now go to the lower, larger text box, enter
"Business Proposal 2002". Unfortunately the pre-
set layout in this text box does not have the ideal
structure for a front page. For this reason, the
layout of this one page should be amended
manually. To do this, click the mouse on a blank
area outside the page. Now select the lower, large
text box by clicking with the mouse on its edge. The
box should display two small black boxes on its
sides. All functions which you carry out henceforth
are applied to all the text within the selected frame.
As you can see, the text in this lower box is split
into a format set by default by KPresenter. To switch
off this automatic formatting, select from the menu
the item Text/Type/Normal Text. This will make the
bullet point before the text disappear. Now centre
the text, by clicking on the corresponding symbol
from the lower toolbar with the text formatting
functions. Since the frame is still much too big for

3 LINUX MAGAZINE 12 · 2001


KOFFICE WORKSHOP KNOW HOW

the text, in the next step, this will be reduced. There


are two ways of doing this:
• Firstly, you can move the mouse onto one of the
small black dots, hold down the mouse button
and then bring the frame to the right size by
moving the mouse accordingly.
• A somewhat faster variant leads via Text/Extend
object to fit the contents: This automatically
adapts the size of the frame to the size of the
text.
In the last step, you should move the frame into the
centre of the page. To do this, move with the mouse
pointer over the frame, until it turns into a cross.
Now hold down the left mouse button and place
the frame roughly in the middle of the page. As you
will discover when you do this, the frame snaps into
certain intervals. The grid is responsible for this
behaviour, and you can adjust its step size under
Extra/Options; it makes it easier to arrange several
elements in parallel.
That's our front page completed. Next, the slide
with the general information on the company is to
be produced. To make the second page, you again
have two options:
Either create a completely new page using the
menu item Insert/Page, or simply copy the current
page, using Edit/Duplicate page.
We are selecting the second variant, since this is
the only way the painstakingly created background
will also be transferred onto the second slide.
After the copying procedure, KPresenter should
automatically display the newly-created page in the
working area. You can always tell from the marking
in the left-hand list which page you are currently
editing. With the light blue arrows on the top edge
of the screen, you can scroll back and forth
between the existing pages.

Fine-boned
In the upper text box with the heading enter the up Text/Decrease depth. In this connection it should [top]
Figure 6: The completed front page
text "Firm Background" and then enlarge the lower also be stressed that KPresenter is still at the
of our presentation
text box until the frame displays roughly its original development stage. As proof of this, unfortunately
size, before it was reduced. Then align the text we still had a few problems in connection with [above]
Figure 7: A bulleted list explains the
included in it on the left. The company history of bulleted lists. If KPresenter does not want to make company history
Noah Deer's employer should now be listed in the the bulleted list as you have originally set it, you
form of a bulleted list. To do this, first change the should completely delete the affected text frame
type of the text box to Unsorted list by selecting (mark, then select Edit/Delete) and make a
from the menu the item Text/Type/Unsorted List. All completely new frame. To do this, click in the upper
the indents are now preceded by a bullet point toolbar, under the menu bar on the symbol with the
when they are entered, in the form of a black spot. big slanted T. The mouse pointer then turns into a
To create a new bullet point, when entering the small cross. Now move to the point at which the
text, simply press the enter key within the frame. If left upper corner of the text box is to be created,
you don't like the round bullet points used by hold down the left mouse button and drag the new
default, you can change these to anything you like text frame up. In this way, you can add as many text
under Text/Settings. frames to your page as you like.
Now enter a few points for Noah Deer's Noah Deer would like to make use of computer-
example, as shown in Figure 7. supported presentation during his talk and have each
To make any point appear indented, mark these item of the bulleted list just created "move in" from the
and select from the menu Text/Increase depth. You left at the press of a button. To do this, first select the
can also decrease the indent of any lines, by calling text frame with the bulleted list and then select

12 · 2001 LINUX MAGAZINE 4


KNOW HOW KOFFICE WORKSHOP

click on any blank space on your page.

Lights out
Before the presentation is started for a test run, you
can assign more cross-fades to the individual pages.
These cross fades specify the way in which the next
page is to be faded in during the presentation. For
each such procedure, change to the previous page.
In Noah Deer's example page 3 is to be opened
horizontally. Therefore, you should change to page
2 and call up Screen-presentations/Configure Page.
In the window which opens, select Open horizontal
and click on OK.
Figure 8: An effect is assigned to the bulleted list points Figure 9: Using these settings, slide Now you can start the finished presentation via
in the second slide three is faded in with Open horizontally Screen-presentation/Start or with a click on the big
green button in the toolbar. During the presentation
you get to the next respective page by pressing the
KPresenter: (almost) a little painting program [->] key. [Esc] ends the entire presentation and
To brighten up your presentations a bit, KPresenter offers a few paint returns you to KPresenter.
functions. These essentially correspond to those from KIllustrator (see We shall also end our five-part Workshop on
Workshop Part 4 in Linux Magazine Issue 11) and are also used in the same KOffice with Noah Deer's presentation. It was the
way. As you will soon see when you work with it, KPresenter can hold its aim of this Workshop to acquaint you with the
own alongside KIllustrator in terms of drawing functions. individual components of the package and to show
Unfortunately KPresenter spreads its drawing functions over several what a free office package can do. As we hope you
toolbars. To draw geometric objects such as triangles or circles, use the have realised, despite a few errors, even at this
symbols from the top toolbar, on the right next to the mouse pointer development stage a few tasks can be performed
symbol. Alternatively, the associated functions can also be selected via the well with a bit of practice. We are eagerly waiting to
menu under the item Tools. see how KOffice will develop in the future. ■
In the toolbar on the left edge, KPresenter stores the more complex
manipulation functions. With the symbols housed there, an object can be
rotated, moved up or down one hierarchy level, and you can combine
several objects into a group.

Info
Screen-presentations/Assign effects. Then, in KOffice homepage: http://koffice.kde.org
Appear set as "Effect (appearing)" "Come from the Homepage of the KDE project:
left" and as "Effect (object-specific)" "Paragraph http://www.kde.org
after paragraph". To assign this effect to the object, Information on KPresenter:
click on OK. http://koffice.kde.org/kpresenter/

Downward trend of a company ■

All Noah Deer's presentation needs now is a third


Problems
slide with the profit and loss figures. To do this, copy
the second slide via Edit/Duplicate page and on the Below are a few problems which
new slide change the heading into "2002 profit and occurred during the tests with the
loss figures". To make the data for Noah Deer's firm version of KPresenter we were sent:
visually appealing, you should use a chart. First • Page numbers could not be inserted
make a bit of room for the new object, by removing (Text/Insert page numbers)
the lower text frame with the bulleted list. Then • When editing bulleted lists there were
select the chart symbol (not to be confused with the frequently problems (see relevant
pie/arc/chord tool) and drag up a corresponding paragraph in article).
frame using the mouse. When you do this, proceed • Other KOffice objects, such as a
in the same way as you did for the text frame KSpread table or a KChart diagram
already mentioned. To alter the chart, double-click were inserted, but not displayed.
on the inserted frame. To use the chart editor, refer • The presentation was not executed
to Part 3 of the KOffice Workshop (Linux Magazine correctly or there were still serious
issue 10). For Noah Deer's example, simply enter a representational errors on the upper
few made-up figures, which show that his company edge.
is going downhill. To get back to KPresenter, simply

5 LINUX MAGAZINE 12 · 2001


KNOW HOW GIMP WORKSHOP

Image processing with Gimp, part 5

PLUGGED IN
SIMON BUDIG

One large area which we have barely touched on


in this series is plugins. These are separate little
programs that take over special tasks and are
included in the Gimp menu.

Figure 1: This is
where plugins are
checked

When starting Gimp for the first time, the dialog Which plugins should we present?
from Figure 1 is visible for a relatively long time. This You may already have been wondering how
is when the search for new plugins takes place. wecreated the abstract pattern from the last part.
These are asked where they should be included in Basically, we used two Distorting plugins for this.
the menu. The search results are stored in the file Open a new image (for example 500x500 pixel)
~/.gimp-1.2/pluginrc – hence subsequent starts will and select, in the centre of the image, a rectangular
be noticeably quicker. area (in our example from (0, 220) to (500, 280)).
We had the idea initially of arranging all Fill in this area with black colour. With Select/None,
submenus of <Image>/Filters and <Image>/Script-Fu deselect this again. Now start the plugin
on the screen and making an impressive screenshot, Filter/Distorts/Waves. With this plugin the image
but then we changed our minds – there are just too becomes distorted as if one had thrown a stone into
Figure 2: many. So for this part of the Workshop we’re faced the (liquid) surface of the image. Using the lower
First make a few waves... with something of a dilemma: slide control you can affect the waves – in the
preview you will then see what awaits you. In our
example we’ve taken the values 45, 40 and 20 for
the amplitude, phase and wavelength
respectively (Figure 2).
In the next step this image is distorted spirally.
The easiest way to do this is with Filter/Distort/Whirl
and Pinch (Figure 3). Make sure that white is set as
the background colour, otherwise strangely
coloured areas will appear at the edge (where, as it
were, something is being screwed out of
nothingness). We’ve rotated the image to the max
here (360 degrees). If you like, you can also use the
Pinch Amount slide control to contract or expand
the centre of the image.
So now we have something slightly similar to
what was used in the last part as an example. But
the edge does not look especially great. It looks a bit
frayed. Interestingly, a soft focus filter can help to
create a neater edge.
We came across the main soft focus filters last
time: /Filter/Soft focus/Gaussian blur. This plugin
comes in two variants, although their results are

74 LINUX MAGAZINE 12 · 2001


GIMP WORKSHOP KNOW HOW

only marginally different. Normally it makes very


little difference whether one uses IIR or RLE. The
soft focus tool can be used for various purposes. In
the last part we saw how to use it for light and
shadow effects. But it can also be used to create
neater anti-aliasing. Yes, that may sound daft, but
it works.
Draw the image blurred with a radius of about
10. This will necessarily mean losing details, but in
our special case, this is what we want. The little
indentations are meant to disappear. Incidentally, it
is standard practice for the radii in horizontal and
vertical directions to be linked to each other, which
means they always have the same value. If this is
not what you want, you must click on the little
button with the chain link.
Here comes the trick: Using the Values tool
already introduced in the second part,
(<Image>/Image/Colours/Levels) you can now
create a clean, sharp edge. We have achieved good
results with the source values 115, 1.0 and
145 (Figure 5).
Now we can simply copy the steps from the last good method for making certain colours Figure 3:
...and then stir
part. Duplicate the levels, let a soft focus run over transparent, but the effect is usually stronger than
the lower levels... er, hang on. We forgot the desired. Depending on the task, though, it’s worth
transparency. In fact, we really wanted to have the a try.
black motif against a transparent background.
No problem whatsoever – there are more Three-dimensional
plugins. In this case we are helped out by
Filter/Colors/Color to alpha. Agreeably enough, Not so long ago in Web design, buttons which
white is already set as the colour here, which is to appeared somewhat three-dimensional and
be converted into transparency. After a click on OK encouraged you to click on them were common.
we have the image in the form we need. Even if the current trend is towards flat design, it is
One more comment on the last plugin: Colour still good to know how to create such effects.
to alpha tries to make every pixel as transparent as Gimp offers the fairly flexible bumpmap plugin
possible, on the assumption that the colour set will for this type of effect, which you will find under
be placed in a level underneath. This is sometimes a FilterMap/Bump Map.

Graphics tablets

I will not go into the various types of graphics tablets at this point - for this, you should refer
to the article available at http://www.gtk.org/~otaylor/ximput/ .
Gimp obtains information via so-called Xinput devices (which also includes graphics tablets)
through the GTK+ library. This in turn receives its information direct from the X-Server. So in
order to be able to use Gimp with graphics tablets, the X-Server must be configured such
that the graphics tablets are recognised as Xinput devices. Typically, this happens via
/etc/X11/XF86Config, for which details can be found in the article mentioned above.
To support GTK+ one doesn’t have to do very much, since normally all the current packages
support Xinput devices as a matter of course. Formerly it might have been necessary to
compile GTK+ yourelf, since the support for XInput had to be explicitly selected (the
./configure switch is called —with-xinput).
To be able to make use of the expanded options within Gimp, you must now select, under The author
File/Dialogs/Input devices the Xinput devices, by setting each one (apart from SWITCH under The fact that so much can be
XFree 3.3.x) to the mode Screen. After a click on Save and Close you should now be able to written about bumpmap
paint in the image window with the paintbrush tool pressure-sensitively. surprised even Simon Budig
A quick word about troubleshooting, in case it doesn’t work. The command xinput list lists himself. In particular, when
all the input devices. If the X-Server has been correctly configured, one or more writing this article he
XextensionDevices should pop up here. If so and if No Input Devices appears within Gimp understood for the first time
when the above dialog is selected, GTK+ has not been compiled correctly. how the Waterlevel parameter
functions...

12 · 2001 LINUX MAGAZINE 75


KNOW HOW GIMP WORKSHOP

The dialog can be seen in Figure 6. white image Filter/Map/Bumpmap.


Before we leap in, a quick bit of theory. The First of all, select within the Parameter settings
bumpmap plugin is based on the idea that a under Bumpmap the image which shows our
mountain range, seen from above, still displays mountain range. In the preview at the top left you
something of its structure, since the sun illuminates should see a three-dimensional effect, although you
the various slopes differently. The mountain range is may need to scroll up or down a bit (either using the
typically depicted within Gimp with an image in scrollbar or by clicking in the preview), until you find
shades of grey. The different heights by various the interesting area.
shads of grey. The valleys are black and the peaks Using Azimuth and Elevation you can define the
are white. direction from which our mountain range is to be
Let’s try it out. Create a new image with black lit. Azimuth defines from which side the light source
background and write a white text inside. With shines onto the mountain range. If you pull on the
[top] Filters/Blur/Gaussian blur you can ensure that our slider control, you will see how the light spots move
Figure 4: Soft focus
for sharp edges
mountain range with raised letters at the edges gets around the mountain range. Elevation defines from
somewhat softer slopes. Now make a second image what height above the horizon the light source
[below]
Figure 5: The levels dialog
of the same size, but this time with a white shines onto the mountain range. Play around with it
makes it sharp again background. Now start, by right-clicking in the a little to get a feel for the parameters. After a click
on OK the effect will be included in the image.
The Depth parameter controls the maximum
height of the mountain range. The greater this is,
the steeper the slopes, so the illumination gains a
stronger contrast.

Now it gets lively


So far we have only found out about the basic
variants of the bumpmap effect. Obviously the
plugin cannot be used only on white images –
because then only grey shaded results would ever
come out. In Figure 7 we have applied the
bumpmap plugin to a coloured image. In the right
upper area you can see the grey-shaded map, at
lower left the effect it has on a coloured image. In
this case we have created the coloured pattern with
Filter/Render/Clouds/Plasma.
Let’s take a look at the parameters in the dialog
at top right (Figure 6). The Map Type states how the
grey shades are converted into height levels. In
Figure 8 you can see the three basic functions:
linear, spherical and sinusoidal. A short aid to
interpretation: If you have an even gradation of
colour on one edge from black to white, the various
functions convert this into a straight, quadrant-
shaped or sinusoidal slope. In the image you can see
how the various forms affect a small pyramid. Linear
produces a pointed cone, spherical a sort of drop of
mercury and sinusoidal a gentle hill, which tapers
out gently at the peak and at the bottom.
The bumpmap algorithm has the extremely
undesirable side effect that the image becomes
noticeably darker. If the rays of light strike it at an
angle, the area is not completely illuminated. In
order to reduce this effect, you can use the option

Top right the bumpmap, lower left the effect created

76 LINUX MAGAZINE 12 · 2001


GIMP WORKSHOP KNOW HOW

Compensate for darkening. The option Invert through the menu we promised last time, all we’ve
bumpmap interprets the grey shade image in covered is a couple of distortion plugins and an
exactly the opposite way — white for valleys, black intensive discussion of the bumpmap plugin. We
for the height features. In principle one could promise, that next time we will be dealing with
achieve the same effect by rotating the light source more colourful matters. And we will restrain Figure 8: Image functions forming
to the opposite side (± 180˚) – this button is ourselves when it comes to Gimpressionist – which the basis of the bumpmap plugin

a shortcut. has about ten times as many parameters as


If the bumpmap is smaller than the image to bumpmap – and keep strictly to the main points.
which it is applied, it can be repeated with the Gimp’s plugins are flexible -– but with a bit of
option Tile bumpmap and thus create an even creativity and combining one can achieve
surface structure. The parameters X/Y Offset considerably more. Have a go and see what
displace the bumpmap with respect to the image. happens when you combine different plugins with
With Ambient you can control the diffuse lighting. each other. If you stumble across any interesting
The higher this value, the brighter the side facing effects, don’t hesitate to email a brief description Figure 9: The effect of the
away from the light source appears. (sbudig@linux-user.de). ■ Waterlevel parameter
To clarify the parameter Waterlevel, we will
have to go back a bit to present one neat trick. The
bumpmap plugin can also evaluate transparency
information as height information. This means that
if a white spot goes transparent, a hill appears after
applying the effect. But if a black spot goes
transparent, a hollow appears. How strongly a hill
stands out or how deeply a hollow is indented is
defined by the waterlevel.
Take a look at Figure 9. On the left you can see
how spots in various shades of grey become
transparent against a green background. Next to
this you can see the images which are created when
you apply this bumpmap with the water heights 0,
64, 128, 192 and 256 to a white image. Bear in
mind that with a water height of 0 only hills, and
with a water height of 256, only hollows will be
produced (the light comes from top left).

Contours
The three different functions for affecting the shape
of the contour are all very nice, but sometimes you Figure 6: Lots of parameters for the bumpmap plugin
need more control. The bumpmap plugin alone
cannot do it, but it is very easy to foist various
contours onto the plugin. To do this, you can use
theImage/Colours/Curves dialog.
Start again with a blurred (radius approx. 10
pixels) white text against a black background. Now
open the curve dialog and model a contour, similar
to the one you can see in Figure 10.
Now create a new image of the same size. We
have created a plasma effect again, in order to
make something colourful. Then apply the
bumpmap plugin with the signature. The result
should look something like Figure 11.
Hmm, we have to admit it – from the foray

Figure 11: The result: A text with a fancy contour Figure 10: Using the curve tool to create a contour for bumpmap

12 · 2001 LINUX MAGAZINE 77


CASE STUDY LINUX IN SPACE

Linux on the International Space Station

BEAM ME
UP, TUX FRANK HAUBENSCHILD

The reliability of Linux means


its ideal for systems where
continuity counts – making it
the obvious choice for space
projects. We take a look at its
use on the International
Space Station.

The International Space Station (ISS) is about three ISS. The ATV is initially faster; it follows the ISS,
times the size of the space station Mir that crashed reaches it and adjusts its speed. Docking with the
into the Pacific a few months ago. With good ISS must be accurate to the last millimetre. Then the
visibility it can be seen from Earth. This sort of high- cargo can be unloaded.
tech project depends on stability, reliability and Even though most of the docking operations
performance, so it's no surprise that the European are automated in the unmanned ATV spaceship, the
Space Agency (ESA) has chosen Linux for one of ISS crew and the ground staff are able to intervene
its projects. in the manoeuvre. ESA has developed two Linux
The Automatic Transfer Vehicle (ATV), realised programs for this purpose – RASCI and GOAS.
by ESA, is an unmanned space craft that supplies
the ISS with fuel and goods. To get the ATV's cargo Remote control
onto the ISS requires a docking manoeuvre between
the two spaceships. The difficulty lies in the RASCI stands for Remote ATV Control at the
different speed of the two ships. The whole International Space Station and runs on an IBM
rendezvous begins about 20 kilometres behind the Thinkpad. The ISS crew will use it to monitor the

78 LINUX MAGAZINE 12 · 2001


LINUX IN SPACE CASE STUDY

docking manoeuvre. The application requires X- the Ariane-5 mission is not planned until February [left]
Trajectory and control
Window (X11R6) with Fvwm as window manager 2003 – so Tux has got a little bit of time left.
displays with RASCI
and is currently running on Slackware 3.0 with
kernel 2.0.30. Other Linux space projects [right]
The relevant telemetric data is stored on the GOAS gives control to
Linux file system. RASCI has a modular structure, Apart from the ATV project initiated by ESA the the ground crew

there is a telemetry handler, which receives the American space agency NASA is also looking into the
telemetric data from the ATV, processes and saves it use of Linux in space. The Flight Linux Project,
and, if necessary, transmits it to clients like the originating in an initiative by NASA engineer Pat
status monitors. Another module deals with error Stakem, is working on the Blue Cat-based
recognition during the docking manoeuvre. If an distribution Flight Linux. According to its initiator, it is
error occurs, the astronaut on the ISS is able to intended to maintain the course on board unmanned
terminate the docking manoeuvre completely, pass space ships and take over monitoring functions.
control to the ground crew or start evasion Another Linux project is the Linux-Equipped
manoeuvres if there is a danger of collision. Astronauts Project (LEAP), the aim of which is to
Future versions of RASCI are intended to also replace the Windows programs currently used by
provide the astronaut with video data of the the astronauts with Linux programs. However, at
manoeuvre, which will be displayed in real time, in the moment these lofty goals are still awaiting
addition to the telemetric data. realisation, there is a lack of support from officials at
NASA and ESA. ■
Ground crew
Linux controls
space rendezvous
The "Ground Operator Assistant System" (GOAS)
was originally developed for Sun Workstations
(Ultra-Sparc 5, 64MB RAM, 300MB HDD). The Linux
version is derived from this. Linux-GOAS requires at
least a 233MHz Pentium with 48MB RAM and uses
X11R6 and Open Look as window manager. The
GOAS GUI was developed in C++, the actual
application in ANSI C.
GOAS is capable of addressing several monitors
to provide as much status data as possible at one
glance. The software allows the ground crew to
intervene in the control of the docking manoeuvre
in any situation imaginable. For example, the ATV's
steering jets can be addressed directly to avoid a
Info
collision with the ISS. In contrast to RASCI, using ESA ATV project: http://www.estec.esa.nl/wawww/ESC/
GOAS, the ground crew can re-plan the entire NASA Flight Linux: http://flightlinux.gsfc.nasa.gov
docking manoeuvre – fully automated, semi- LEAP: http://www.cantrip.org/leap.html
automatic or manually. http://www.sheflug.co.uk/featuresoft.htm
Although individual modules of the ATV project Space station computers crash: http://www.theregister.co.uk/content/2/18526.html
have been tested in several Shuttle missions (STS-80,
STS-84, STS-86), the first deployment of an ATV for ■

12 · 2001 LINUX MAGAZINE 79


BOOKS REVIEW

LINUX! I DIDN'T KNOW I


COULD DO THAT…
2ND EDITION
ALISON DAVIES

This completely revised and updated edition covers Voice Over IP. It concludes with the usual section on
many of the latest programs to use with Linux. It creating an emergency disk.
covers aspects from text-based tools to the latest The book is aimed at people who actually want
KDE and Gnome tools in an easy-to-read format. to do things with Linux and who may be stuck in a
Difficult concepts are explained in a simple manner Windows environment. It is a good book to dip into
such as using encryption or automating tasks. with many one or two page information blocks. I
Written by an ex-director of Caldera, the book is was impressed that the part on calculators included
based mainly on using Red Hat and admits that reverse Polish notation and the programs included
many of the aspects it covers are automatically on on the disc should add interest to my system. ■
the latest editions of Red Hat and
other distributions.
It covers a lot of programs, many included on the
enclosed disc, and gives a good flavour of what is Info
available, such as Xmorph. There is an interesting Author: Nicholas D.Wells
section on games, some of which I recognise from Publisher: Sybex
earlier incarnations on pre-PC computers, and a nice Price: £16.99
section on Video4Linux, how to install TV tuner cards. ISBN 0-7821-2935-8
There is a big section on Apache Web servers
and it also covers, more unusually, fax servers and ■

ESSENTIAL
LINUX FAST
At last – A UK English, step-by-step guide to using programming, but who are beginners when it
Linux! Ian Chivers takes Red Hat and SuSE and comes to Linux and would get a system up and
explains installation and use in a clear, easy-to-follow running in a day by following the instructions. A
fashion. Where there is a difference in the systems good read through of the book should also allow an
he mentions this and there are plenty of screenshots informed choice of distribution and some idea of
to illustrate the points he makes. He admits that the hardware that is supported.
where he had problems with the hardware not being A good, no nonsense book with just the right
supported that later developments may have amount of information to let you do the task of
changed the situation and gives a Web address for getting a system running with the minimum of
the most up-to-date information. effort. You can then get on with the rest of your job,
It is written in an academic style with bibliographies secure in the knowledge that Linux will run itself. ■
after each section for further information. It covers
starting with a Windows machine and installing Linux –
he uses various versions of Red Hat and SuSE. It goes on Info
to setup networks and security. The second half of the Author: Ian Chivers
book deals with using UNIX commands and installing Publisher: Springer
additional programs including emulators for most Price: £15.95
programming languages. ISBN 1-85233-408-8
The book is aimed at people who are
knowledgeable about computers and ■

80 LINUX MAGAZINE 12 · 2001


BEGINNERS KORNER

K-splitter: Made to

MEASURE STEFANIE TEUFEL

Who says there is no place for gossip a


Linux magazine? K-splitter broadcasts
news from the K-World and noses around
here and there behind the scenes.

SMS again Please do not choose the newest


version of Elza, 1.4.4, but its predecessor,
The sun is shining, the local 1.4.3, since according to the author of
pub beckons – all you need do KsmsAgent there have been some problems
now is finalise the with Version 1.4.4. Last of all, you need an
arrangements for the evening. account with www.lycos.co.uk/service/sms/.
And how do you do that Before you can start texting, you should
these days? Either by email make a couple of adjustments to Elza. To start
or SMS. KMail for email off, just check if the right path is specified to
may be familiar by now to perl in the file or the Perl script elza.pl. If not,
KDE enthusiasts, but amend the script as appropriate. Then turn
perhaps you have missed to the file elza.def. Here, decomment
out on the KsmsAgent, line 15
which allows you (via
use Win32::Process; use Win32;
http:// www.lycos.co.uk/
service/sms/) to send with a #. The same goes for the lines 50 to
short messages – free of 52:
charge – to your date for
#$DEF{'sslapp'} = "c:\\win-
Figure 1: Configure me the evening.
util\\stunnel.exe";
To get the SMS agents to beep on your
#$DEF{'sslcmd'} = "stunnel -c -d 127.0.0.1:SU
girlfriend or boyfriend's mobile, apart from the
SLLOCAL -r SSLHOST:SSLPORT -D 1";
current version of the program, which you can #$DEF{'sslconsole'} = 1; # Set to 1 to see tU
download any time from the homepage of the he console
author, Tobias Bayer, at http://www.tobias-
[below]
bayer.de/, you will also need Perl and Elza, which Now all you have to do is remove the comment
Figure 2: Not quite as big as the New
York telephone directory you can get from http://phiphi.hypermart.net/pub/ . symbols before the lines 56 and 57:

$DEF{'sslapp'} = "stunnel"; # This name willU


be passed to KILLALL
$DEF{'sslcmd'} = "/usr/sbin/stunnel -c -d 12U
7.0.0.1:$DEF{'ssllocal'} -r SSLHOST:SSLPORT U
-D 1";

That's it: You can now start KsmsAgent for real.


First, enter under Options/Preferences (Figure 1)
your username and the password at
www.lycos.co.uk/service/sms/. When it comes to
the path to Elza, remember to end the directory
specification with a /. Save, done. That's it
for configuration.
To send messages, you have two options: Either
enter the number of the recipient into the main
[above]
Figure 3: Send your message
window yourself, or you select their number from
while you travel the address book. If you frequently favour someone

82 LINUX MAGAZINE 12 · 2001


KORNER BEGINNERS

with short messages via mobile, you should go to


the trouble of including their number in your
address book as this saves on typing.
You access the telephone book (Figure 2) via
Options/Addressbook. The entries must be made in
the case of the name in the form Surname Forename
or vice versa and in the case of mobile numbers with
pointed brackets (<telephone number>).
Add new numbers with the button Add, delete
them using Delete, and send a text message by
selecting the desired number and then clicking on
Choose. The program automatically enters the
number into Phone (Figure 3). All you need do then
is enter the text of your message in the box in the
main window and press the Send button – and with
that, your invitation to this evening's swift pint is on
its way.

Themes
Another facelift for the KDE-2.x desktop makes the
new Themes by Vadim Pessky possible. The author
has, unlike many other theme-builders, not settled
for simply pasting together a few background
images, but has gone to the trouble of fitting
individual window decorations in each theme for confirmed and is no surprise to all those who have Figure 4: A whole new look
buttons etc. The whole package can be found at ever waited for long minutes for the start of one
http://apps.kde.com/. KDE program or other – speed.
If you don't want to download all the themes More than one quarter of the votes submitted
prettily packaged, you can also hunt down argued in favour of a faster KDE. Waldo Bastian
individual items at the author's home page then wrote a report with the title Making C++ ready
http://kde2.newmail.ru/kde_themes.html. for the desktop, in which he analyses the various
These desktop beautifiers are installed in start phases of a C++ program and develops a few
seconds thanks to the theme manager, which has proposals for optimisations. The complete article
been resurrected in the newer KDE versions. Open can be found at http://www.suse.de/~bastian/
the KDE control centre, select Appearance/Design Export/linking.txt.
management, and the installation work can let rip: But Konqueror is still in the sights of users. Just
Click on the Add button, select the new theme to under 20 per cent wish for further improvement
be installed, and you will instantly see an image like with respect to CSS and JavaScript. Third place on
the one in Figure 4. the wish list was occupied by expansion and
improvement of Koffice. ■
When the postman rings at the
wrong time ...
For many Kmail users this may be due to the fact Themes: The famous/infamous Themes are something you must surely be
that they are still using an old issue of KDE. Because familiar with from the Windows world. These are background images that
in the Kmail versions under 1.0.29.1 there is a date- harmonise icons, sound files etc, which a well-meaning person has composed
related bug, which can lead to your mail folder with more or less good taste.
suffering damage after 9 September 2001. CSS: Abbreviation for Cascading Style Sheet. Style sheets make it possible to lay
And users of versions 1.0.29.1 and 1.0.29.2 do HTML pages out better. Frequently-used format settings (bold, italic etc.) and
not get away completely unscathed. In this case, the fonts only have to be defined once for a specified text element. This also means
folders are not damaged, but data can be wrongly that the amount of data of an HTML page is usually reduced, since these settings
shown. So update to KDE 2.1.1! (once defined in the header or in a separate file) are only queried once in the
running text per code.
Tempo, tempo JavaScript: A simple scripting language, originally developed by Netscape,
which can be integrated into HTML. With JavaScript functions such as for
For the near KDE future the developers wanted to example cursive scripts, clocks or similar can be realised. Unlike Java this language
know precisely what users really want, and so they is neither software-independent nor equipped with the necessary security
went on the Internet and posed the question: mechanisms.
"What should be given highest priority in the
development of KDE 2.2?" Now the result is ■

12 · 2001 LINUX MAGAZINE 83


BEGINNERS KORNER

K-tools

MUSICAL
HANDICRAFTS STEFANIE TEUFEL

We present tools that have proven


to be especially useful when
working under KDE, or are just some
of the nicer things in life you
wouldn't want to do without.
MP3s are all very nice, but anyone who has not yet
treated themselves to the luxury of a portable MP3
player, will not get much joy out of the new summer
hits on their home hard drive, while they’re working
on a tan at the beach. So what could be more
obvious than moving the musical gems onto an
audio CD? Figure 2: All aboard?
In the last Linux Magazine we offered you KonCD,
a powerful burn program for KDE. But if all you really confronted by a window, as shown in Figure 1.
want to do is quickly capture a few pieces of music on k3b shows you a nice clear overview of your
CD, k3b would serve you well. This quickly and simply directories in two windows. In fact, you could begin
burns audio CDs consisting of wav or mp3 files. The burning at this point, but first you should check
newest version of this turboburner can be whether all devices and programs which k3b uses
MP3: MP3 or MPEG 1 Layer 3 is downloaded at any time from the homepage of the have been correctly identified. Normally the program
the best compression author at http://k3b.sourceforge.net/. does this for you, but it's better to be safe than sorry if
algorithm for sound data. After installation (which you deal with as usual you want a properly burnt CD.
Using this method, sample with the Linux three-step, ./configure, make, make For your inspection visit, open
data can be compressed by a install), start the program either by a click on the start Settings/Configure K3b, and take a look in the
factor of up to 12, menu, Applications/K3b or by entering a k3b & in a window which will then appear (Figure 2) to see if
without any loss terminal emulation of your choice. You will then be everything is all right. If not, quickly change the
of quality. settings, before setting off.

Terminal emulation: The Off we go


main objective of a terminal
emulation is to serve as a sort In order to finally get down to business – after all,
of substitute for virtual the beach and the portable CD player are
terminals, under a graphical beckoning – click in the menu bar on File/New
user interface, between which Project/New Audio Project and simply use drag and
you can happily skip back and drop to move the MP3 files which are to go onto
forth under Linux by pressing the CDs, from the directories on the left into the
Alt and Fx. This console right-hand window (Figure 3).
substitute allows you to use If you want to change the name of the file,
programs under X, which are right-click on the MP3 file and in the pop-up menu,
really intended for the select Properties. In the pop-up window which
command line. appears, you can then make your changes. If you
have changed your mind, and the track is not to go
■ Figure 1: Split in two on the CD, correct this mistake by a click on remove

1 LINUX MAGAZINE 12 · 2001


KORNER BEGINNERS

in the pop-up menu at once.


As soon as you have compiled the data for the
audio CD to your liking, click to start the burning
process, on the CD icon in the menu bar or select
File/Burn. k3b opens a window (Figure 5), in which
you can specify details on the speed of your burner
or if the burn process should be simulated first. If
everything matches your settings, do a kick-start
with a click on Write and then calmly observe the
progress of your burn project (Figure 6).

Undercover
Once you have yourself a nice new audio CD, it
would be a crime not to put it into a cover of its
own. There are programs such as Kover (Figure 7) or
KCDLabel (Figure 8) which take care of this, and you
can find their latest versions on the cover CD.
Start Kover via the start menu, Figure 3: Decide what to burn in seconds using drag and drop
Multimedia/Kover or alternatively KCDLabel via the
start menu, Applications/KCDLabel. True to the
WYSIWYG motto What you see is what you get,
here you can enter titles and contents, select text
colour, size or font and if required, also include
photos. You can keep an eye on the result of your
masterly artistic achievement, large or small, at all
times in the preview window.
Kover’s strength is that it spits out your lovingly Figure 4: If anything else needs changing...
designed cover when it prints it out, neatly provided
with fold lines. Also, the newest version even comes
with an implemented CDDB autofilling function –
for both the CDDB database on the Web and for Figure 7: Kover even comes
with CDDB support
your local title database on the hard drive.
KCDLabel on the other hand offers one or two
additional graphical design options. Whether ring-
shaped text or the CD title in the form of a rainbow. In
the menu bar, open Character string/Insert curved line,
and start typing. Even round CD labels are no problem Figure 5: It's the speed that counts
for this program, thanks to File/Print Round Label.

My home ...
... is my happiness. If this saying applies to you, you
will not be moving away from your computer and
so won't be needing any audio CDs. To finish off,
we have a program (or rather, a front-end) for you, Figure 8: A CD label ready to print
with which you can comfortably tootle away your
MP3s on the computer.
Exactly the same as xmms-kde, which we
presented to you in the K-splitter column in Linux Figure 6: Progressive Figure 9: An applet rarely comes alone
Magazine issue 10, kmms is an xmms applet for the
control panel, with which you can control the easy-
to-use MP3 player at all times via the panel, without CDDB: Compact Disk DataBase is a CD title database on the Internet. This database
having to switch to the desktop. contains all information on any audio CD which has ever come onto the market. CDDBs
Start it after installation – simply right-click on are either held locally or are fetched from the Internet. In the case of an audio player,
the KDE panel and select Add/Miniprogram/Kmms, which supports the CDDB format, as soon as the CD is inserted it checks whether the CD
and delight in an applet as in Figure 9. For anyone is already known. If not, the CD player tries to connect to the Internet and to find the
who has already installed xmms-kde, the data there on a CDDB server. CDDB programs access the TOC (Table of Contents) of a CD,
functionality of the two applets is the same in which every CD includes.
principle. Try them both out to decide which one
suits you best. ■ ■

12 · 2001 LINUX MAGAZINE 2


NEWS GNOMOGRAM

News and Programs


to do with GNOME

GNOMOGRAM BJÖRN GANSLANDT

We present the pearls among the any kind of expansions by distributors or companies
such as Ximian. There are also plans to compile
Gnome tools here. This month's regular snapshots from the Gnome CVS, in order to
topics include: All over for Eazel?, make life easier for Beta testers and compilers.

Gnome Packaging Project,


Restructuring at Ximian
Restructuring at Ximian,
Unlike Eazel, Ximian is acting much more
Sikigami, Ximian Gnome 1.4 and optimistically and has restructured its complete
Sawfish commands in the panel. management over a brief period. In the course of
this action co-founder Nat Friedman was made VP
of Product Management and handed over his old
post to Patrick David, former President of World-
All over for Eazel? wide Sales at The Learning Company. Jon Perr will
in future be in charge of Marketing, and Bijan Sabet
has been appointed new VP of Business
Development. Since so many vice presidents will
also want financing, Todd Miceli has been given the
It looks as if the radical downsizing at Eazel did not post of CFO at Ximian.
make it any more attractive to investors. Not even
the recently started fund-raising campaign via Sikigami
Paypal has been able to rescue it – apparently there
was not a great deal of interest in Eazel T shirts for At the instigation of the Japanese distributor of Red
$20. But if one bears in mind that in a single year,
Eazel has consumed some $11 million of risk
capital, it was a utopian dream right from the start
to think the firm could keep its head above water by
means of donations. According to as-yet
unconfirmed reports, by the time this issue comes
out the second half of the workforce will have been Figure 1: Gnome for PDAs
sacked and Eazel will finally have gone bankrupt,
without the firm having been able to realise its Hat, the software forge AXE has developed a
actual business model – namely the sale of services version of Gnome adapted for PDAs. The first
– in any way. It remains to be seen whether Ximian screenshots of this interface, christened Sikigami
will manage this feat – because hype alone is no (Japanese for daemon) can be admired at
longer enough to make money. This bankruptcy www.sikigami.com, the source code is available
does, however, also highlight one of the great after completing a Japanese form.
advantages of free software, namely that Eazel's
URLs graphical shell Nautilus can still continue Ximian Gnome 1.4
www.eazel.com development, even without the company. It
www.paypal.com emerged from the very first sackings that former Most Gnome users have had to be patient for a
developer.gnome.org/projects/gpp/ employees were still working on Nautilus. long time, and some have even been threatening to
www.ximian.com switch to KDE because of the delay. But at the end
www.sikigami.com Gnome Packaging Project of April, the day finally dawned when Ximian could
sawmill.sourceforge.net/prog- present its version of Gnome 1.4. From the
manual.html The Gnome Packaging Project (GPP) was established enormous onslaught on the FTP server one can
in order in future to produce packages for all the big conclude that most users had in fact remained
■ Linux distributions and Unices, which are free from faithful to Gnome; and praise was flooding in as

86 LINUX MAGAZINE 12 · 2001


GNOMOGRAM NEWS

soon as the mere announcement and a couple of


screenshots could be seen.
With the graphical Ximian installer, which can
be started as usual by the command "lynx -source
http://go-gnome.com/ | sh", all the necessary
packages for the respective distribution can be
downloaded and installed. Ximian has actually
made some very useful changes to Gnome 1.4,
aimed principally at newcomers. On first starting
Ximian Gnome, a configuration assistant named
Doorman (Figure 3) welcomes the user and helps
him to transfer his personal data to Ximian and to
change the most important settings to do with the
look and feel. Here the user can choose between
several suggestions for settings, such as the
background or the panel. To make it easier to use,
Ximian also comes with its own menu, which is
especially impressive because of its professional
icons. But one thing missing in the menus, just as
with all the other changes to Ximian, is the
translations, which – where they exist – are not
exactly up to the Gnome standard. This is due to the [top]
Figure 2: Ximian GNOME comes out
fact that Ximian kept all its new features a secret
with rounded corners
and the regular translators had no access.
Another facility for beginners is the file dialog, [middle]
Figure 3: Doorman leads the user
which has been extended by several buttons, which through the basic configuration
lead directly into the specified directories. To do this,
[below]
Ximian Gnome also creates a directory named Figure 4: When the documentation
~/Documents/, which roughly corresponds to the no longer helps, find some advice in
Monkeytalk Chat
\My files under Windows. The help menu has also
been expanded. Via Help/Chat an extremely
simplified X-Chat version named Monkeytalk
(Figure 4) starts, which leads into one of the Ximian
help channels. With a bit of luck there might even
be a Ximian employee there, who could help you
out with any problems.
Also in the menu panel, which is known
internally as the Foobar, Monkeytalk sits alongside a
Ximian FAQ, the Bugbuddy and the Gnome manual
in the help menu. Right next to them in the system
menu, Ximian has accommodated a little search
program and the package manager Red Carpet.
Anyone who cannot get anywhere with Red Carpet,
has at least the option under Debian of adding the
line "deb http://red-carpet.ximian.com/debian
stable main" (or woody) to "/etc/apt/sources.list"
and as usual of using apt-get. Lastly, Ximian has
rounded off the upper corners of the menu panel
and hidden a new Easter egg, which should be
located, after activating the menu panel, in a log file
in the home directory.
Overall, the update to Ximian Gnome 1.4 is with a starter on the panel. A new starter can be
certainly worthwhile. But anyone who has already found via a right-click on the panel under Panel/Add
installed the Debian (Woody or Sid) version of Gnome to panel/Starter. As command, you must specify
1.4, should be ready for a few problems if they update. "sawfish-client -c Lisp command", at which point
the basic Sawfish functions can be found with info
Sawfish commands in the panel sawfish. As we have already described in the last
Gnomogram, Sawfish can also be expanded by
Those not satisfied with starting Sawfish functions means of modules, which in turn come with their
via key combinations, thanks to the program own functions. These modules are found under
sawfish-client also have the option of linking these /usr/share/sawfish/VERSION/lisp. ■

12 · 2001 LINUX MAGAZINE 87


FAQ DR. LINUX

Dr. Linux

MAKE IT
SNAPPY WITH
THAT SHELL MARIANNE WACHHOLZ

Complicated organisms like Linux systems suffer


little complaints all of their own. Dr. Linux
observes the patients in Linux
newsgroups, issues prescriptions
and proposes alternative
healing methods.

Deja vu also holds script in the log file, so that, in the


(Virtual) console: One of the reproduction, coloured listings are also
text screens between which During longer sessions at a (text) console I would shown correctly.
you can toggle under Linux like to read earlier inputs again – especially in cases
using the key combination Alt when a great deal of work has been done. How
plus function keys (usually [F1] can I do this?
to [F6]). You can get from a Dr. Linux: If you cannot manage to scroll
graphical user interface with through using [Shift+scroll up] and [Shift+scroll
Ctrl+Alt, plus function keys down] you can make a session log using
[F1] to [F6], to a text screen.
user$ script Name_of_logfile
If you use the script command without
Shift key: The key which specifying a file, a log will automatically be
makes any letter typed in into produced with the name typescript in the current
a capital. working directory.
Script runs in the background and can be
■ stopped again with Ctrl+D.
Many text consoles provide colour
representation which is controlled by Escape
Sequences (see the box of the same name). This Figure 1: Escape sequences for colours

1 LINUX MAGAZINE 12 · 2001


DR. LINUX FAQ

Begin by logging on to your home directory. To Welcome to SuSE Linux 7.1 (i386) - Kernel \rU Figure 2: Reproduce
a session in text
create the log file script requires you to have write (\l). mode with script
permission for the current directory. With
Debian comes across as more Spartan with
user$ cat filename_of_log
Debian GNU/\s 2.1 \n \l
the log can be reproduced from a command line. and Mandrake actually draws a complete penguin
In the case of longer logs there is the option of a with a whole heap of escape sequences:
sideways display with more instead of cat, or you
^[[40m^[[40m
can call up the log in an X-terminal program,
^[[2J^[[0;0H
which provides a scrollbar.
^[[0;1;30;44m ^[[40m ^[[44m ^[[40m
[...]
A personal welcome ^[[0m^[[255D

Can the log-in message, for example Linux Mandrake release 7.0 (Air)
Kernel 2.2.18 on an i686 / \l
Red Hat Linux release 7.0 (Guinness)
Kernel 2.2.16-22 on an i586
With the control characters the case is as follows:
be individually configured? • \l creates in the output the number of the text
Dr. Linux: The distributions issue messages console (tty1, tty2, ...)
before the log-in whose content is stored in • \t gives the time in the format HH:MM:SS
/etc/issue. The Superuser can edit this file and • \m gives the processor type (such as i586)
thereby change the output before the log-in. • \r gives the kernel number
If you open the file with an editor, you may • \d inserts the date in the format 2001-06-13
notice that this opening text consists not only of • \n is the control character replaced by the
text, but also of control characters. So in SuSE for computer name
instance, you will find the following entry: When you save the entry

12 · 2001 LINUX MAGAZINE 2


FAQ DR. LINUX

You will then see a ^[ in the file.


Welcome - this is kernel \r.
It is \t. ^[[47m^[[31m Welcome - this is ^[[40m KernelU
\l is ready to log in. \r.^[[0
in your /etc/issue, the log in message looks It is \t.
like this: \l is ready to log in.
ensures that Welcome - this is appears as red text
Welcome - this is kernel 2.2.18.
on a grey background. The kernel details are
It is 20:40:22.
output in red on black, and with Ctrl+V, [0 the
tty2 is ready to log in.
original colouration is reactivated.
If you would like to experiment with colours in the If you would also like to alter the log-in
Mandrake welcome message, you can fall back on message which is shown to users who log onto
the control characters described in Escape your computer via Telnet, then edit the file
Sequences. However, the Escape character wil no /etc/issue.net in the same way.
longer be written as \033, but with Ctrl+V,
followed by pressing the [Esc] key.
Infotext after the log in

Escape Sequences
The American National Standards Institute (ANSI) set itself on a command line, the key combination Ctrl+G makes your
the task of standardising the terminal control characters. computer beep (assuming your system is not configured as mute).
This is put into practice with escape sequences, which are You can use this kind of character for colour control in a
mentioned several times in this article and which you will way which is much more multimedia – for coloured outputs in
find described in detail in the Bash Prompt HOWTO text mode or to make the Prompt appear in colour for
(http://www.linux.com/howto/Bash-Prompt-HOWTO- instance. The HOWTO offers a few examples that invite you
6.html). to try them out as ready-made scripts. Copied into a file and
Some of these control characters will already be familiar made executable, you can view the colour scheme on your
to you. The well-known beep, which your system utters command line. The following script from the HOWTO
from time to time, is also an escape sequence. When placed demonstrates the potential colours (Figure 1):

#!/bin/bash echo -e "\033[47m\033[1;32m Light green \033[0m\


# 1;32m \
# This file outputs a range of colour codes \033[40m\033[1;32m Light green \033[0m"
# on the terminal. echo -e "\033[47m\033[33m Brown \033[0m\
# Each echo command prints out a foreground colour on 33m \
# a grey and black background and writes \033[40m\033[33m Brown \033[0m"
# the code for the foreground colour in the middle of the line. echo -e "\033[47m\033[1;33m Yellow \033[0m\
# This script has been tested with white, black and green 1;33m \
# terminal backgrounds (2 December 98). \033[40m\033[1;33m Yellow \033[0m"
# echo -e "\033[47m\033[34m Blue \033[0m\
echo "In light grey: In black:" 34m \
echo -e "\033[47m\033[1;37m white \033[0m\ \033[40m\033[34m Blue \033[0m"
1;37m \ echo -e "\033[47m\033[1;34m Light blue \033[0m\
\033[40m\033[1;37m white \033[0m" 1;34m \
echo -e "\033[47m\033[37m light grey \033[0m\ \033[40m\033[1;34m Light blue \033[0m"
37m \ echo -e "\033[47m\033[35m Purple \033[0m\
\033[40m\033[37m light grey \033[0m" 35m \
echo -e "\033[47m\033[1;30m Grey \033[0m\ \033[40m\033[35m Purple \033[0m"
1;30m \ echo -e "\033[47m\033[1;35m Pink \033[0m\
\033[40m\033[1;30m Grey \033[0m" 1;35m \
echo -e "\033[47m\033[30m Black \033[0m\ \033[40m\033[1;35m Pink \033[0m"
30m \ echo -e "\033[47m\033[36m Cyan \033[0m\
\033[40m\033[30m Black \033[0m" 36m \
echo -e "\033[47m\033[31m Red \033[0m\ \033[40m\033[36m Cyan \033[0m"
31m \ echo -e "\033[47m\033[1;36m Light cyan \033[0m\
\033[40m\033[31m Red \033[0m" 1;36m \
echo -e "\033[47m\033[1;31m Light red \033[0m\ \033[40m\033[1;36m Light cyan \033[0m"
1;31m \
\033[40m\033[1;31m Light red \033[0m" \033 in this case stands for the character created by
echo -e "\033[47m\033[32m Green \033[0m\ pressing the ESCape key, hence the name escape sequences.
32m \ The 33 in the octal numbering system corresponds to the
\033[40m\033[32m Green \033[0m" ASCII code for the escape character (27 decimal).

3 LINUX MAGAZINE 12 · 2001


DR. LINUX FAQ

After logging in, I get the following information Prompt: The enter prompt (also called the standby character) signals the
text on the text console of my system: readiness of a shell to execute a command. Since the prompt can be configured,
on some systems you will find one that displays the current directory, while other
Last login: Sat Apr 28 14:35:54 on tty6
computers, often in networks, also give the respective computer name. When it
Where do I go to stop this? comes to the purists among administrators, you might even find just individual
Dr. Linux: If you don’t want to see this characters such as %, > or $.
information, you must act as Superuser. The Shell: A command interpreter. This program is started when logging onto the
message of the last successful log-ins (all users) is system (log in shell) and accepts the commands entered by the user (interactive
stored in /var/log/lastlog and output by the log in shell). Shells usually have elements of programming language (variables, loops,
shell after you log onto the system again. The conditional queries etc.) built in, so that you can assemble and have executed
decision as to whether this data appears on the instructions for the shell programs or 'shell scripts'. In addition to the bash, which
screen is made in the file /etc/login.defs. is used by the overwhelming majority of Linux users, under Linux and other UNIX
Open this file with the editor of your choice, operating systems you can choose from the following shells:
and in the line • The syntax of the csh or C-shell is similar to the C programming language
• The tcsh is an extended C-shell with the option of editing the command line.
LASTLOG_ENAB "yes"
• The sh or Bourne shell has no editable command line
change the entry "yes" to "no". • The ksh or Korn shell which is largely back-compatible with the Bourne shell
For Mandrake users there is bad news: In some provides an editable command line
versions of this distribution, setting • The zsh (Z-shell) is the most recent of the listed shells and can also be edited.
LASTLOG_ENAB does not change anything in the Although it is in many respects similar to the ksh, it does have a few special
output of the "Last login" message. nuances and more extensive features
Shell variable: Many functions of the bash are controlled by variables, which in
Getting graphical? turn exert an influence on the entire function of a system. The initial settings in
the files /etc/profile, /etc/profile.local, /etc/bashrc (depending on the distribution)
I have specified a graphical log-in in my are read in first. Users have the option of individualising these settings by editing
installation. But I would prefer to log onto a text the corresponding dot files in their home directory. The bash processes the
console and start the graphical user interface with following files after a user logs in, in the respective home directory:
startx. Which file do I enter this into? • .bash_profile
Dr. Linux: UNIX systems can run in various • .bash_login
operating statuses, which are referred to as run • .profile
levels. In the file /etc/inittab you will find a • if applicable, .bashrc
definition of the preconfigured run level of your If one of the files is not available, the next will be searched for possible entries. If
system. The numbering of the run level is not the you want to permanently set or change the value of a variable, write it in one of
same in all the various distributions. these files. The command set will show you which variables are set in the system
Common to all is the run level 0, which powers on the output screen.
down the system, and run level 6, which triggers a If the directory /sbin is not entered in the PATH variable, this directory will not
reboot. Therefore it is not advisable to enter one of be searched, such programs must be started with the absolute or relative
these two as default run level, thus as the run level pathname. If a program in the current directory, which is not in the search path,
which is automatically assumed on booting. is called up, this can be reached by placing ./ before the program name.
The other run levels in the SuSE-7.1 Absolute and relative pathname: An absolute pathname, often also called
distribution look as follows: the full pathname, begins with the root directory, symbolised by /. It usually
• Run level 1 is the single-user mode, in which consists of /Directoryname/any_other_directories/filename. A relative pathname
root has the opportunity to rescue something begins in the current directory. /Directoryname is replaced by a dot (.), which
from a crashed system with only a little produces the command ./any_other_directories/filename. So the system can
functionality distinguish (even with files of the same name) as to which file the command
• Run level 2 offers multi-user, but not network applies.
functionality
• Run level 3 also allows several users to work on ■
the machine at the same time (multi-user) and
also provides network functionality (local mail, your system starts at. In the case of a SuSE 7.1 the
logging in from remote machines, etc.) number 5 has to be changed to 3, so that the
• Run level 5 is preconfigured as an additional graphical user interface won’t be automatically
multi-user operating mode with network and available when you next start the system. In the
graphical log-in case of other distributions you can simply read the
In the file /etc/inittab, apart from a definition of definitions in /etc/inittab attentively to find an
the run level you will also find the default run appropriate multi-user run level.
level. The watchword is initdefault:

id:5:initdefault: Program start by return


The number in this line determines which run level Why can some programs be started by entering

12 · 2001 LINUX MAGAZINE 4


FAQ DR. LINUX

you can take a look at which directories belong to


your program search path:

usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:U
/usr/lib/java/:.

To briefly include a directory in the PATH variable


set the following command on the command line:

user$ export
PATH=$PATH:/directory/subdirectory

The effect of placing $PATH in front is that the


existing content of the path variables is retained.
This change of path has no effect on other
terminal windows opened.
If you would still like to include another
directory in the variable permanently, you can
Figure 3: Resetting their name on a command line and not others? achieve this by making a corresponding entry in
the graphics
There are various programs such as fdisk which I the ~/.bashrc or ~/.profile.
card from the
alternative cannot simply start from the command line, even
mode though the program is located under /sbin/fdisk. Is Clear sight, clear instructions
my system wrongly configured?
Dr. Linux: Assuming you do not wish to start Sometimes, in text mode or in an XTerm I open a
any program files whose execution is reserved for program with cat. This fills the screen with
root or a specific user and user group (such as meaningless characters, and all characters entered
fetchnews), all programs can be started by are shown scrambled. How can I repair it?
entering the full path name as command. Enter Dr. Linux: A program file listed in the heat of
the following: the moment almost always results in illegible
character output, since the output of program files
user$ /sbin/fdisk
usually includes control characters, which in turn
Your shell then searches, with the aid of the shell causes the graphics card to switch into
variable PATH for the program. another mode.
This procedure, which appears fiddly, actually You can usually stop the program with Ctrl+C
makes complete sense. What lies behind it is the and get back a legible prompt. If the entry prompt
basic idea of giving users more security against continues to be illegible, try using Ctrl+V and then
access and/or damage. Ctrl+O (Figure 3). With Ctrl+V you tell your shell
A closer look clarifies this security mechanism. that you are putting down a control character, for
The variable contains a series of directory paths which you will receive no acknowledgement from
separated from each other by colons. This series is the shell whatsoever. Ctrl+O is the control
worked through from the top down to the character and normally appears in legible form as
directory path, in which the desired command ^O on the command line. Then press Return
and/or program is found, while the rest is ignored. (Enter), which restores the legible information
An infiltrated program, which bears only the Command not found and hopefully a
name of an often-used command, but in the restored prompt.
background triggers something completely If you really want to go the whole hog, you
different, is executed instead of the real program, should send the command
if it is found by the shell before the
user$ reset
actual command.
This is why it is safer only to search through afterwards, which removes clutter from the
the proposed directory paths. If the current screen output.
working directory or even the temporary directory In an emergency, you won't be able to put
jointly used by many were listed upfront in PATH, your finger on the key combinations to reset the
evil-minded programs would only have to wait for the graphics card mode. A reset typed in blind
a command from the daily flood of email onto followed by Return (perhaps twice in succession)
standalone workstations or attacker programs in might be all you need to do to restore
the /tmp directory – especially in networks. your screen. ■
A careful administrator starts programs with the
absolute pathname, so as not to give an infiltrated
program the rights of the Superuser.
Using the command

user$ echo $PATH

5 LINUX MAGAZINE 12 · 2001


FAQ DR. LINUX

6 LINUX MAGAZINE 12 · 2001


SOFTWARE OUT OF THE BOX

NTOP

NET Out of the Box takes the pick of the


bunch of the thousands of utilities
available and suggests programs

VALUE
CHRISTIAN PERLE
that are indispensable or unduly
ignored. This month is devoted to
network monitor ntop.

The increasingly networked world of computers is Ntop can be compiled and installed with:
now marching into the living room. The second or
tar xzf libpcap-0.6.2.tar.gz
third machine is linked with the main home PC and
cd libpcap-0.6.2
happily swaps data via TCP/IP. If you want to keep
./configure —prefix=../libpcap
on top of your private computer farm and its
make
outward network connections, you will find ntop by make install
Luca Deri very handy. cd ..
tar xzf ntop-1.1-src.tgz
Top N cd ntop-1.1
./configure
To run the program, the ncurses library (including make
associated Development Packet) must be su (enter root password)
installed. You’ll also need libpcap. To compile the cp ntop /usr/local/bin
cp ntop.8 /usr/local/man/man8
libpcap you will need the packages flex and bison.
exit
Ntop can be obtained at www.ntop.org/ntop.html.

SUID or not SUID?


Figure 1:
ntop in the text terminal ntop has to run with root rights. You can obtain the
necessary rights with the su command (and root
password), before you start ntop, and give them up
TCP/IP: ”Transmission Control Protocol/Internet Protocol”, the network protocol again after closing down the program with exit.
family of the Internet. Alternatively, you can issue (as root) with chmod
Protocol: A standardised language, with which programs understand each other. 4755 /usr/local/bin/ntop the SUID (”Set UserID on
library: files containing a collection of useful C functions for specific purposes. So execution”) right. So ntop - regardless which user
there are such things as libm, which provides mathematical functions, or the has started it - will always run with root rights.
libpcap, which can tap and examine network packets. Often, libraries are used by The first option is more secure, because then
several programs (shared). only users who know the root password are allowed
Development packet: When compiling source texts you will need the to monitor the Net. A better, more controlled
development packets for all the libraries used by the program. The header files assignment of root rights to users is offered by the
are an essential component (ending in .h), which specify the parameters of the program sudo.
functions included in the libraries.
Compile: A program in source text form from a higher programming language
cannot be executed by the operating system as it is. It is only by compiling
(translating) it with a Compiler that it is converted into a form which the
respective processor can execute.
Throughput: The throughput states how much data per unit of time (usually
measured in KBit/second or MBit/second) is passing via a network device.
Man page: The man pages (short for ”Manual pages”) are an online reference
manual for UNIX commands. These are called up with man command.
Port: A docking point for network connections. Ports are given numbers, and
many are assigned to a service via this number. For example FTP uses Port 21, SSH
Port 22, TALK Port 517, etc.
Home-directory: The personal home directory of a user. This is the first directory
after successfully logging on or with the command cd (without additional
parameters).

■ Figure 2: Statistics in the Web interface

94 LINUX MAGAZINE 12 · 2001


OUT OF THE BOX SOFTWARE

If ntop is started in a terminal it behaves similar to address. You must send a Ctrl+C into the terminal
the UNIX classic top, except that ntop does not with the ntop command, to shut down the service.
display the processor capacity being used by various ntop makes more information available via the
processes, but the network traffic due to various Web interface. Figures 2 and 3 show just a small Figure 3: Overview of
individual computers
computers. In Figure 1 a large movement of data is selection of the statistics on the distributions of
taking place, from sphere to camera. The current protocols in the total throughput, bandwidth
throughput can be read off at top right. The utilisation, network card manufacturer, network
program started with ntop -i eth0, thus instructed connections currently running and much more. In
also to tap packets on the first Ethernet card. Table 1 all the links from the ntop main page and
In the text interface ntop responds to various their functions are described.
keys. The space bar fetches additional information The Web interface can be blocked by a password.
into the columns of the displayed table, such as
protocols like FTP, HTTP or DNS. Other functions can To do this, the user must make a file in their home
be found on the Man page. directory called .ntop with a user name/password
We shall now leave the text interface with the q pair. The content of this file could look something
key and start the program again with ntop -i eth0 -
w 888. The terminal shows no output, but with a like this:
frame-capable web browser you can connect to # ntop password file
Port 888 with the ntop service thus started. This is tux dryfish
done by entering http://localhost:888/ as the site

Some information on network protocol

Basic Protocols UDP (”User Datagram Protocol”) is a connectionless


protocol, via which service protocols such as DNS run. UDP is
(R)ARP (”[Reverse] Address Resolution Protocol”) is used to not suitable for the reliable transfer of large amounts of
find the MAC address of a network card for an IP address. data. ”Connectionless” means that within the protocol there
This is the only way in a local network for IP packets to be is no option for making sure that a packet has really arrived
sent to the right computer. The MAC (”Media Access at the receiver’s end.
Control”) address is an address determined by the hardware
of the network card. A small selection of service protocols
IP (”Internet Protocol”) is a transport mechanism for various
protocols such as TCP and UDP. It sends packets on the basis HTTP (”Hypertext Transfer Protocol”) is the transfer protocol
of their destination IP address. IP is not restricted to a local used by the World Wide Web.
network. SSH (”Secure Shell”) is an encrypted protocol for logging on
TCP (”Transmission Control Protocol”) is a connection- to remote computers.
oriented protocol, via which many service protocols such as NBios-IP (”Netbios over IP”, also known as SMB (”Server
HTTP, SSH or NBios-IP run. Whilst, with IP, packets are merely Message Block”)) is the protocol a Samba server uses for
sent, TCP offers confirmation of receipt. In this case, Windows file release?
connection-oriented means that network connections must DNS (”Domain Name Service”) resolves computer names
be explicitly made and disconnected by special IP packets. such as www.linux-magazine.co.uk into IP addresses.

Table 1: Which link shows what?


No. Name Meaning
1. What’s ntop? General information about ntop.
2. Data Rcvd Summary of received data, broken down into data, allotted to IP or all protocols, together with throughput.
3. Data Sent Summary of data sent, broken down into IP, all protocols and throughput.
4. Multicast Stats Packets which are sent simultaneously to several computers.
5. Traffic Stats Information on packet sizes and distribution of protocols in the total throughput.
6. Thpt Stats The throughput for the last 60 minutes as bar graph
7. Hosts Info Information on computers, broken down by computer
8. R->L IP Traffic Network traffic from outside into the local network
9. L->R IP Traffic Network traffic from the local network to the outside
10. L<->L IP Traffic Network traffic within the local network
11. Active TCP Sessions Currently active TCP connections
12. IP Protocol Distribution Distribution of the protocols transported via IP
13. IP Protocol Usage Which protocols are used between which computers
14. IP Traffic Matrix How much was transferred and between which computers
15. Credits Thanks from the author
16. Man Page The manual page for ntop

12 · 2001 LINUX MAGAZINE 95


SOFTWARE DESKTOPIA

deskTOPia

CURSORITIS PATRICIA JUNG

Customising the cursor can add to the individuality of your desktop.


You don't have to settle for what XFree8 offers as standard,
provided you are a little bit creative

The cursor has a Cursors


different
appearance under The executable program decurs from the directory
X11 depending on decurs-0.42.1-alpha/src is then copied as root to
what it is placed /usr/local/bin. If the font file named cursor.bdf which
over or what the comes with the src directory is in the working
application is currently directory when you start, this is automatically
doing. But the loaded, and already you will have come across an old
fact that this acquaintance – the X_cursor cross hairs (Figure 1).
If you would prefer to take a different font file as
is nothing more than a font file the starting point, it is possible to select, using the
packed using gzip named cursor.pcf.gz, Load Font button from the fonts directory in the
seems to suggest that this could also be decurs archive, a different one –
swapped. But for what? Still at the Alpha stage, but
already thoroughly usable – at
http://www.hut.fi/u/pvsavola/decurs.html you can although at this point you
[left] download a cursor font editor program named should bear in mind that you are actually grabbing a
Figure 1: decurs with cursor.bdf
file loaded decurs. Provided the GTK library, the appropriate cursor font. Anyone using a text font whose first
devel package and the C++ wrappers GTK- (gtkmm glyph is not specified by decurs with the name
[right]
Figure 2: When editing,
and gtkmm-devel or similar) are installed, all you X_cursor can carry on editing, but should refrain
masked glyphs are edited need to compile are a configure and make. from installing the result as a cursor font.

90 LINUX MAGAZINE 12 · 2001


DESKTOPIA SOFTWARE

The rest is simple: First, the entire font is masked Figure 3: Information on
the current glyph
using Mask. This gives you a view of the various
cursors as they will appear on the desktop (Figure
2). Using the arrow keys, you can then move from
one glyph to the next, at the same time seeing
amazing cursors you won't usually come across,
since they are never used.
The primary candidates for change are those
cursors which you've already seen ranging free.
Once a victim is found, then you set a black pixel xsetroot can be used for this purpose.
with a right mouse click and a white one with a left Someone has perhaps already made use of
click. Pressing the left mouse button with the Shift this in the pre-KDE/GNOME era to make the screen
key held down deletes a pixel. It becomes background totally black with xsetroot -solid black.
transparent and the turquoise background of the The option -cursor allows you to install an icon
character interface becomes visible. as root cursor. But not just any: Firstly, it must be in
The Invert button turns black pixels into white the form of a black and white X-bitmap (filename
ones and white into black. On the other hand if you ending .xbm), and also in two copies. So that the
press Ctrl and left-click at the same time, you can cursor is not disfigured by an ugly screen edge, a
set the hot spot of the cursor. Where the red cross mask bitmap is produced, which delimits the
hairs lie is the point at which the exact mouse focus outlines of the cursor. The section of the bitmap
will appear later. Bundling it onto the wrong end of serving as cursor is made black for this (Figures 4
an arrow means that the accuracy of the user and 5).
will suffer. To do this, simply paint the outlines of the
If you are interested in the exact dimensions cursor image with a graphics program or, even [left]
of the current glyph, a press on the B key will better, an icon editor, in black, and save the mask Figure 4: Cursor image ...

help. This information can be found in the X- under a different name (but it must be as an .xbm [right]
Terminal window in which decurs has been file). Anyone not wanting to design their own icon Figure 5: ... and mask

started (Figure 3). can make use of the xbm fund in their own
Once the cursor font has been edited, it is computer. A locate .xbm | less should provide an
unmasked using UnMask, before being saved using ample selection. A
save font. Next, a little bit of manual labour is Glyph: Symbol of a font
xsetroot -cursor image.xbm mask.xbm
required, because the .bdf file created must now be Root window: The bare
made into a .pcf.gz. This is done using then comes up with a whole new cursor experience. screen background managed
the commands If you find black on white too boring, you can turn by a window manager. If you
the black foreground colour red with -fg red and start X without a window
bdftopcf -o cursor.pcf new_cursor_font.bdf
the white cursor background black with -bg black. manager or desktop
gzip cursor.pcf
The program xcolors tells you which options are environment, the root window
Once root has made a backup copy of the available in the choice of colour. So a will show itself as a black and
original cursor font in white background. It is called
xsetroot -cursor image.xbm mask.xbm -fg Lemo U
/usr/X11R6/lib/X11/fonts/misc/cursor. pcf.gz or a root window because it is
nChiffon1 -bg SeaGreen
similar, the newly-created cursor.pcf file is copied the mother of all the windows
into its place and X is restarted. is useful if you're curious about the colours available which the window manager
If the cursor with the new font is now on your computer. Using the picture bitmap shown can place thereon.
invisible (because you have saved an important in Figure 4 and the mask bitmap of Figure 5, results
glyph in pieces), keep your cool. Kill off X with in a cursor featuring tiny light yellow computers ■
Ctrl+Alt+ Backspace and recopy the old backed- with nostalgic green monitors, which are best seen
up cursor font file to its original position. against a black background.
If, despite being edited, a cursor appears in Whilst browsing the cursor font with decurs
the old, familiar guise, you will unfortunately you may have found a glyph that you wish to use
deskTOPia
have to settle for this. Many applications such as as root cursor. This is also possible under xsetroot.
gimp use their own cursors instead of those from Thus Only you can decide
the how your Linux desktop
xsetroot -cursor_name bogosity
cursor font. looks. With deskTOPia
makes the bogosity glyph in cursor.pcf.gz the we regularly take you
Root cursor standard cursor. with us on a journey
Unfortunately, desktop environments like KDE into the land of window
If this is all too fiddly, you can merely change the prevent xsetroot effects. To make proper use of managers and desktop
cursor which appears when you move the mouse xsetroot you'll need a standlone window manager environments,
over the space on the root window not like windowmaker. ■ presenting the useful
occupied by windows, toolbars or menus. A long- and the colourful.
established command line program named

12 · 2001 LINUX MAGAZINE 91


SOFTWARE LINUX FOR KIDS

From tiny acorns grows

THE GNU
GENERATION
Having looked at
RICHARD SMEDLEY

individual kids'
packages in previous
issues, let's see
how to get everything
on your system at once.
We introduce the
Debian Jr project
and interview Ben
Armstrong, the
lead developer.

The proposed logos for


Debian Jr

98 LINUX MAGAZINE 12 · 2001


LINUX FOR KIDS SOFTWARE

Commom Ground

Many people are drawn to GNU/Linux by the community support. The help and sharing of
knowledge make learning new ways of using a computer enjoyable.
Most Linux distributions are put together by commercial enterprises, or by small groups
of individuals. Debian is unique in being actively developed by a worldwide community of
over 500 developers acting in chaotic co-operation, on the agreed common ground of the
Debian Social Contract. This document supports the open development of a totally Free
Operating System, of the best possible quality.
It works extremely well, as Debian GNU/Linux provides a stable OS found on many
servers and a cutting edge unstable branch which graces the desktop of many a developer.
Yet the notorious installation aside, Debian is not too difficult a distribution for most users.
Debian Jr's wider aim is to make the distribution a better experience for users aged two-99.

The primary goal of the Debian Jr project is to make you start with a thought "my children need such-
Debian an OS our children want to run, initially and-such" and then the project just happened?
focussing on children aged two to eight. At this age
a child will have an older sibling or adult acting as Ben Armstrong Precisely. Nobody had any
sysadmin (systems administrator) for them. It is at grandiose plans. There was just this thought that
their technically competent sysadmin that a large with no fewer than seven computers in the house
part of the initial release is aimed, giving them a running Debian, and all of my children already using
starting point for a children's system. However, once them, we had already a start at using Debian as a
Debian 3.0 is released, and users start to provide base and tailoring it to suit their needs.
feedback on Debian Jr., much more can be done. I saw that we were relying on serendipity to
You can download the project now if you run a supply us with more packages suitable for the
Debian (or Progeny or Stormix) system by including children. Yet I knew there must be more out there
Woody (testing) in your /etc/apt/sources.list and that could be packaged for Debian. Also, it was
installing the junior packages. When Woody is plain to see that any integration issues that had
released you can simply select Debian Jr. in the particularly to do with children were not going to
tasksel menu during installation. happen by accident. And finally, I realized it must
not be entirely obvious to a new Debian user which
Birth of a project packages would be good for the kids and which
would not. [left]
Two computers are
Linux Magazine How did the project get started? I asked some other Debian developers about it, better than one
You were surely aware that a GNU/Linux distribution and was encouraged by them to go and start
[right]
for two-99 year olds was a vast thing to take on – something. Up until that point I was thinking "we" Maria, aged nine, plays
were you feeling particularly bloody-minded, or did should do this and "we" should do that and hadn't Rocks'N'Diamonds

12 · 2001 LINUX MAGAZINE 99


SOFTWARE LINUX FOR KIDS

really considered where I fitted into it. But it made LM What about recognition from the wider Free
sense for me to make a commitment, so I kicked off Software community?
the discussion on the developer's mailing list. This
got some favourable responses and got people BA If you look at our Web page, I list a number of
thinking about what such a thing would look like. other, related projects. Members of several of these
Then it was just a matter of getting our own mailing keep in touch with me and continue to support and
list and website set up and try to figure out where encourage me. In particular, SEUL/edu is a great
to go next. And so the project was born. help. They keep me inspired and help me to kick-
start the project whenever I let it stall out.
Debian and children
LM As a Debian developer you obviously choose to
LM What level of support have you had from follow the guidelines on Free Software. There are
Debian developers for this project? proprietary children's apps that run on Linux that
could be included in non-free or contrib. What are
BA I have encountered plenty of Debian developers your feelings on the importance of kids' (and
(and not just those with children) who think this is a everyone's) software being free?
great idea. We have received assistance from those
not working directly on Debian Jr whenever we BA Debian Jr is not actively making an effort to
have needed it. I have been surprised to have some package non-free software. Every Debian developer
of these people approaching me personally to ask is free, of course, to package anything that can be
"How does this issue affect Debian Jr?" or "What placed in contrib or non-free, but I feel that to do so
features should go here to make this package child- myself would be dissipating my energies into stuff
friendly?" So I think the mere existence of the that is off focus for the project. There is no reason
project is helping Debian developers to consider we should not be able to shape something entirely
"...and what about the children?" out of free software that will appeal to children. I

Childproof is no education

One of the project's aims is to you don't have to go far to find that. You experience for the child, but also more
balance childproofing with the goal go as far as you can go on your own until robust free software.
of allowing children to try things you are stuck. When you are truly stuck, Or at least that's how I envision it.
(and yes, break things). Armstrong is you tell your support group what you did Perhaps that further illuminates my
very much in favour of exploring and and hopefully you get answers that lead previous objection to making a tight
learning by mistakes: you to the solution. The next time you're system for non-technical sysadmins. I'm a
faced with a similar problem, you are technologist, and as such, I have slightly
BA Well, if you're an adult looking better equipped to deal with it. That's different agendas than non-techs. I am
for the "Linux experience" you are the dynamic I see in my LUG played out raising my children with geek values. I
necessarily going to end up tweaking over and over again. And the members am raising them to learn how to deal
configs and breaking things yourself. truly grow in this environment. with computers when they do the
It seems only natural to me to share Thus children, who need to learn unexpected, and to be comfortable with
that with my children. about computers just as adults do, that and know what to do, even if they
As preposterous as that concept should be given the same opportunity to don't know how to fix it themselves.
might seem to the uninitiated, I learn. Instead of shielding them from the I allow that not all people in the
really have found that those who computer by hiding all the details inside world are geeks or see the value in
only know how to fix something by black boxes, we encourage the children making things break and improving
removing it and re-installing it, or by to look at the config files, read the them. They just want stuff to work,
rebooting their system get far less comments, and try different values. They period. When stuff breaks, it is
out of their system, and are far more take great pleasure in constantly disorienting, irritating, frustrating, and
dependent on those with more tweaking their Web browser settings or they don't see it as a learning
experience for technical help. With a game settings to suit their mood or just opportunity or software-improvement
small amount of poking around and their curiosity. And yes, sometimes this opportunity at all. If that's where a user
exploring things on your own, even if means they break things. Well, that's is, maybe they should consider a different
it means breaking it even worse than great. If they tweak a config in a way operating system. Or maybe that user just
when you started, there is an that the author didn't anticipate and it needs to enlist the help of a technical
opportunity for you to learn how causes a program to core dump, the friend who is there to help when things
things work. Of course, you need to child, along with their observant and break. If that friend is also willing and
find a community of helpful people helpful sysadmin will jump on this has time to help when his children break
with more experience than yourself opportunity and send a bug report in. things, then maybe, just maybe, he will
to fall back on, but these days The end result is not only a learning get along fine with a Debian Jr system.

100 LINUX MAGAZINE 12 · 2001


LINUX FOR KIDS SOFTWARE

turfed the TV. Isn't plopping our children in front of


Woody, Potato, Sid? a Web browser or a video game every bit as
much an impediment to their
Many of you will have noticed that development as TV? Doesn't it have
Debian releases are named after the same potential to become the
characters from the film Toy Story. default entertainment around
1.1 Buzz the house, soaking up family
1.2 Rex time and leading us
1.3 Bo ultimately to a state of
2.0 Hamm technology-assisted
2.1 Slink disconnection from
2.2 Potato each other?
3.0 Woody Sure, the potential to
unstable Sid end up this way is very
real. It is a struggle when
This is because Bruce Perens (see you're a geek and you
interview Linux Magazine 9), one of the already devote great
founders of Debian, worked at Pixar swaths of your leisure time
Studios for 12 years. The unstable to computers. It takes energy
(development) branch of Debian is now and planning to give
permanently called Sid, after the boy computers their proper place in
next door who destroyed toys. the home, much in the same way
that families who have televisions
need to put effort into keeping the TV in
don't need to re-hash all of the arguments for free balance with other activities.
versus non-free here. I believe free software is just So, where does the computer really fit, after
as important for kids as it is for adults, and for much taking these other things into consideration? I think
the same reasons. they can be powerful tools to think with. Limitless
entire universes of thought can be constructed and
Children and technology explored with them. With guidance, a child's
computer can be a great tool for developing their
LM Where do you see this project in relation to mind. It can be something more than an extremely
strictly formal education (schools) projects – such as
SEUL/edu, OSiE and FSF-edu?
Starting Point
BA Well, the foundation of any formal education is
necessarily in the home. True to the vision of "Let's As we have mentioned, the project is at an early stage, waiting to build a
build something our kids will want to use." we are user base to provide feedback. The range two to eight years is quite
more attuned to what appeals to children than what diverse, but initial concern is with building the framework. This helps to
appeals to educators. Not that the two are narrow down the focus to three areas:
necessarily opposed to each other. I would certainly 1. Identifying which packages work well with children: Much has been
hope that our educators, too, are looking for things done here, and you will find user comments on each on the projects
that appeal to children. But by focusing on children packaged page
in the home, we are working with what we 2. Organizing packages in a way that makes sense to children and
know best. sysadmins alike: More work needs to be done on ways of organizing the
material makes sense for which age ranges. "It will be when we tackle the
LM Just how important are computers in children's menu system that we shift the emphasis to the children. And then the fun
development and why? begins, because age differences are going to make a big difference to what
makes sense
BA I think as a geek parent I don't question this 3. Making it easy to install these packages: Meta packages are easy to
nearly as much as I should. We take deliberate steps construct for Debian
to ensure our children's minds [are] provided with a
universe of books, arts, games, music, food, culture BA We have deliberately avoided addressing the sub-problem of making
and so forth to explore. And we also take steps to Debian painless for non-technical parents to introduce to their kids. Simply
remove things from their environment that we feel put, to assume technical parents who are comfortable with administering a
impede progress in those areas. UNIX system makes our job quite a bit easier, as that's who we are
How important are computers in children's ourselves. It's best to stick with what you know. But I envision Debian Jr
development? Well, we could live without them. eventually finding its way into less-technical homes. When we get there,
We could go to the extreme and be complete we'll be interested in talking with that sub-group of users and trying to
Luddites, switching off the computers at home and address their needs the best we can.
just leaving them for "real work". After all, we have

12 · 2001 LINUX MAGAZINE 101


SOFTWARE LINUX FOR KIDS

job to a manageable size, while still providing a very


Info usable one-point-oh.
Ben Armstrong manages to combine a range of geek interests (including running
a LUG, developing for Debian and helping with Xpilot) with a well-balanced F is for free
home and family life. I think it's something to do with the clean Canadian air.
Debian Jr's homepage: http://www.debian.org/devel/debian-jr LM Free Software is quite an abstract concept for
mailing list: http://www.debian.org/MailingLists/subscribe children to understand. My children understand
packages included: http://www.debian.org/devel/debian-jr/packaged that GNU/Linux is better because "you can share
Xpilot: http://packages.debian.org/stable/games/xpilot.html it." What has been your experience of discussing
http://www.xpilot.org the principles/morality of FS with kids and adults as
SEUL/edu: http://www.seul.org/edu well as the practical benefits?
For an honest assessment of the pros and cons of Debian:
http://www.debian.org/intro/why_debian BA I think it reduces to "Well, with Linux I can do
this, whereas with Windows I cannot." and
■ furnishing examples. This brings the abstract
arguments into familiar, concrete terms that
expensive TV replacement. Let televisions be children can see more readily. I find myself not
televisions and game consoles be game consoles. having to do this with my children anyway, because
We are building something that goes beyond an all they know in this household is Linux. I cannot
entertainment system for kids, addressing each of even remember the last time we booted to
the aspects of computers that we feel are important Windows to play a game. When it is time for
for our children's development. I'm not sure we computer turns (a familiar and highly sought-after
fully grok all of the possibilities yet. reward once chores or homework is done), it is just
assumed this means Linux computer turns. There's
Ready when it's ready just so much more now that they can use on Linux
that there is no need to supplement it with the
LM What's the timetable and are you ready for the (admittedly flashier in some cases, and certainly
Woody freeze? more polished both in the graphics and sound)
small collection of Windows games that remain in
BA Within Debian, we are fond of saying "It will be our possession.
released when it is finished". However, in Debian When it comes to reasoning with adults, I
Jr's case, being a small personal project within emphasize community first and then the source.
Debian, we don't have the clout to say "hold it, we Even if they don't get the source argument, they
still have this or that to put in". It is kind of like almost always comprehend the community side
being pregnant. You know that ultimately that baby of things. ■
will come out, but it is up to nature to decide when.
The longer she stays inside, the fatter Debian Jr will
continue to get. Where this analogy falls apart is, I
don't think Debian has ever been known to give
birth prematurely. So I remain hopeful that we have
time yet to put on a bit of extra fat.
The author But in more concrete terms, for Woody you
Richard Smedley juggles a job will see just a structure for a Debian Jr system.
in IT, magazine work, two This will be enough for the user to install and
eccentric children, cars (which use with their children. But we need that
are more interesting than user base before we can go much further. I
functional) and an overgrown don't like developing in a vacuum. We'll
garden. need to have users try this initial offering
and start talking to us about what to put
in there next. We'll have just a "baby
Debian Jr" in Woody. The following
release is where we'll see it mature.
For instance, we have deliberately left
out support for Gnome and KDE in this
release. Instead, we're focusing on the core,
by shaping a collection of packages that will
work on any system, whether you have Gnome,
KDE, or neither. By keeping the first release
"light" we don't devote a lot of energy into
building structures that we may later find ourselves
having to tear apart and rebuild. We also keep the

102 LINUX MAGAZINE 12 · 2001


SOFTWARE LINUX FOR KIDS

103 LINUX MAGAZINE 12 · 2001


COMMUNITY GROUPS

Running a Linux User Group

COMMUNITY
SPIRIT COLIN MURPHY

Linux is a community effort – it So, what is a Linux User Group?


grew out of a single message that A User Group is no more than a group of Linux
Linus Torvalds posted to Usenet users with a similar mindset or reason to “hang
together”. Maybe they are interested in using
10 years ago. That community effort certain applications, so a group might form just to
is still growing, through Usenet, discuss how to use and abuse KWord, or just
console each other after it crashes on them.
email, IRC, CVS and Linux User Developers with a passion for a particular
The place to start Groups – or LUGs. programming language can group together, maybe

106 LINUX MAGAZINE 12 · 2001


GROUPS COMMUNITY

so they can persuade themselves that their letters to Linux magazine editors, as well as the
language is the one true language, or again, maybe good Internet stalwarts like Usenet.
to shelter as a group against those telling them that There is one very important resource that you
their language is really the lowest of the low. Or, really should call upon: the local LUGs that already
which is more often the case, it can be a collection exist. Even if you think of them as being remote,
of Linux users with a much wider, more general those LUGs might be a long way away for you and
interest in all things that make the OS what it is. your new group might be nearer or convenient for
Groups like these can use Usenet, email, mailing some of the members of the surrounding groups.
lists, Web pages and other resources to keep in So send an email canvassing support or outlining
touch with group members. Quite often User your proposition to the mailing lists of those groups,
Groups will also have a location in common – which or ask the group admins to post a link to a Web
makes them a local LUG, allowing users to meet page so you can gauge demand.
each other in person. When people talk of LUGs it is Do remember though that it's not a case of
usually the local variety they are thinking of. competing with your neighbouring groups, but of
These local LUGs vary in size and type. Some complementing them. You don't want to end up
may have as few as four or five regular members; being accused of poaching users from an area. You
others may have 50 or more. Some might just meet should always try to avoid clashing with other
in a pub, going through members' problems or groups meetings – you will be surprised how many
solutions, other groups may put on talks and members will want to go to both.
demonstrations for their meetings. Some may want Once you have started to generate interest you
to encourage and introduce new users to Linux, will need to set up some channels of
some, though not many, may want to remain lofty communication so that those in your fledgling
and technical. The reason for such a wide range of group can discuss issues and plan together for its
LUGs is the way they develop, they can just spring future. Mailing lists are ideal for this and the 'UK
up when and where the need arises, just so long as Linux Users Groups' organisation will help you with
someone is there to plant the first seed. setting one of these up for free, as well as providing
other useful online resources like space for a Web
Finding out about LUGs page link and Internet Relay Chat rooms. See their
Web page at http://www.lug.org.uk/ for more
As Linux is developing and growing, more and more information on how to do this. There you will find
local LUGs are forming to offer help, friendly lots of help, advice and support with setting up your
support and camaraderie, so it is becoming more own LUG along with a mailing list specifically
likely that you will have a group near you already. for 'lugmasters'.
The Linux print magazines put great effort into So, with any luck, you will have proved to
listing LUGs, but you should also check out what is yourself that you are not alone, and at least
available by looking on the Web, someone, but hopefully lots more users, share your A User Group in action
http://www.lug.org.uk/lugs/index.html will start hopes for a group of their own. If you intend to all
your search off, or ask in Usenet, in groups like meet in person you will need a venue. Often, the
uk.comp.os.linux. first few meetings will be held some place neutral,
like a pub. This will allow you all to assess what type
Starting a group of group you are and how you might develop. If you
are just a small group, you may find it suitable to
There is a long way to go before every town and meet in each others' houses, assuming you don't
village can boast its own LUG, so there may not be a mind having the kids frightened and you don't mind
group in your area, or the group which is in your inviting people who are still strangers into your
area just doesn't meet your needs. If you do find home. Larger groups can present more of a problem
yourself in this situation then maybe you should when finding somewhere to meet, church halls,
consider starting your own. The only personal cost is scout huts, libraries and schools might fit the bill,
one of spare time, and, even then, not a lot of it as a but they usually want money and for the sake of
group can grow out of simply sending a few emails. simplicity, it's far easier to stay away from charging
First of all you had better assess the need for the if at all possible. You could also try some of the local
group, the 'L' in LUG is for Linux, or possibly for computer companies. They might appreciate the
local, but definitely not for loner, so you will need to opportunity to tap into your group as a Linux
make sure that the group you hope to start will be resource for themselves, offering you a venue for
fulfilling the needs of more people than just free. The general rule of thumb is that you can't
yourself. You should advertise your needs somehow afford to leave any stone unturned – opportunities
and see if they are shared by anyone else. This could appear from the most unlikely of sources.
mean posting an announcement in a free-to- The community spirit of Linux can't be
advertise type newspaper or magazine, putting overestimated, and there is no better place to see
cards in supermarkets or flyers in your local that spirit than as part of a LUG. We suggest that
technical bookshop or computer shop, or sending you make every effort to be part of it yourself. ■

12 · 2001 LINUX MAGAZINE 107


COMMUNITY BRAVE GNU WORLD

The monthly GNU Column

BRAVE GNU
WORLD GEORG CF GREVE

Welcome to another Brave GNU World. This issue


covers a rather wide spectrum of applications that
most people would normally not know about.

GCompris concept. The goal is not so much deep knowledge


but rather making training a fun process.
GCompris by Bruno Coudoin is a fresh addition to There are several programs that Bruno would
the GNU Project in the Free Software and Education consider board based – but they all use different
sector. Children tend to learn a lot while playing libraries, have different user interfaces and their
with their environment, which is why many development proceeds with wildly varying speeds.
programs try to teach their lessons in game form. These circumstances complicate finding and
Unfortunately these programs are usually using them.
proprietary. Closing this gap for pedagogical To avoid this, GCompris has two essential parts:
software is the goal of GCompris. the engine to create, modify and execute boards
The program itself is based upon boards. Bruno and a collection of boards for different concepts.
sees a board as a unit that introduces or exercises a The engine has been written in C using the
Gnome libraries and has a very simple user interface
The latest GCompris board. that has been created especially for children. The
Land the paratrooper on the program is available in seven languages and is
moving boat
already being used successfully in schools and
homes around the world. This means a lot to Bruno
and is also quite remarkable as the program is only
one year old.
He is not satisfied with the graphical side of
GCompris, but now Linuxgraphics will be handling
this part. If you are interested in participating in the
graphical area, they are the ones to contact.
The next programming task will be the creation
of a board-editor that can also be used by computer
illiterates. Right now boards are being written as C
plugins with XML as the data format, which is
asking a little too much of some teachers. Help
creating an easy-to-use board-editor is welcome.
But even if the board-editor is not ready, there
are several boards available. Among them are

108 LINUX MAGAZINE 12 · 2001


BRAVE GNU WORLD COMMUNITY

training for keyboard and mouse, reading the clock, implemented classes and functionalities. More
a puzzle with famous paintings and easy calculus. recent information about this can be found in the
To keep the program simple only the Gnome documentation of the API on the CDK homepage.
canvas is used for implementation of the boards. Jmol was originally a
Extending this to other widget drawing areas is a program for the simple
task for the future. and easy 3D-visualization
This French program is pronounced ”j’ai of chemical structures as
compris,” which means, ”I have understood” and an alternative to XMol. Functionality for editing
was originally written by Bruno Coudoin for his own molecules, simple minimalisations based on force-
children. And he would especially like to thank his fields, molecular dynamics (microcanonical
children for their patience because the program ensemble) and langevin dynamics (canonical
evolves far too slowly for them. ensemble) is planned.
Jmol is also based on Java and uses the SWING
FSFE– Free Software and toolkit for its graphical user interface. Just like the
CDK it is available under the GNU General Public
Education License. The big advantage of Java-based
Related to this, we would like to point out that the applications is their high portability. Additionally,
Free Software Foundation Europe has made the Jmol can be used as an applet in Web pages and
support of Free Software and Education one of its is scriptable.
declared goals at its general assembly this year.
This goal is pursued together with the JMol showing the
caffeine molecule
Organization for Free Software and Education and
Teaching (Ofset), which has recently become an
official associate organization of the FSF Europe.
In order to bring together all the different
initiatives, people and organizations that are active
in this area, a special mailing list has been created.
Several people have already joined and introduced
themselves. The next step will be to launch a
meeting of everyone involved.
Then we can discuss together which concrete
measures can effectively support Free Software and
Education. If you would like to join this process,
you’re very welcome.

Chemical Development Kit


[below]
A JChempaint drawing in SVG
In a way, this article is a format. Also displayed in Batik – a
follow up to the Jude free SVG viewer
feature of issue 10, which
introduced Jude via its use
in the Crystal Engineering Laboratory of Ciamician,
the chemical department of University of Bologna,
Italy. In this feature the chemical functionality has
not been discussed, and this is what we would like
to do now.
We will talk not only about the Chemical
Development Kit (CDK), but also about Jmol and
JChemPaint, whose maintainers Christoph
Steinbeck and Dan Gezelter launched the CDK
together with Egon Willighagen about half a
year ago.
The Chemical Development Kit (CDK) is a Java-
Library aimed at providing all the basic classes and
tools for chemical software under the GNU General
Public License. Its design is partially based on the
observations Egon Willighagen made with his
CompChem/CDK library that had some flaws in
the API.
The project itself is still in a rather early stage, so
it makes no sense to talk about already

12 · 2001 LINUX MAGAZINE 109


COMMUNITY BRAVE GNU WORLD

JChemPaint is a 2D-based Scientific software should always be


editor for chemical Free Software.
structures with the
intention to provide a 2D Alma
extension for Jmol. It supports a lot of the standard
features of proprietary programs already and can Guillaume Desnoix is the author of Alma. Alma
create output in bitmap, Postscript and Scalable stands for Atelier Logiciel de Modelisation er
Vector Graphics (SVG) form. d’Analyse, which means workshop for software
Like the other two, JChemPaint is based on analysis and modeling.
Java, but it is licensed under the GNU Lesser Alma reads different sources (models, source
General Public License. It is as portable as Jmol and code) and helps the user design and modify the
can also be used as a website applet. The Chemical object-oriented model, modify the structure and
Markup Language (CML) is being supported by code and create new output in the end.
both programs. The long-term plan is to make both This can be done in many formats. Alma
Jmol and JChemPaint use the CDK; and ultimately supports Java, Idl, XMI, C, C++, Fortran, Rose, MDL,
to unite the two. Class, JavaP, Taglip, JSP as input formats and the
These projects already provide chemists, output can be done in the form of source code,
biologists and others working on the molecular level documentation, diagrams or a natural language.
an impressive array of features based on Free Alma offers easy capabilities to declare and
Software. Even if a particular piece of functionality change classes. It is especially useful for developers
is not supported, we would recommend people who seek to incorporate old code in a new project
help these projects along rather than invest in or who wish to translate a project into a new
proprietary software. programming language. It can also be very useful
Although this may seem more complicated at for ports or encapsulation.
first, it does offer many advantages in the medium According to Guillaume, the special advantage
and long term. New ideas can be followed through of Alma is its real NxN mapping with a common
subsequently without being stopped by the limits of editable model. There are other projects to analyse,
proprietary software. This is essentially a direct translate or beautify source code, but these usually
result of the philosophy of Free Software being only work unidirectionally between two languages.
based upon the scientific principle. Also only Free But Alma is a very big project. Half of the
Software can guarantee reproducible results. parsers and generators for the different languages

The Alma interface for software


projects in various formats

110 LINUX MAGAZINE 12 · 2001


BRAVE GNU WORLD COMMUNITY

are still alpha-stage. This lets the specialized


programs mentioned above still do a better job in
Info
their tasks, but their concept has Send ideas, comments and questions to Brave GNU World column@brave-gnu-
serious limitations. world.org
Alma is written in Java 1.1 and can be used on Homepage of the GNU Project http://www.gnu.org/
almost any computer. It can be used command line- Homepage of Georg’s Brave GNU World http://brave-gnu-world.org
based or through a GUI. The console part can even We run GNU initiative http://www.gnu.org/brave-gnu-
be compiled with GCJ or run on Kaffe. world/rungnu/rungnu.en.html
Currently, there is about one release per GCompris homepage http://savannah.gnu.org/projects/gcompris
month, increasing the version number by 0.01. Linuxgraphics homepage http://www.linuxgraphic.org
Taken as a basis, this would mean that version 1.0 Free Software Foundation Europe homepage http://fsfeurope.org
of the project would be ready in July 2006. Ofset homepage http://www.ofset.org
Interested developers should risk a look before Free Software and Education mailing list: edu@fsfeurope.org
that, though. Free Software and Education mailing list home page
Alma is published under version 2 of the GNU http://mailman.fsfeurope.org/cgi-bin/mailman/listinfo/edu
General Public License, so it is free software. Chemical Development Kit (CDK) homepage http://cdk.sourceforge.net
Normally, a program is licensed under the GPL Jmol homepage http://jmol.sourceforge.net
version 2 or – at the users discretion – any later JChemPaint homepage http://jchempaint.sourceforge.net
version. Limiting the choice to version 2 is Chemical Markup Language homepage http://www.xml-cml.org
something seen sometimes, so we’d like to say a Alma homepage http://www.memoire.com/guillaume-desnoix/alma/
few words about it. GNU Privacy Guard homepage http://www.gnupg.org
The argument for this step is usually that later
versions of the GPL are not yet known. Because of ■
this, it isn’t possible to know whether the later
versions will be good. This may seem logical, but in Since the majority of Free Software is under the
the end it does create weaknesses. GNU General Public License, libgcrypt closes a very
In the event that a later version of the GPL is not important gap. Libgcrypt falls back on the very solid
accepted by the author or the users, the program base of the GnuPG project, so the cryptographic
can still be used under version 2 of the GPL, there is routines are thoroughly tested already. Still, the
no enforcement to use the later license. project has to be considered Alpha-Software
But in the case that an update of the GPL is according to Werner, because the API has only been
necessary because the laws change and version 2 finished very recently.
has legal problems, a restriction to version 2 will Despite this warning, libgcrypt can already be
leave the program without a valid license. If all used - and is. Nikos Mavroyanopoulos, who
authors are reachable, this can be solved easily. But supported Werner with the development of the
very often authors disappear or lose track of a libgcrypt, is using it in the GNUTLS library that was
project. So limiting the license to version 2 does not featured in issue 8.
offer any benefits and creates potential problems. The special strengths of the libgcrypt are the
Another thing should also be said: The author extensible API for public key functions and the
of Alma is very happy that so many people access to the internal functions for big integers.
apparently understand the difference between free Also extension modules can be loaded dynamically.
beer and free software. On his page you’ll find a The library can be used on UNIX-like systems
questionnaire and the possibility of purchasing the and W32 platforms. Plans for further development
program for $10. are generating a stable release and improving some
There is no enforcing this payment, but the user of the internal implementations, also some high-
is asked to pay if he/she uses one of the many level functions to deal with OpenPGP data
automated installers for the different platforms. This structures are to be added. And of course GnuPG
is one of the possible ways to sell GPL software in will be ported to libgcrypt.
harmony with the GPL and we can only hope this One thing Werner would like to see mentioned
will become more common with working is that usage of the libgcrypt requires a certain
micropayment systems. awareness of cryptography. Just using a few
algorithms in a program will do no good if the
libgcrypt design isn’t structurally sound. Given the tendency
of some developers to put steel doors in cardboard
Thanks to the work of Werner Koch, we now have houses, this seems to be good advice.
libgcrypt, a library of cryptographic functions under
the GNU General Public License. This library is part Enough for now
of the GNU Privacy Guard (GPG) Project and can be
found on its homepage. That’s it for Brave GNU World for this month. As
Other cryptographic libraries are either not free usual I’d like to encourage you to comment. Ideas,
or under GPL-incompatible licenses like OpenSSL. criticism and questions are very welcome. ■

12 · 2001 LINUX MAGAZINE 111

Potrebbero piacerti anche