2004.05_Projects-Free Software and Its Makers.pdf

(1946 KB) Pobierz
Layout 1
COMMUNITY
Free Software Projects
Projects on the Move
Free software covers such a diverse
Oikarinen in 1988, describes a pro-
tocol that allows multiple clients to
communicate directly via a central
server. There are five Requests for
Comment (RFCs) by now, and a
multitude of server variants, whose
only common denominator is basic
IRC functionality.
Way back in 1990, the best-
known IRC servers joined forces to
create a network without a fixed
structure. There was an average of
12 users for 38 servers. That same
year, another network with 25
servers started up. This time it did
not have any users, as it was
entirely concerned with testing the
new IRCd version 2.6.
In August, a few admins decided to
link an open server to the existing net-
work, which had been known as
Anarchy Net, or simply A-Net, up to this
time. The server allowed third parties to
attach their own IRC servers to the net-
work. Its hostname was eris.berkeley.
edu . As Eris caused quite a stir, the
EFNet [5] (Eris Free Net) was founded
just a short time later. Most of the
servers and users on the A-Net left to
join EFNet, which has since become the
largest IRC network in the world.
As EFNet grew very quickly, the lines
were often overloaded. This led to net
splits, i.e. servers started dropping con-
nections to other servers. Clever IRC
users exploited this. Both servers have
an open channel to a specific network. If
a computer loses its network connection,
the channel continues to exist both on
the computer and on the network. An
attacker joining an empty channel on
one of the affected servers automatically
assumes operator privileges.
When the network link is reestab-
lished, the attacker retains his privileges.
Thus, a net split will allow a previously
non-privileged user to assume operator
privileges, and take over the role of the
“chanop” in that channel. Users and
server operators alike were unhappy
with this security loophole. This meant
range of utilities, applications and
other assorted projects, that it can
be hard to find the perfect tool
from all that programming effort.
We pick the best of the bunch for
you, including - Apple’s IPod, the
nitty-gritty on IRC.
BY MARTIN LOSCHWITZ
players has dropped to well below
US$ 100. Sadly, the low price is not
always an advantage, as the sound qual-
ity tends to suffer.
Apple’s iPod is anything but “cheap”.
Apple’s asking price for the iPod is still
US$ 299. For that amount of money, the
owner can expect excellent sound qual-
ity and a nicely-finished, good-looking
device. You also get a large hard disk
with a capacity of up to 40GB into the
bargain.
There are Linux programs for upload-
ing music to the device, organizing
tracks, and creating playlists by now.
Before you start, you may want to con-
sider replacing Apple’s default HFS+
operating system with VFAT. Linux does
support HFS+, but the driver is slightly
buggy. The VFAT driver is much more
stable, and the iPod is perfectly happy to
run with VFAT. Surf to [1] for a how-to
on formatting the disk.
The Gtkpod [2] tool, and the Gnupod
script collection [3], allow for convenient
track management on the iPod. As the
name suggests, Gtkpod uses the GTK2
interface, whereas the Gnupod tools are
command-line programs, and this typi-
cally makes Gtkpod a more convenient
choice. Users can synchronize local
directories with the iPod, create playlists,
and sort their tracks. Gtkpod also allows
users to rate tracks, and sort them by
order of preference.
If synchronizing with Linux does not
keep you happy, why not install Linux
on the machine? The iPod Linux project
at [4] lets you do so. The project website
provides the required tools, and a guide
that tells you how to install and config-
ure the iPod. As proof, the website
shows a photo of an iPod outputting
Linux kernel messages in its display.
All in all, the iPod turns out to be
extremely Linux-friendly. Gtkpod takes
the pain out of managing your music. If
you have always wanted to have the Tux
framebuffer logo in your LCD display,
this is your big chance – thanks to iPod
Linux.
Martin Loschwitz is from a small Ger-
man town called Niederkrüchten and
a developer for Debian GNU/Linux.
Martin’s leisure time is mainly pre-
occupied with activities in the Debian
or GNU community.
IRC History and Software
Many Internet users prefer Internet Relay
Chat (IRC) rather than email, as IRC
allows a quicker and more timely
exchange of information. The IRC stan-
dard, which was developed by Jarkko
86
May 2004
www.linux-magazine.com
An up-to-date overview of free software and its makers
T he price of portable miniature MP3
563254501.001.png
Free Software Projects
COMMUNITY
Figure 1: The Gtkpod main screen. Gtkpod is a program that works with
Apple’s iPod. It can handle playlists, track rating, and data synchroniza-
tion tasks.
admins to launch their
own project, called
IRCNet [8]. The US
EFNet kept the original
name.
Quakenet [9] was
launched in 1997. As
the name sugggests,
the network is primar-
ily aimed at gamers.
Quakenet has seen
explosive growth since
its launch and is one of
today’s biggest net-
works. Again it has its
own server software.
A year after the
Quakenet launch,
another network, the
Open Projects Net-
work, now known as Freenode [10],
started up. Freenode is a communica-
tions platform for free software projects
that currently has about 13000 users.
although there are a few differences.
Bahamut [15] is another Hybrid fork,
which is used on the DALNet and has a
few interesting features. For example, it
prevents viruses and worms from
spreading by intercepting DDC connec-
tion requests.
Undernet has used Ircu [16], which is
based on the original IRCd, ever since its
inception. Quakenet’s Asuka [17], in
turn, is based on Ircu. FreeNode uses a
Hybrid variant called Dancer [18] which
provides facilities for centralized net-
work administration.
It is questionable whether there will be
any more major developments in the
future IRC, as it has some serious compe-
tition. Various instant messaging
protocols, such as ICQ, AIM, and SILC
[19] (which works in a similar way to
IRC, but is SSL-integrated). Who knows
whether IRC will be capable of holding
its own against these technologies?
extending the contemporary IRCd to
resolve the issue. 1992 saw the introduc-
tion of another test network, which was
opened up to normal users just a short
while later. This was the birth of Under-
net [6].
Debian on AMD’s 64
64 bit CPUs are slowly but surely con-
quering the mass markets. Intel’s
Itanium and Itanium II are not exactly
show stoppers, but Intel’s arch-rival
AMD seems to be on the path to success
with its own 64 bit platform. The
Opteron easily outpaces most 32 bit
CPUs, especially for server applications.
Now AMD looks set to corner the desk-
top market with its Athlon64, which is
based on the AMD64 architecture.
Although there isn’t actually a 64 bit ver-
sion of the Windows operating system, it
probably won’t be long until Microsoft
Server Software Variants
The server software used today is as
diverse as the networks themselves. IRC-
Net still uses the original IRCd [11]
server, which provides only basic IRC
support. This said, very little of Jarkko
Oikarinen’s original code has survived.
Christophe Kalt is mainly responsible for
the ongoing development of IRCd, which
is currently at version 2.10.3p5. Don’t
expect to find services such as Chanserv
or Nickserv in IRCd.
EFNet uses Hybrid [12], which is
based on the original IRCd. One of the
major differences
between Hybrid and
IRCd is the net split
protection mechanism.
Also, Hybrid provides
services [13] and has a
few enhancements,
which have even been
ported back into the
original IRC daemon.
These include channel
modes, +I and +e ,
which protect a user
from being banned.
You might also stum-
ble across Ratbox IRCd
[14], a Hybrid fork, on
EFNet. Ratbox is fully
compatible to Hybrid,
A Host of New IRC Networks
The Undernet IRCd developers’ original
aim was to harden the network against
exploits. To achieve this aim, they inte-
grated timestamp functions that
withdrew a user’s operator status if that
user had joined a channel during a spilt,
thus usurping chanop privileges. The
programmers also implemented the first
“CService”, which allowed users to reg-
ister a channel, helping them to retain
operator status in that channel indefi-
nitely.
In the summer of 1994 another IRC
network was founded; it was known as
DALNet [7] after its founder Dalvenjah’s
nickname. DALNet used the Undernet
IRCd. DALNet had a new feature that
allowed nicknames to have more than
nine characters. Also, the DALNet IRCd
was capable of banning users on a net-
work wide basis. Besides the CService,
which was known as Chanserv on DAL-
Net, there was also a Nickserv that
allowed users to register nicknames,
thus preventing misuse.
The biggest split of all time in the
world of IRC happened back in 1996.
The EFNet operators disagreed on how
to protect the network in case of net
splits. This prompted European EFNet
Figure 2: The Quakenet IRC network simply appeared from nowhere. It
grew extremely quickly and has now become one of the world’s
biggest networks.
www.linux-magazine.com
May 2004
87
563254501.002.png
COMMUNITY
Free Software Projects
impacting performance in
any major way.
This will lead to users in
many scenarios wanting to
run a system based on 64 bit
files, while still having the
option to run 32 bit pro-
grams if and when needed.
Unfortunately, the dpkg
package manager cannot
handle this at present. As a
result, developers face some
non-trivial restructuring.
The Alioth AMD64 project
aims to investigate and
resolve these issues step by
step. Goswin von Brederlow recently
sent a message to the debian-devel mail-
ing list [20] suggesting an approach.
In his message, Goswin gives a
detailed discussion of the problem. To
allow a system to run binaries built for
both the i386 and the AMD64 architec-
tures, the major libraries for both
architectures need to be available on that
system. One way of achieving this would
be to distribute the AMD64 libraries in
packages of their own, and to unpack
the files in directories such as /lib64 .
Viewed superficially, this would seem to
be a possible answer. A closer look
reveals that this method would mean
changing more or less every package in
the archive (in order to resolve depen-
dency changes).
This is why Goswin suggested a differ-
ent approach. He would like to modify
dpkg to allow it to install two different
packages with the same name. Also,
packages that provide a special ABI, and
are thus entirely architecture-dependent,
should have an extra line in the control
file. The line for packages of this type
would be ABI: strict . Also, developers
would need to specify the architecture
for which they compiled the package in
the dpkg status file. Finally, the packages
with major libraries would still need to
store their files in /lib64 . This would
allow for storing two identically named
packages on a single system.
Goswin’s suggestion provoked a long
thread on the debian-devel list. Debian’s
Release Manager, Anthony Towns,
warned that this suggestion contravened
all the standards that Debian had intro-
duced throughout its development
history. Steve Langasek stated that fun-
damental changes of this kind were out
of the question before the release of
Debian GNU/Linux 3.1, aka Sarge.
Goswin had announced that he at least
wanted to integrate the dpkg status file
modifications prior to the Sarge release.
It remains to be seen if Debian will
support the AMD64 architecture in the
near future. One thing is for sure, Debian
can’t afford to postpone supporting the
new architecture for too long.
Figure 3: AMD’s Athlon 64. Now that Suse and Red Hat have
paved the way, Debian looks set to release a version for this
CPU.
That’s all folks…
… for this month at least, but we do
have one request before we go: If you
can recommend a program that you
would like to see featured in Projects on
the Move , why not mail me with your
suggestion [21]? I look forward to your
comments!
delivers the goods. In the meantime, the
Athlon64 has a high-performance 32 bit
emulation mode.
Athlon64 support is no problem for
Linux distros – at least in theory – as the
kernel has supported the platform for
quite a while now. Keeping to the theory,
you simply need a 64 bit kernel and a
suitable compiler to build your pro-
grams. Suse was first to react, winning
the race to provide a distribution for
AMD64 CPUs with Red Hat hot on its
heels.
INFO
[1] VFAT on the iPod: http://www.formorer.
de/~formorer/ipod.html
[2] Gtk Pod: http://gtkpod.sourceforge.net/
[3] Gnu Pod:
http://www.gnu.org/software/gnupod/
[4] The iPod Linux project:
http://ipodlinux.sourceforge.net/
[5] EFNet: http://www.efnet.org/
[6] Undernet: http://www.undernet.org/
[7] DALNet: http://www.dal.net/
[8] IRCNet: http://www.irc.net/
[9] Quakenet: http://www.quakenet.org/
[10] Freenode: http://freenode.net/
[11] Information on IRCd:
http://www.irc.org/techie.html
[12] Ircd Hybrid: http://www.ircd-hybrid.org/
[13] Hybserv2:
http://www.2mbit.com/hybserv2/
[14] Ircd Ratbox: http://www.ircd-ratbox.org/
[15] Bahamut: http://bahamut.dal.net/
[16] The Undernet Coder Committee:
http://coder-com.undernet.org/
[17] The Quakenet Developer Committee:
http://dev-com.quakenet.org/
[18] Dancer IRCd:
http://freenode.net/dancer_ircd.shtml
[19] SILCNet: http://www.silcnet.org/
[20] Message from Goswin von Brederlow:
http://lists.debian.org/debian-devel/
2004/debian-devel-200401/msg00762.
html
[21] Tips and suggestions:
projects@linux-magazine.com
Library tickets
Of course, the Debian developers will
have to look into the possibilities of inte-
grating Athlon64 support in their
distribution sooner or later. People
started putting on their thinking hats
quite a while back, starting up a devel-
oper group on Debian’s Sourceforge
counterpart alioth.debian.org . Interest-
ingly, the group chose to call itself
Debian x86-64. The name was controver-
sial, as it was simply too long for most
developers. At this time of writing,
AMD64 seems to be the generally
accepted name for the project.
What is far more important than the
name discussion is resolving current
technical problems. Some people may
ask themselves why the AMD64 should
be handled in exactly the same way as
the Intel 64 bit server architecture, that
is, by creating a completely independent
architecture branch. It doesn’t make
much sense to run 32 bit programs on
the Itanium, or Itanium II, as the perfor-
mance is abysmal. This is not true of the
AMD64. The integrated 32 bit emulation
allows 32 bit applications to run without
88
May 2004
www.linux-magazine.com
563254501.003.png
Zgłoś jeśli naruszono regulamin