Académique Documents
Professionnel Documents
Culture Documents
user
DOUBLE-SIDED DVD VERSIONS
UBUNTU
user
EXPLORING THE WORLD OF UBUNTU
JUMP TO
JAUNTY
Ubuntu 9.04 “Jaunty Jackalope”
Faster boot and better tools
Run Windows programs on Ubuntu
Security tricks
Virtualization with VirtualBox
10 COOL GAMES!
Jono Bacon: Welcome to
the diverse Ubuntu community
Exclusive interview with
Ubuntu kernel manager
Pete Graner
£7.99
A$19.99
WWW.UBUNTU-USER.COM
W S S T A N D !
T YO U R N E
ILA B L E A E .CO M /S P ECIAL
AVARDER ONLINE AT WWW.L I N UX- M AGAZIN
OR O
UBUNTU 9.04 JAUNTY JACKALOPE
JUMP TO JAUNTY
Welcome to Ubuntu User Magazine – your independent games, show how to set
UBUNuTseUr
guide to the Ubuntu experience. Inside you’ll find help- up a firewall, and de-
ful tools, great ideas, and plenty of good advice on con- scribe how to build custom software packages.
figuring and troubleshooting your Ubuntu system. We also tour some exciting desktop tools that are freely
If you’re new to Ubuntu, this issue provides you with all available for all Ubuntu users, such as the FreeMind
you need to get started. The DVD opposite this page in- mind mapper and the Celtx authoring application.
cludes 32-bit and 64-bit versions of Ubuntu 9.04 “Jaunty If you’re an Ubuntu user, we want to hear from you. Visit
Jackalope,” and our exclusive Discovery Guide (starting our website to learn more about what’s coming in future
on page 61) shows you how to get your Ubuntu system issues of Ubuntu User: ubuntu-user.com
up and running.
Ubuntu veterans will also find much to learn in this Additional Resources
issue, with insightful articles from experts such as Mar-
[1] Ubuntu: http://www.ubuntu.com/
cel Gagné and Klaus Knopper, as well as tips from
Ubuntu insiders Mike Basinger and Jono Bacon. [2] Ubuntu Forums: http://ubuntuforums.org/
Our lead-off articles examine graphics in Ubuntu and [3] Ubuntu wiki: https://wiki.ubuntu.com/
how to run Windows as a virtual system – but that’s just
[4] Ubuntu Support overview: http://www.ubuntu.com/support
the beginning. Later articles explore popular Ubuntu
Jaunty Jackalope: Ubuntu User is your Ubuntu 9.04 “Jaunty Jackalope.” Read on 10 Great Games: All work and no play? We
companion for exploring the world of for expert tools and techniques at the cen- show you how to get your game on with
Ubuntu. This issue celebrates the arrival of ter of the Ubuntu experience. 6 10 cool game applications. 16
UBUNTU 9.04
UFW Firewall: Don’t miss the chance to Celtx: Got an idea for a novel or play? Get
lock out intruders with Ubuntu’s built-in your creative juices going with this handy
firewall application. 26 authoring tool. 53
JAUNTY JACKALOPE
Discovery
a double-sided DVD
■ Hard-disk install +
Live versions
Guide
■ 10GB Ubuntu DVD
■ Includes 32-bit, 64-bit,
and Live versions
Peek inside for a practical
introduction to Ubuntu,
See p3 for full details
including tips on installing,
configuring, and exploring your new Ubuntu
system.
Installating Ubuntu ..................62 Configuring Email ....................84
Exploring......................................64 Taking Notes ..............................88
Networking .................................67 OpenOffice ................................90
Security.........................................71
Printing ......................................... 74
Multimedia .................................76
Burning CDs................................78
Managing Photos ....................80
Installing Software ...................82
Announcing
the RAbbit
Speed was the theme for the latest Ubuntu development effort, so what could be a better symbol than a
mythical creature that is half antelope and half jackrabbit? Jaunty Jackalope offers faster boot times and lots
O
n April 23, 2009, the final release of Ubuntu 9.04 rolls out to the public [1].
Download links light up around the world as the version known as
“Jaunty Jackalope” hops to center stage. The update has been in
the works for months, and Ubuntu insiders are already working
with pre-release versions – alphas, betas, release candidates –
but the moment of the final release is still a special time for
any software development team.
Sister distributions Kubuntu and Xubuntu appear nearly
simultaneously, and other projects such as the Edubuntu,
Ubuntu Studio, and the Netbook Remix edition make their
way to the public. Another Ubuntu is out in the world.
If you follow the fortunes of Ubuntu, or if you are
new to this stylish Linux system that has become
a favorite with users around the world, you
might be wondering what’s new in the
latest release. Following is a brief look
at some of the newest features. But
beyond all the tools and options,
you’ll also find new art, better perfor-
mance, and more comprehensive
hardware support. Ubuntu just keeps
getting better.
Booting
When Canonical CEO Mark Shuttle-
worth introduced Ubuntu version
9.04, he highlighted the need for faster
boot times. The noticeably improved
boot performance under Ubuntu 9.04 is
not because of any particular software.
Instead, the developers used
Bootchart (see Figure 2) to identify
hangers and stoppers in the boot
process and remove the culprits.
The hardware detection phase was
traditionally fairly slow, and Udev
parallelization saves a couple of
valuable seconds.
collaborates with Evolution and will projects have their own IRC
even import Evolution address books. channels.) What makes
Quassel interesting is that it
Pidgin can run in a distributed
The Pidgin Instant Messenger tool, for- manner. The core compo-
merly Gaim, is a useful choice for occa- nent of Quassel can run
sional Internet chatting. Pidgin lets you continuously on a server
talk to users with messengers such as and stay connected to vari-
AIM, Google Talk, ICQ, MSN, IRC, and ous IRC networks. Client
Yahoo, although the Pidgin client will Quassel components can
not necessarily support video functional- then connect to the core
ity for all these providers. and use IRC normally.
When the client discon-
Kubuntu and Xubuntu nects and reattaches later,
KDE users who congregate on the the IRC sessions will con-
Kubuntu side of the landscape will also tinue just as if the client
find many changes with the latest re- had never disconnected.
lease. Kubuntu 9.04 [4] comes with KDE Not to be left out,
4.2.2. Amarok has always been one of Xubuntu [5] also arrives
the most popular apps for KDE, and with some promising new
many people consider it the best media features. Ubuntu’s Xubuntu
player available. Kubuntu 9.04 includes variant is a favorite of users
Amarok 2, a complete overhaul of previ- who want a streamlined Figure 6: The new Ubuntu Janitor is designed to handle
ous versions. The user interface lets you desktop. Xubuntu 9.04 in- orphaned files, but its approach might be too aggressive at
view lyrics and albums from the same cludes the latest Xfce 4.6 times.
artist together. Much of the work for desktop environment,
Amarok 2 went into integrating online which offers better desktop integration. check out the LoCo team list in the
services such as Last.fm, Jamendo, Mag- Thunar, the file manager, now has con- Ubuntu wiki [7].
natune, and SHOUTcast. text menus that let you open applica-
Quassel is now the default IRC appli- tions, exit user sessions, or access help Read On
cation in Kubuntu. IRC is a great way to documentation. The mixer now works Welcome to Ubuntu User magazine.
get support and connect with the rest of with GStreamer, which means that it Read on for news, views, and informa-
the Ubuntu community. (Most Ubuntu supports multiple sound systems. Other tive discussions of some of the best
features include a new session manager tools of the Ubuntu environment. You’ll
Don’t Zap and a new settings manager. learn about virtualization, firewalls,
Windows integration, and the steps for
Long-standing Ubuntu users will proba-
bly notice the “Don’t-Zap” option.
Support and Community building your own website.
Whereas previous versions let users If you’re looking for advice online, the If you are new to Ubuntu, you might
quit the desktop by pressing Ubuntu Forums [6] offer a first level of want to start with our exclusive Discov-
Ctrl+Alt+Backspace as a short-cut to the support for many Ubuntu newcomers. ery Guide section, which shows you how
Gnome login window, this option is no The forum system even includes a sub- to set up your Ubuntu system and helps
longer available. Many users will proba- forum for new users: Absolute Beginner you put Ubuntu to work on some com-
bly consider this change a disadvantage. Talk. Other forums range from gaming to mon tasks. n
The new approach is to use the Alt + networking and wireless. Threads are
PrtScr + K keyboard shortcut, which the monitored continuously by volunteer INFO
kernel has supported for many a moon,
moderators to make sure no one is post- [1] Ubuntu: http://www.ubuntu.com/
to handle the job. This shortcut also re-
ing malicious commands.
starts sleeping desktops. [2] Boot time details: https://blueprints.
One aspect of Ubuntu that is different launchpad.net/ubuntu/+spec/
To reestablish the previous shortcut, you
from other distributions is the presence jaunty-boot-performance
need to reinstate the original /etc/X11/
of local communities (LoCos). Similar to
xorg.conf configuration file status. To do [3] Eucalyptus: https://help.ubuntu.com/
LUGs (Linux user groups), LoCos advo- community/Eucalyptus
so, press Alt+F2 and type gksu gedit to
launch and editor with administrative cate, promote, translate, develop, and
[4] Kubuntu: http://www.kubuntu.org/
privileges. Open the file and add the fol- otherwise try to improve Ubuntu. LoCos
[5] Xubuntu: http://www.xubuntu.org/
lowing lines to xorg.conf: are not meant to replace LUGs but, in-
jaunty/countdown
Section "ServerFlags" stead, they work with existing LUGs to
evangelize and support users. Almost [6] Ubuntu Forums:
Option "DontZap" "False"
http://ubuntuforums.org/
EndSection
200 LoCos have formed all over the
world. If you are looking for a way to [7] Ubuntu LoCo Teams:
Then restart your system. https://wiki.ubuntu.com/LoCoTeams
connect with Ubuntu users in your area,
DIVERSE UBUNTU
UNIVERSE
Ladies and gents, boys and girls, I would like to give you a very warm
BY JONO BACON
today, it limited the scope of who could ware developers love mailing lists, but
get involved. generally don’t get on very well with fo-
Today the story is far different. Every rums. Although there is nothing specific
day we hear wonderful tales and experi- that excludes developers from forums,
ences across the free software world many tend to prefer mailing lists because
about the diverse range of people joining the content is delivered directly to them.
us. We hear of people exercising their Forums are the antithesis of this ethos
passions, whether it be in documenta- and instead require you to hammer that
tion, translations, advocacy, design, test- refresh button until you see new con-
ing and other areas we have not thought tent. Knowing these nuances helps us to
W
hen I was first offered the op- about. As we have become more accept- build better communities because we
portunity to write a column, I ing of this diverse range of contributions don’t force contributors into boxes that
scratched my head and won- (and some beards), it has been fascinat- they don’t naturally belong in.
dered what on earth I should cover. The ing learning how people work together So far, in the Ubuntu community we
problem was certainly not a lack of to make different contributions wel- have tended to some of these roles pretty
ideas, but quite the opposite: There is so come. This has become a really interest- well. We have a thriving community en-
much going on in the Ubuntu commu- ing focus of my work: understanding gaged in packaging, testing, documenta-
nity that I wanted to use my column as how people collaborate and optimize for tion, translations, and advocacy, but I
a means to showcase many of the great the nuances in that collaboration. am particularly interested to inspire new
stories that happen each and every day. I have always been a firm believer avenues of participation. In my most im-
I have the pleasure of being exposed to that different brains naturally gravitate mediate radar I see design and user in-
oodles of these stories, and I can guar- toward different things. As an example, terface testing as particularly interesting
antee you that this is no help when nar- in the programming sense, I naturally targets. Design is a very visual art-form,
rowing something down for my column. gravitate (my quite awful programming and designers collaborate using visual
Fortunately, it seems the topic was star- abilities) toward Python. My friend Dan gestures and imagery.
ing me in the face all the time, and naturally gravitates towards Perl. While This is just one such example of the
deeply connected to all these stories: our abilities are similar, my brain simply challenges that face us, and through the
Diversity. doesn’t work with Perl, and his won’t following series of columns I am looking
work with Python for a variety of rea- forward to sharing my experiences and
The Future of Participation sons, including expectations, experi- thoughts on how to inspire and enthuse
I first got involved in Open Source 11 ence, technical cultural differences, and this new generation of free software con-
years ago, and back then it was a very workflow. These considerations are im- tributors.
different place. If you wanted to contrib- portant when assessing how communi- Before I run, I just wanted to let you
ute to the community, you were predom- ties are formed. know that I am really keen to hear your
inantly welcomed if you were a program- Part of my work has been in under- feedback, so feel free to get in touch
mer. Filling these shoes had high expec- standing the subtle differences and con- with me at jono@ubuntu.com. ■
tations: the typically bearded individual nections between different groups of
was assumed to know how to program people and figuring out ways to develop INFO
in C and have a strong familiarity with a the potential around our findings. When
[1] Jono Bacon’s homepage:
range of obtuse technical tools. we identify these similarities and pat-
http://www.jonobacon.org/
While these heady days produced terns between different disciplines, it
[2] Art of Community Online: http://www.
some incredible code and laid down the often leads to interesting results. A good
artofcommunityonline.org/
foundations of the Ubuntu we know example of this is communication: Soft-
Get Virtual
A
fter just loading your copy of the Windows as well as Ubuntu. Wouldn’t it Your Ubuntu system doesn’t have any of
shiny new Linux release Ubuntu be nice if you could run all those things this software installed by default, but
9.04, things are going well. Now on your current computer, without hav- getting it is easy. Furthermore, several
that you’ve read the other articles in this ing to reboot or reinstall? You can – with virtualization packages are available.
issue, you’re starting to think you’ve virtualization. These include the command-line pro-
found a pretty good home. But even Virtualization software creates a vir- grams QEMU [1] and KVM [2], as well
when you love your home, once in a tual computer on your computer, on as one my favorites, the powerful graphi-
while you want a holiday – which means which you can install any other operat- cal VirtualBox [3]. To install these pro-
loading up another Linux distribution to ing system, whether it be Ubuntu, Red- grams, select them via Synaptic or the
play with. Hat, Mandriva, or yes, even Windows. apt‑get command:
Of course, it might not be all play. From the perspective of the guest operat-
Sometimes you need to test another op- ing system, the virtual machine is a real apt‑get install qemu kvm U
erating system, or you might need to run machine with real hard drives, a real virtualbox‑ose
grep ‑E U
'^flags.*(vmx|svm)' U
/proc/cpuinfo
users of the venerable Live CD will find tion module comes into play. The catch
some of this familiar. For everyone else, is that it’s not installed by default, and
just press Enter. you can only install the source for it.
Everything that happens from this step Yes, that means you have to build it.
forward should happen as it would if Luckily, that’s not complicated:
you were running any other Linux distri-
bution from a Live CD. The guest oper- sudo apt‑get install U
ating system will boot, or install, nor- module‑assistant
mally. Depending on the speed of your sudo module‑asssitant U
machine and the amount of memory you prepare
have at your disposal, the process could sudo module‑assistant ‑f U
be peppy or quite slow. Remember that get kqemu‑source
this virtual machine uses whatever por- Figure 4: Your first step is to tell VirtualBox
tion of your host system’s resources you The result is a kernel module that dra- what guest operating system will run on this
alloted. That means less for your host matically speeds up your QEMU ses- VM.
system, both in terms of memory and sions, giving you performance on par
processor resources. Also, if your proces- with KVM. Now, even with QEMU, you
sor allows KVM instead of QEMU, the can run and install more demanding op-
performance will be substantially higher. erating systems, like Ubuntu. For the
A few seconds (or minutes) later, your pure fun of it, I loaded up Ubuntu Jaunty
virtual machine is up and running (Fig- Jackalope (with the Gnome desktop)
ure 2). and ran a full implementation of it on
my Kubuntu desktop (Figure 3).
KQEMU Before I move on, I’ll share a few other
Before, I suggested that running QEMU parameter with you. For starters, you
instead of KVM means you aren’t privy might add ‑no‑acpi to disable this in the
to processor-level acceleration, which virtual machine. Also, you can use the
means you are emulating everything in ‑localtime parameter to tell QEMU to run
memory without the benefit of kernel ac- your session with the local machine time Figure 5: Unless you defined a previous vir-
celeration. When you are running a little as opposed to the default UTC. Remem- tual disk, you’ll need to create one. Because
tiny distribution like DSL, that’s fine, but ber the kernel acceleration? Try ‑ker‑ it is possible to reuse disk images, previous
if you want to try a different Ubuntu, nel‑kqemu. In addition are network pa- images will be listed here.
openSUSE, Fedora, or even Windows, rameters, USB parameters, file-sharing
you will feel the pain pretty quickly. In parameters (SMB), devices parameters, the basics, make sure you check out the
this case, the KQEMU hardware accelera- and more. Because you are only seeing man page for the qemu command. Also
remember that my set-
tings for this example
imply a distro with a very
small footprint.
VirtualBox
Another great piece of
virtualization software is
VirtualBox, an open
source package freely dis-
tributed under the GPL
and distributed by Sun
Microsystems (who, as I
write this, has been pur-
chased by Oracle Corpo-
ration). VirtualBox is a
program I use every day
and one I recommend
highly. With VirtualBox, I
can load an operating sys-
tem that you might still
want access to: Windows
XP. Of course, you do
Figure 3: The best of both worlds: Ubuntu’s Jaunty Jackalope 9.04 running in QEMU under Kubuntu. need a licensed copy of
Resources
Deciding how much memory to allocate
is a bit of a balancing act. On one hand,
most modern operating systems have
minimum requirements. On the other
hand, you have to take into consider-
ation how much memory your Ubuntu
host system has. Either enter the amount
into the text box or use the slider.
Next, your new machine needs a hard
drive on which to load XP, so you must
create a virtual hard disk (Figure 5). Be-
cause this is your first time out, the pri- Figure 7: The new virtual machine is live, and Windows XP is installing normally. With Virtual-
mary master (the main disk) will be Box running on my Ubuntu KDE desktop, the XP installation is in the foreground.
ure the resource listed. Notice that you will boot from the Windows install disc.
can even go back and change the virtual What follows is a standard Windows XP
machine specifications, such as memory. installation (Figure 7): You accept the li-
Other labels let you define what physical cense agreement, your virtual disk is for-
resources (on your host machine) the matted, and Windows does its thing.
virtual machine has access to. For in- Somewhere in the process, you’ll need
stance, to give your virtual machine ac- to enter your license code, answer some
cess to the physical DVD-ROM drive in questions, and so on. Eventually, the in-
which the Windows XP install media is stallation will complete and your new
located, click on the CD/DVD-ROM label. Windows machine will be up and run-
In the resulting dialog box, check the ning. After you attend to standard Win-
Mount CD/DVD Drive box. If you have dows stuff, such as adjusting screen size
more than one drive, select the one you and making other modifications to your Figure 9: For nearly seamless integration
want from the drop-down list. The radio running machine, you’ll have a full Win- into your Ubuntu desktop, install Virtual-
button labeled ISO Image File is particu- dows XP implementation running on top Box’s Guest Additions into your running XP
larly interesting if you are loading an- of your Ubuntu (or Kubuntu) desktop, machine.
other Linux distribution because you can with access to everything you normally
install it directly from the hard drive, use under Windows (Figure 8). Instead After you’ve followed the instructions
skipping the need for a physical disc (as of emulating Windows, you are running for installing the guest additions and re-
is the case with Windows because free a real, albeit virtual, PC loaded with started your machine, your experience
Live DVDs don’t exist). When you click Windows XP. will be vastly different. Just by clicking
OK, you’ll find yourself back at the main Although this might sound like a on a window inside Windows, you can
VirtualBox window with the CD/DVD- happy ending, in which the two seem- change the focus from your Ubuntu ap-
ROM label now indicating the host com- ingly irreconcilable operating systems plications to your Windows desktop.
puter’s physical drive. Now you are are working together on the same hard- Your mouse will be able to sail across
ready to install Windows XP. ware, VirtualBox has Guest Additions your desktop from Windows to Ubuntu
that can improve the relationship. Once and back again. Furthermore, you will
Installing the Guest you’ve had to hit the control key a few be able to resize Windows to fit what-
First, make sure the virtual machine is times to recapture your keyboard and ever geometry makes sense to you and
selected, then click the Start button. Vir- mouse or you find that the default your Ubuntu desktop. Finally, you will
tualBox will let you know that the auto- screen sizes provided by Windows just be happy to know that these guest addi-
capture keyboard feature has been acti- don’t work well on your widescreen tions are not specifically a Windows
vated. This includes your mouse as well. notebook, you’ll be happy to learn that thing and are available for other operat-
What this means is that the virtual ma- even these issues can be resolved. To in- ing systems as well.
chine has full access to your mouse and stall the Guest Additions, release your
keyboard. To “uncapture” your mouse keyboard and mouse (right Ctrl key), Conclusion
and keyboard, press the right Ctrl key on then click the Devices menu on the vir- Happily ever after is where this story
your keyboard. To acknowledge the mes- tual machine and select Install Guest Ad‑ ends. By running Ubuntu, you have a
sage, click OK, and your new computer ditions from the menu (Figure 9). superior operating system that is faster,
more reliable, and more secure than
Windows. But you can have your
Ubuntu and your Windows too. Best of
all, you aren’t limited to just Windows.
For example, you can try other Linux
distributions, and even BSD or Solaris,
from the comfort of your existing
Ubuntu installation without reinstalling.
Yes, you can have it all – with a little
virtualization. n
INFO
[1] QEMU:
http://www.nongnu.org/qemu/
[2] KVM: http://www.linux‑kvm.org/
page/Main_Page
[3] VirtualBox:
http://www.virtualbox.org/
[4] DSL: http://damnsmalllinux.org/
Figure 8: Windows XP running on my Kubuntu desktop – fully integrated and ready for action.
Gaming on Ubuntu
PLAYGROUND
Installation
All of the games I will be looking at here
I
are easily installed via Applications |
n contrast to Windows, Ubuntu is not generally regarded as an El Dorado for
Add/Remove. When you get there, set
computer gamers. But this widespread opinion is actually unjustified, as the Syn-
Show to All available applications, then
aptic package manager goes to show with its choice of more than 1,000 packages
browse the Games section. If you can’t
in the Games section. Many games promise hours of fun when your daily chores are
find what you’re looking for, the Search
done, and it’s totally free of charge. On the following pages, I will present a short se-
box might help.
lection of very popular Linux games. But beware, some of them are addictive.
Freeciv
The Freeciv strategy game is a classic Linux game. Just like its
role model, Civilization, the player guides a civilization from
ancient to modern times en route to prosperity. This endeavor
is not just a question of exploring new territory, negotiating
with other tribes, and conducting research, but also of surviv-
ing the odd war or two. The game is related to Civilization II,
but in many cases, you can customize it to suit your needs.
Freeciv: http://www.freeciv.org
Alternative: FreeCol Freeciv
FlightGear
The makers of FlightGear were looking to create a realistic and
extensible flight simulator. The graphics can’t compete with the
commercial counterparts, but the flight characteristics and envi-
ronmental conditions are all the more realistic to make up for
this. The sheer number of options and settings are likely to put
off occasional flyers, though. FlightGear does not just simulate
every single on-board instrument, but every single lever on
board your choice of plane. Before you even dream of taking off,
plan a couple of hours practice. A giant, world-wide community
continually turns up with new maps and new flying material.
FlightGear: http://www.flightgear.org
Alternative: ACM Aerial Combat Simulator
FlightGear
TORCS
Motor sports fans can hit the virtual throttle in The Open Rac-
ing Car Simulator, or TORCS for short. At the wheel of a mod-
ern race car, such as a McLaren F1 or a Mercedes CLK DTM,
you can race over intelligently laid-out courses. Among the
more than 20 tracks to choose from are high-speed courses on
smooth tarmac, dusty rally courses, and street racing. TORCS
simulates the response of more than 50 different vehicles
based on a number of parameters, such as suspension, aero-
dynamics, and driver error. Attacks by opponents are reflected
by a simple damage model. Because the game does not sup-
TORCS port multiple players, you will have to make do with racing
the computer.
TORCS: http://torcs.sourceforge.net
Alternatives: SuperTuxKart, Trigger
FooBillard
FooBillard is another sporting challenge. This pool/billiards/
snooker simulator offers attractive 3D graphics, realistic phys-
ics, and a simple computerized opponent. As an alternative,
you can play human competitors over a network. A selection
of games is available, including 8 ball, 9 ball, carambole, pool,
and snooker. And if you happen to own a pair of 3D glasses,
you can switch to anaglyph mode and experience a fascinat-
ingly real 3D view of the table. Table textures, ball highlights,
and shadows add to the realism of the game.
SuperTux
If you are looking for an existing jump and run side-scrolling
game for the kids, SuperTux is perfect. Instead of an over-
weight plumber, as in Nintendo’s Super Mario series, you help
a small penguin negotiate pitfalls and cuddly monsters. The
latter typically can be knocked out by jumping on their heads.
Bonus articles give the hero super powers. The game cur-
rently has more than 100 levels, to which you can add your
own creations, thanks to the level editor.
SuperTux: http://supertux.lethargik.org
Alternative: Secret Maryo Chronicles
Vega Strike
SuperTux
Vega Strike takes you into the realm of outer space. This mix
of action game and simulation sees the player set off as the
owner of a small spaceship, very much in need of a refit. Of
course, a refit is going to cost you money, and to earn it, you
will need to trade with foreign planets, fight with or against
factions, or indulge in a spot of piracy. Just as in its role mod-
els Elite and Freelancer, Vega Strike gives you an open envi-
ronment. The universe, comprising more than 5,000 solar sys-
tems, is populated by 39 factions, all of which are tied up in
alliances – if you are unlucky, you end up in the middle of a
war. A kind of “warp” engine, called a SPEC drive, allows you
to travel quickly throughout the solar system. Jump points
allow you to travel between star systems – if you have a jump
drive, that is. The game generates most of the planets ran-
domly, and it’s a completely new game on each restart. Many
weeks of gaming pleasure are guaranteed en route to fame
and power.
Vega Strike
Vega Strike: http://vegastrike.sourceforge.net
Alternative: Oolite
Nexuiz
Ubuntu has no end of classy but free multi-user shooters.
Nexuiz, a three-dimensional deathmatch game, is just one of
them. The idea of the game is to take out the enemy in a team
or on your own, to capture flags, or to secure waypoints. Mu-
tiple game modes are available. Just like the Unreal series,
Nexuiz is designed for fast shoot-outs on the network; single-
player mode, with more than 20 levels, is just for learning the
ropes. The emphasis is on speed and intense action. Numer-
ous, intelligently designed and attractively illuminated levels
promise variety and strategically challenging duels.
Nexuiz: http://www.alientrap.org/nexuiz
Nexuiz
Alternatives: OpenArena, Sauerbraten, Alien Arena, Tremu-
lous, Warsow
Juggling Jackalopes
One day before the official release of Ubuntu’s “Jaunty Jackalope,” Ubuntu User magazine interviewed
Ubuntu’s Kernel Manager, Pete Graner. Pete explains how a kernel grows into a Jaunty Jackalope and looks
W
hat does a busy, globe-trotting while I was in the US Army as part of a public releases, so we don’t really “Beta”
Ubuntu Kernel Manager do Rapid Prototyping Project in about 1994. test in the traditional sense. We begin
one day before Jaunty Jacka- At the time, everything was Sun OS- testing at our very first development re-
lope hops out onto the world stage as based and we needed a lightweight, por- lease – called Alpha 1 – through our Beta
the latest Ubuntu release? He tells table computer that could be used in release and into the Release Candidate
Ubuntu User how the kernel team flight, then jumped via parachute into (RC).
works, how the community contributes, the target area. The contractor selected We are always testing. The time be-
and what the future looks like for the Linux (Slackware) and i386 notebooks. tween the releases is two weeks, so our
user-friendly Ubuntu. users/testers are always getting new
Q I get email from Ubuntu developers software through a rolling stream of
Q How long have you been with the all over the world. How does develop- fixes.
Ubuntu team, and how did you get in- ment work? And I know a lot of volun-
volved with Ubuntu? What is your back- teers are excited about Ubuntu. When it Q So Ubuntu is Linux. People are gen-
ground? comes to kernel development, do you erally aware that you get your code from
work directly with beta testers in the the venerable Linux community project
A I’ve been with Ubuntu just about a community? known as Debian. Does the kernel come
year. This was my second Ubuntu re- from Debian? Or do you work directly
lease. Prior to that, I worked at Red Hat A For the most part, we are one virtual with the Linux kernel project?
in various capacities, which include on- team. The team is made up of two
site SELinux Engineer at the National halves: Canonical engineers and com- A The kernel does not come from De-
Security Agency (NSA) – I managed the munity volunteers. bian due to the need to select a kernel
Level 3 Support team – and my last po- About 95 percent of the Canonical en- version that will provide Ubuntu with
sition was the Base Operating System gineers are remote employees – that is, the features it needs.
Engineering Manger for Red Hat Enter- we all work from home. Canonical has a We have many cases where we will
prise Linux, and by extension, Fedora. I few offices – London, Boston, and Taipei need a newer kernel due to our hard-
started using and developing in Linux – but for the most part, we don’t work in ware enablement goals or particular fea-
tures that can’t easily be back-ported to A Most end users should never even Q What’s up ahead? Are you already
an older kernel. know the kernel is there. We try to pick working on the next release? Can you
At the Ubuntu Developer Summit the right kernel configs and driver de- give us a hint about what the emphasis
(UDS), we make the decision on what faults so that the user’s experience is a will be?
kernel version we will use based on the good one.
feedback we receive from the other de- We receive feedback all the time A We’ve been working hard on reduc-
velopment teams. So, for example, at the about what hardware does or does not ing the amount of non-upstream code
Jaunty UDS we decided on 2.6.28. At work and where we can find drivers if that we ship and have been investing
that point, we import the kernel from the they exist for new hardware, so I would time and energy into making upstream
upstream Linux kernel and we begin to say feedback isn’t an issue. We try to vanilla kernel builds available for inter-
track the development there. This allows provide the best hardware support pos- ested users. We have opened the 2.6.30
us to provide the current upstream de- sible. The feedback is discussed on our kernel tree and are doing the usual patch
velopment testing and, in the best case, public mailing list and, depending on scrub and trying to eliminate as many
bug fixes. what it is, we may implement it in the out-of-tree patches as possible. And
next kernel update or it might get de- smoke testing. We won’t really start de-
Q Do you start with specific goals for ferred to UDS, where we need a broader velopment in earnest until after the ker-
each release? If so, where do the goals discussion. nel version is selected at UDS. Until
come from? Do you all sit down together then, it’s all prep work and things that
and talk about a vision? Q I know there is a vision to bring are kernel-version independent.
Ubuntu into the server and corporate en- For 9.10, we have a large number of
A Before each release we hold a meet- vironment. Can you talk a little about re- items on the plate. We will be looking at
ing where we get all the Canonical engi- cent work on that path? the 2.6.30 or .31 kernel. Some of the
neers, community developers, and inter- items for discussion at UDS will be mov-
ested parties together and discuss what A I would have to say Ubuntu Server ing off of grub to grub2 for boot loading,
the needs are. This is called UDS has moved out of the vision phase. Also, improving power management, improv-
(Ubuntu Developers Summit). The ses- I’d like to caveat this by saying I’m not ing Suspend/Resume/Hibernate, en-
sions at UDS are normally at the individ- tied deeply into the server team plans. crypted swapfiles, improving WiFi and
ual development team level, except With that said, Ubuntu Server is a very 3G support, and much, much more. n
when you have things that cross subsys- solid product, deployed in numerous en-
tems in Ubuntu. The goals and features vironments today. INFO
with working plans come out of this As far as recent work, much of the
[1] Ubuntu development: https://wiki.
meeting. This year’s UDS is being held focus has been on making the default
ubuntu.com/UbuntuDevelopment
in Barcelona, Spain, during the week of server applications come out of the box
[2] Ubuntu testing:
May 25-29. with sane defaults for the average use
https://wiki.ubuntu.com/Testing
case.
Q How does the process work? Can
you walk us through the time line of an
average release cycle?
A We develop to a 6-month-time-
based release, with a release every April
and October. Once we start active devel-
opment, we have Alpha, Beta, and RC
releases every two weeks. So it would
look like: (Alpha) Release Candidate 1
(RC1), UDS, then RC2, RC3, RC4, RC5,
RC6, Beta, RC, Final Release.
This of course means we have numer-
ous milestones we have to meet in the
cycle. You can view the 9.10 Karmic
Koala schedule online (https://wiki.
ubuntu.com/KarmicReleaseSchedule).
CARD TRICKS
less, so I’ll just say I’m strongly biased in
favor of open technical specifications
and open source, even as I write this ar-
ticle about installing proprietary drivers
for graphics cards through the use of
general Linux techniques.
If you’re troubleshooting a graphics
Some graphics card vendors offer limited support for card in Ubuntu, you might also
be interested in this
open source systems like Ubuntu. If you’re look- month’s “Answer
Man” column (pg.
ing for high-end effects, you might need to 46), which in-
cludes an an-
get involved. BY KLAUS KNOPPER swer on install-
ing an nVidia
graphics card.
Graphics
Under GNU/
Linux
Most GNU/Linux
distributions for
desktop and note-
book computers use
Igor
system, which is an
n
ov, 12
tions: transparency,
Korio
L
inux probably has the best overall for Linux compete well,
hardware support because of its often gaining a reputation for
wide application on a variety of well-supported hardware that
devices. However, some hardware ven- is easy to use and widely de-
dors make a strategic choice to avoid re- ployed on a range of electronic de-
vealing their specifications – including vices. Philosophical and political
example code and technical documenta- discussions about proprietary vs.
Installing nVidia
Proprietary Drivers
Before starting the installer, make sure
no X server is running, which you can
Figure 2: The transparency extension produces some interesting effects. do by switching to runlevel 2 or 3 in
most distributions. Just switching to the
chances are good that your configuration which will give you a 1024x768, 16-bit text console with Ctrl+Alt+F1 is not
is OK. With Ctrl+Alt+Backspace, you framebuffer resolution that will be used sufficient because Xorg running on a dif-
can kill the new X server and do the by the fbdev Xorg driver. On startup, you ferent console is still accessing the
same (for restarting the X login process) will see the Linux penguin logo with a graphics hardware. First you need to
on your first X session; better yet, logout glowing border if highcolor framebuffer stop all login managers (xdm, gdm,
and kill X in the login screen. mode is on. Although this mode works kdm) that might keep Xorg running,
A more Unix-like way to achieve the well with most graphics cards, it is never then you can log in on the console. In-
same effect is to go to runlevel 2 or 3 by accelerated, and the previously men- stalling the nVidia driver with its sup-
typing tioned options for Compiz just won’t plied script requires root permissions,
work. even though not all parts of the configu-
init 2 Try changing the Driver option in the ration process have to run as root.
Device section of xorg.conf to the best The nVidia installer is a self-unpack-
(which is a text console–only runlevel in matching chipset driver, like ati, intel, or ing and self-installing archive that you
most distros) and restart the graphical mga, corresponding to what the lspci can get from the nVidia support home-
session with: command shows as the vendor for the page [4]. If you don’t know the exact
graphics chipset. name of the card, the lspci command
init 5 For nVidia cards, nv would be the free might help. If the card is very new, and
driver, but currently that one will not it just appears as an unknown/unlisted
Also, you need to do this when configur- work in accelerated mode, and it could graphics card, you might look at the Xorg
ing a different chipset driver. cause awful effects like stripes or arti- log file in /var/log/Xorg.log to find out
facts on the screen when the Composite what it is.
Choosing a Different option is enabled. Sometimes these ef- After download, you should have a file
Chipset Driver fects seem to stay forever, unless you called NVIDIA-Linux-x86- … .run, which
If glxinfo reports Direct Rendering: No, completely disconnect the computer you can make executable and run (as
the wrong chipset driver might be con- from the power supply and wait for a root) with:
figured, so check /etc/X11/xorg.conf in while, which seems to reset the internal
the Driver subsection: memory state of nVidia cards. chmod a+x NVIDIA*.run
If you leave out the Driver option, ./NVIDIA*.run
Section "Device" Xorg tries to autodetect the correct chip-
... set on startup, and you get a pretty ver- The installer is self-explanatory. nVidia’s
Driver "fbdev" bose protocol of Xorg initialization in driver installation consists of a kernel
EndSection /var/log/Xorg.0.log, which also tells you module, which has to exactly match the
about supported compared with found installed kernel version and binary ob-
The framebuffer driver for Xorg, fbdev, chipsets. jects for Xorg and library functions.
is the one that always works if every- If you have a relatively new ATI or The kernel module is the most break-
thing else fails, as long as framebuffer nVidia card, the free drivers that come able part of the installation. For some
mode is enabled in your Linux kernel with Xorg might not give you the best kernels, pre-compiled modules are pres-
and possibly activated at startup. performance or support for all resolu- ent in the installer, but chances are that
To enable framebuffer mode, add op- tions. Some cards run only in generic they won’t match your installation, so
tion vga=891 to the kernel boot options, vesa mode (driver vesa in the Device sec- the installer will try to compile a module
for your installed kernel during the in- After going back to runlevel 5 (init 5), working C compiler must be installed to
stallation. For this procedure to succeed, or restarting the graphical login/session build the kernel module.
a working C compiler and development manager, the new driver module should (The ATI installer is also capable of
tools like the binutils package must be be active. (To verify this, look for the building a Debian-based package such
present on your system, and the kernel nVidia logo shown shortly before your as those used by Ubuntu, which might
sources matching your installed kernel desktop session starts.) glxinfo should be an easier way of installing the driver
version must also be installed. If this is now show Direct Rendering: Yes. than the file-based method.) After instal-
not the case, the installation will fail. If lation, you can run the command aticon-
the necessary tools are available, a new Installing ATI/AMD fig to reconfigure xorg.conf.
nVidia kernel module is compiled and Proprietary Drivers
loaded. The installer might also add a Like the nVidia driver, the ATI/AMD More Tuning
configuration option to /etc/modules to driver requires a proprietary kernel mod- Depending on the kind of graphical ap-
make sure the module is also loaded at ule that matches your own kernel’s ver- plications you use, different options in
the next startup. sion; however, the ATI installer has a /etc/X11/xorg.conf might provide better
A new nvidia Xorg driver is added to graphical GUI for installation, so you performance, more colors, or sharper
Xorg’s driver module directory and con- won’t need to shut down a running X pictures. Some of the options affect all
figured in /etc/X11/xorg.conf. Check for session. drivers, and others only work with a spe-
the Driver option in the Device section to Start by downloading an installer cific chipset driver. Options that are not
see if the installer has actually activated matching your card from the AMD known to a driver are ignored with a
the new driver. A backup of xorg.conf is homepage; make it executable and run it warning in newer Xorg versions, which
created (it cannot hurt if you have made from the command line as root: is convenient because you don’t have to
a backup on your own before running be extra careful not to break your X
the installer). Although you cannot do chmod a+x ati-driver-U server by mistyping an option.
much here, wait until installation is com- installer-*-x86.x86_64.run Most options are described in detail in
plete. nVidia provides a small utility ./ati-driver-installer-*-U the online manual pages of Xorg or in
called nvidia-xconfig for later reconfigu- x86.x86_64.run Xorg’s driver-specific pages. However,
ration, but the xorg.conf file entries for pay attention to the recommendations
Compiz should also work with the pro- The graphical installer will perfom all on configuring options and parameters
prietary driver (just not with the free nv the necessary steps. Kernel source code because some graphics cards can break
driver). matching your running kernel and a or overheat when “overclocked” beyond
their specifications. It has been a long
Listing 2: xorg.conf Options time since I tried a monitor with a badly
01 Section "Device" chosen resolution. Most LCD displays
02 ... should just cut off signals they cannot
03 Option "DamageEvents" "true"
handle, but playing too much with Xorg
04 Option "DisableGLXRootClipping" "true"
acceleration settings might not gain
enough in performance to justify the
05 Option "XaaNoOffscreenPixmaps" "true"
risk. Naturally, some good hints about
06 Option "AllowGLXWithComposite" "true"
performance tuning come from the game
07 Option "TripleBuffer" "true"
community, so look for useful tips and
08 EndSection
links at websites supported by Linux
09
gamers [5]. n
10 Section "Extensions"
11 ?
INFO
12 # Please do NOT enable this with the "nv" driver, it may
[1] Proprietary drivers for ATI/AMD
13 # put your NVIDIA card in a confused state.
cards for GNU/Linux:
14 Option "Composite" "Enable"
http://ati.amd.com/support/drivers/
15 EndSection
linux/linux-radeon.html
16
[2] Direct Rendering Infrastructure
17 Section "Screen" (DRI): http://dri.freedesktop.org/wiki/
18 ...
[3] Xorg homepage: http://www.x.org/
19 Option "AddARGBGLXVisuals" "true"
[4] Proprietary drivers for nVidia cards
20 EndSection
for GNU/Linux: http://www.nvidia.
21 com/object/unix.html
22 Section "ServerLayout" [5] linuX-gamers.net (with tips for
23 ... Wine/Xorg configuration for various
24 Option "AIGLX" "true" games):
25 EndSection http://www.linux-gamers.net/
Locked down
BY JAMES STANGER
W
hen it comes to security, ently secure – not even Ubuntu. An at- mand-based UFW works quite well as a
Ubuntu offers several advan- tacker might try to scan your system to front end for the powerful set of Linux
tages over a system like Win- identify an open port, and the applica- firewall utilities known as iptables [3].
dows. For instance, Ubuntu’s code is tion listening on a port might have its Although UFW appears to the user as a
open source, which means hundreds own security issues that could lead to complete firewall system, all it really
and even thousands of developers re- compromise. does is provide a slightly easier syntax
view and improve the code. Also, unlike But regardless of how systems or ap- for using the iptables.
Windows, Linux systems don’t have a plications might compare in an abstract The iptables utilities, in turn, operate
registry, a feature that has caused Win- sense, the specific reasons really don’t the Netfilter framework found in any
dows systems to succumb to worms, vi- even matter: Configuring a personal fire- Linux implementation. Netfilter and ipt-
ruses, and various other attacks over the wall is important, and practicing safe ables are complicated enough to scare
years. Linux systems are also loosely in- computing helps you understand your off many end users, so UFW (and its GUI
tegrated, which means just because one system and brings you a bit more peace counterpart GUFW) were created to
subsystem goes bad, the rest of the sys- of mind. bring the benefits of firewalls to the ev-
tem doesn't have to crash or become eryday Ubuntu desktop user.
unstable. Introducing UFW
Although Linux is often considered UFW, which stands for “Uncomplicated Getting Started with UFW
safer than other comparable desktop Firewall,” is Ubuntu’s official firewall To start UFW from any standard Jaunty
systems, no operating system is inher- configuration utility [1][2]. The com- installation, open a terminal window
The result of the preceding command is A personal firewall can block (or, conversely, allow) traffic based on parameters such as
the source IP address, the destination address, or the port number. Services running on
that UFW will run each time your system
your Ubuntu system listen for incoming connections to a specific TCP or UDP port, so
starts.
the port number provides an indication of the an outside connection is attempting to
After issuing this command, you can
reach. See Table 1 for a summary of some common service ports.
then set a default policy:
Many personal firewall can also block or allow traffic based on the network protocol, and
several firewall systems also support logging so that you can keep a record of traffic sta-
$ sudo ufw default deny
tistics and outside access attempts.
Default policy changed to 'deny'
(be sure to update your rules U
accordingly) $ sudo ufw status sudo ufw allow 80/tcp
Rule added
This command tells UFW to deny all The output for this command is shown
ICMP packets, as well as the protocols in Listing 1. The previous examples add rules for all
listed in Table 1, automatically. Then IP addresses. You can get much more
you can proceed to create exceptions to Allowing Specific Ports, specific about which addresses you want
this default closed policy. For example, Addresses, and Ranges to associate with your rules. For example,
the following commands allow connec- So far, the commands have only speci- suppose you have a default closed policy
tions to the SSH, web, and VNC servers fied a port number, not an actual proto- enabled on your personal firewall and
running your system: col. Filtering for the TCP or UDP proto- you want to allow the system at
col is also quite easy: 19.82.44.45 to connect to all ports on
$ sudo ufw allow 22 your local system. To make this possible,
Rule added sudo ufw allow 53/udp you would issue the following command:
$ sudo ufw allow 80 Rule added
Rule added sudo ufw allow from 19.82.44.45
$ sudo ufw allow 5900 The preceding command allows connec- Rule added
Rule added tions to your system’s DNS server, which
listens to UDP port 53 by default. Also, it is possible to specify a range of
You can verify UFW’s status by issuing To allow users to connect to only TCP IP addresses. For example, ICANN, the
the following command: port 80, issue the following command: body that allocates IP addresses on the
configurations: 02
• Default open 03
04
• Default closed
05 To Action From
UFW allows you to choose the default stance. I follow conventional wis-
06
dom and choose the default closed configuration, because it’s generally
07 -- ------ ----
better to disallow everything and then permit only specific traffic. The
advantage to this policy is that you have granular control over the types 08
10
The disadvantage is that you might inadvertently block connections to
your system and will have to spend time creating exceptions to this de- 11 80 ALLOW Anywhere
fault policy. But as you will learn in this article, creating these exceptions 12
Internet, created some ranges of private For instance, you can specify that your ple, to remove the rule allowing SSH,
IP addresses that can’t be routed on the UFW personal firewall system will allow issue the following command:
Internet. These addresses are often as- no more than six connection attempts
signed by DHCP servers operating be- over a period of 30 seconds. $sudo ufw delete allow 22
hind a firewall. Limiting the number of connection at- Rule deleted
To allow all of the RFC 1918 “private tempts can help you thwart the follow-
IP” addresses to access your system, you ing types of attacks: If you want to change the default stance
would issue the following commands: • Scanning:Ifconnectionsarelimited, of your firewall, simply issue the follow-
scans are less accurate. ing command:
$ sudo ufw allow from 10.0.0.0/8 • Denialofservice:Adenialofservice
rule added attack involves sending floods of pack- $ sudo ufw default allow
$ sudo ufw allow from U ets or malformed packets to a host in
172.16.0.0/12 the attempt to either crash the system However, understand that all of the ex-
rule added or overwhelm it. Limiting connections isting rules you have created will still
$ sudo ufw allow from U can help the system ignore flooding at- exist, so it is best if you stick with a de-
192.168.0.0/16 tempts. fault deny policy, then create rules to
rule added • Bruteforce:Abruteforceattackis allow specific traffic.
where an attacker repeatedly tries to
Of course, you can specify any IP ad- guess a user name or password combi- GUFW
dress range you like. nation. Limiting connections causes a Operating your firewall from the com-
reset to occur, causing the attacker to mand line gives you the most control
Limiting Connections take far longer to find a successful over your personal firewall, but you
One of the more powerful features of username/password combination. don’t have to use the command line if
UFW is the ability to limit connections. To enable connection lim-
iting, use the following syn-
Won’t It Block All Access? tax:
Many users won’t enable a personal
ufw limit service_name/ U
firewall because they’re afraid they then
protocol
won’t be able to visit their favorite video
site or download programs. That’s really
not going to happen. The developers For example, to limit connec-
who create personal firewall software tions for your web server,
are very smart; they know that you want you could issue the following
to get out to all the good stuff on the In- command:
ternet. They also know there are plenty
of bad guys who are trying to get into $ sudo ufw limit www/tcp
your computer.
rule added
The personal firewall software generally
blocks incoming access to your system;
it won’t hamper your ability to go out Removing a Rule
and find what you want. Unless, of
If you want to remove a rule,
course, you specifically tell it to.
specify the port. For exam- Figure 1: UFW, showing a simple firewall configuration.
Wine importer
it be practical to run Windows applications on the free Ubuntu operating system? Time for a little taste of
M
any Ubuntu migrants miss to develop something similar for Linux. Box or VMware, Wine does not emulate
games and graphics programs A short while later, the first version of a whole PC and thus cannot be consid-
such as CorelDRAW or prod- Wine was released. Today, more than ered a real emulator. This also explains
ucts such as Adobe Photoshop. The only 300 volunteer programmers from all over the name Wine, which means Wine Is
solution is to install Windows parallel to the world continue to contribute to the Not an Emulator.
Ubuntu – or try Wine, which tricks ap- Wine project. Because of the way Wine works, it of-
plications into believing they are run- fers a number of advantages. Chiefly,
ning on a Windows system. What’s in a Name? you do not need an expensive Windows
The history of Wine goes back to the To run Windows programs on Ubuntu, license. Programs will run almost as fast
year 1993. At the time, Sun developed a Wine uses a fairly complex trick: It sits as on the Redmond operating system,
small tool to run Windows applications between the Windows application and and windows behave as if they belong
on its own Solaris operating system, Ubuntu like a simultaneous interpreter. to a native Ubuntu program.
without the need for a Windows license If the Windows application says: “Draw An interpreter can only be as good as
or other interaction. This software in- a button,” Wine passes this command its knowledge of the two languages, and
spired Bob Amstadt and Eric Youngdale directly to Ubuntu. In contrast to Virtual- therein lies the problem: Because Micro-
Figure 1: The Wine database lists numerous applications that run on Wine – for example, the CorelDRAW A Wrench in the
graphics package. Works
Clicking on a program ver-
soft refused to release details of its oper- cannot revitalize hardware with Win- sion tells you exactly what the trouble is.
ating system until just recently, Wine de- dows-only driver support. A new window appears with details of
velopers were forced to adopt a trial and what does and doesn’t perform as ex-
error approach. Such a method involves Preparation pected. In addition, user reports at the
time-consuming, painstaking work, and Before you fire up your package manager bottom and tips for talking the program
considering the multiple-gigabyte operat- and launch into the Wine install, you into cooperating can be very useful. The
ing system monster they were facing, it might want to take a look at the appli- steps this requires, some of which are
was very much a labor of Sisyphus. On cation database on the Wine homepage very complex, are something you should
top of this, some software manufacturers [1]. This database summarizes the level not attempt unless you are an experi-
use some pretty nasty programming of support for various Windows
tricks, and if you want to talk these ap- programs: whether or not they run
plications into running on Ubuntu, Wine on Wine and, if so, how well be-
needs to know these tricks. Unfortu- haved they are. To access the data-
nately, most software vendors keep this base, go to the Wine homepage
kind of information safely under lock and, from among the tabs at the
and key. top, click AppDB. In the AppDB
Despite years of work, then, Wine is area on the left, select Browse
still officially under development, and Apps, go through the drop-down
most of the work taking place now is list labeled Category until you find
going into the fields of multimedia, the category and application you
video, and 3D graphics. This said, Wine are interested in, and click on
does support DirectX 8 and 9 quite well Update filter. CorelDRAW and
by now. The developers started work on Photoshop are hidden below Mul-
the tenth incarnation of this critical timedia | Graphics | Graphics Edit-
graphics interface for games last year. ing, for example. Alternatively,
An additional limitation is that Wine can use the search function to find
only handle very simple 32-bit Windows your application in the database.
applications, although improved support If you decide to investigate
for 64-bit software is being worked on CorelDRAW, you are taken to the
even now. page shown in Figure 1, where
Wine has another disadvantage: It can you will find ratings for different Figure 2: This window shows you the current Wine
only handle Windows applications; it versions that tell you how well the settings.
Figure 3: Start the Windows application installation file using Wine. Figure 5: Installing WinRAR with Wine.
enced Ubuntu user. In some cases, pro- Launch System | Administration | Synap- The Wine Configuration tool will then
grams refuse to work because Internet tic Package Manager, enter your pass- go on to create a hidden .wine directory
Explorer is missing; for example, Lex- word in the resulting dialog, then type below your home directory. The soft-
ware accounting software relies on Inter- wine in the search box and click Search. ware uses this directory to store the
net Explorer for some operations. In the list of results, mark the wine entry basic configuration, which you can see
If your application is still listed as bro- for installation. Synaptic will present a in Figure 2. Right now, do not modify
ken in the database, you should check list of additionally required changes. anything here, but click Cancel to close
the test date (in Test Results). If the test Now confirm these with Mark and start the tool.
was a while back, you might want to ex- the installation by clicking Apply.
periment yourself. Wine continues to Installing a Windows
mature, and it is conceivable that your Preparations Program
application has been taken care of. Wine integrates with the desktop start To take Wine for a test run, download
Once you have established that your menu. To launch Wine, click on Applica- the WinRAR packer [2], then open the
Windows application is likely to run on tions | Wine | Configure Wine. file manager. Next, locate the file and
Wine, you need an installation disc for
the Windows application. Although
Wine is free of charge, you need a valid
license for the Windows application.
Installation
Wine is included with Ubuntu and you
can retrieve it from a repository. First,
Dead as a Dodo
If a Windows program fails to launch when need (in WinRAR’s case, this is /programs/
you click it, some manual attention might other/winrar). When you get there, type
make it see reason. To start, open a termi-
wine file
nal window. Then, select Application | Ac-
cessories | Terminal in the start menu. Now replacing file with the name of the appli-
type cation you want to run, say, setup.exe.
cd directory
Make sure you stick to the exact spelling,
remembering that upper- and lowercase
where directory represents the full path to
letters are vital. To tell Wine to run the
your installation program. If the setup.exe
Windows program, press Enter again.
file is on a DVD, you can access the DVD
via the /media/ path. The command line If you experience difficulty launching
looks like this: the program, check the terminal window
cd /media/DVD_name
for error messages – you should not
close the terminal window or you will
In this command, replace DVD_name with
terminate the Windows program running
the entry in your media directory, then
in it. If the Windows program crashes,
climb down the directory tree until you
Figure 7: The Drives tab lets you map Linux you can try relaunching it.
find the directory with the .exe file you
directories to drive letters.
Conclusions
Wine is not a panacea, and many major
programs still refuse to cooperate. Your
best chances are with games (see Fig-
ures 9 and 10), but you might need to do
without popular accounting packages,
CorelDRAW, the latest version of Photo-
shop, or iTunes, for example.
A better alternative might be to look
around for an Ubuntu program that pro-
vides similar functionality. In the case of
Photoshop, why not try GIMP or Krita?
And OpenOffice has long been a more
than adequate replacement for Micro-
soft’s Office suite. If you check out the
list of packages in your distribution’s
Figure 9: Some Windows games, such as Adventure Runaway, … package manager, you might be sur-
prised at the number of comparable pro-
For each application, you can individ- applications, unless you define an grams, or even programs with superior
ually define the Windows version that exception. features, that Ubuntu offers. n
Wine should emulate. To do so, click
Add application and look for the execut- Garbage Collection Apps Gone Bad
able for your application (in .wine/ To get rid of a Windows application you The Wine MIT license gives users many
drive_c). have installed on Ubuntu, you might privileges, a fact that has helped Trans-
Now click Open, select the application think it would suffice to delete the corre- Gaming generate huge profits. Trans-
in the list, and then select the required sponding directory below .wine/drive_c/ Gaming just grabbed the package,
version of Windows in the Windows Ver- Program Files. added DirectX capabilities, which are
sion drop-down list. The configuration in However, Wine will still list the appli- required for gaming, and started to sell
Default Settings is valid for all Windows cation as installed. Instead, run Applica- the results as Cedega [3] (formerly
WineX). The Wine developers were un-
happy about this, and thus changed the
licensing terms to the LGPL in March
2002. The LGPL ensures that you can
continue to use Wine for commercial
purposes, but that changes and addi-
tions must be given back to the project.
CodeWeavers is exemplary in this re-
spect; the company bundled Wine with
its own commercial components to
create the CrossOver [4] package, while
actively promoting the ongoing devel-
opment of Wine.
INFO
[1] Wine Project homepage:
http://www.winehq.org
[2] WinRAR archiver homepage:
http://www.rarsoft.com
[3] Cedega website:
http://www.cedega.com
[4] CrossOver Linux: http://www.
codeweavers.com/products/cxlinux/
Figure 10: … run on Linux thanks to Wine.
S S T A N D !
Y OU R NE W
IL A B L E A T LINUXPROMAGAZI N E . C O M / SPECIAL
AVA
RDER O N L I N E AT WWW.
OR O
Know-How Building a Website
New Pages
Mi
ka
el D
am
k
ier
, Fo
tol
a i
With readily available Ubuntu tools, you can create and post your personal websites to a server. We’ll show
you how to get started. BY JAMES STANGER
S
ophisticated corporate sites in- want to start building your own website, and all of the other elements of a solid
clude content management tools, the free tools available through the website.
server-side scripting, and back- Ubuntu repositories provide all you need Even if you’re a beginner, Ubuntu’s
end database systems, but if you just to create web pages, podcasts, graphics, Jaunty Jackalope supports the applica-
HTML Editors
Cream elements, conducts validation, and per- uploads, link validation, and other sophisti-
Cream is a terrific little text editor. Based forms many other functions. cated features in addition to basic HTML
on vim, Cream is an X Window application • YSlow [3]: Shows you exactly how long editing. The user-friendly Quanta Plus or-
that makes it easier for people who want to your page will take to download. ganizes HTML code in an intuitive way. For
get right into the code. If you can use any • SenSEO [4]: Gives you hints and tips for instance, you can select tags from a conve-
standard Windows application, you can making sure the pages you create are op- nient drop-down menu.
use Cream. timized for the search engines . Kompozer
To install it, make sure you have the stan- If you use Firebug, you get the best of both If you just want a WYSIWYG editor that op-
dard Jaunty Universe repositories enabled worlds: a strong text editor and a quasi- erates more or less like a word processor,
and type the following: WYSIWYG editor. Also, you really don’t the best option might be Kompozer [7].
sudo apt-get install cream need to install any other applications. Formerly known as NVU, Kompozer is
Bluefish easy to use, and it sports some relatively
Cream only takes up about 2.5MB of disk
If you find that using a straight text editor sophisticated features, such as a CSS edi-
space on my standard Jaunty system.
such as Cream is too technical, Bluefish [5] tor and JavaScript console.
Firefox Add-ons is a nice alternative. Bluefish (Figure 2) is a Also, you can put Kompozer into “code
The Firefox web browser can serve as a so- full-featured HTML editor that provides mode,” wherein the application appears
phisticated development environment, as features such as spell checking, linking to much like a text editor. An intermediate
long as you install the correct add-ons. style sheets, and automatically launching “tag mode” is also available. Tag mode is
Some of my favorites are: various browser types for validation. helpful because it shows you where each
• Firebug [1]: Turns Firefox into an HTML Quanta Plus of the HTML tags occur on a page. Double-
editor. Quanta Plus (Figure 3) [6] is a KDE-based clicking on a tag allows you to edit the
• Web Developer [2]: Inspects all web page application that offers image maps, CVS code.
04 <html xmlns="http://www.
w3.org/1999/xhtml" xml:lang="en">
05 <head>
07 <meta name="Description"
content="For the CIW Foundations
Course"/>
08 <meta http-equiv="Content-Type"
content="text/html;
charset=utf-8"/>
09 <title>XHTML Template</title>
10 </head>
11 <body>
13 </body>
14 </html>
Figure 3: Editing an XHTML page in Quanta Plus.
Choosing an Editor
A few important qualities to look for in an editing tool include:
• Standards compliance: An HTML editor should support open stan-
dards and make it easy to choose a standard, from HTML 4.01 to
XHTML 1.0 Strict and beyond.
• Cascading Style Sheets (CSS) support: CSS is a method for adding
style elements to web pages. As you advance to more sophisticated
web development assignments, your job will be much easier if
you’re using an editor that supports CSS.
• File publishing: A good HTML editor should provide a means for up-
loading web pages to the server with a minimum of fuss.
• Ease of use: An application that gets you up and running quickly
might be worth the sacrifice of multiple feature sets. Figure 6: Creating a new document in Kompozer.
Adding an Image
Most web pages include graphic images
as well as plain text. With the use of an
image processing tool, you can add a
photo image or create a graphic element
for the site. GIMP is a popular graphics
tool that is accessible through the
Ubuntu Applications menu (Applica-
tions | Graphics | GIMP Image Editor).
For a quick look at how to build a sim-
ple graphic header for your website, see
Figure 7: Creating a bulleted list in Kompozer. the sidebar titled “Creating a Simple
Header Bar.”
add the contents of the repository to the cleared up by the time you read this, but To add an image in Kompozer, place
package list. the Ubuntu forum has posted some in- your cursor in the document where you
If the reload is successful, enter kom- formation for early adopters [10]. want the image to reside. For example,
pozer in the Quick Search box. When place the cursor near the top of the page.
kompozer appears in the package list, se- Creating a Document and Then, choose Insert | Image, and browse
lect the checkbox to add the package Formatting Text to an image you have previously created
and click the Apply button. Synaptic will To begin a new document in Kompozer, and saved.
add Kompozer to your Ubuntu system. choose File | New. Now you’ll be pre- Now enter the location of the image
(For more information on adding new sented with the Create a new document and some alternative text that describes
applications to your Ubuntu system, see or template box. To create an XHTML 1.0 it. The alternative text helps search en-
the article on adding packages in the Transitional document, edit the dialog gine bots organize the information on
Discovery guide.) box so that it looks similar to the box the site, which could increase the search
shown in Figure 6. rank for the page. Also, screen reading
Lauching Once you click Create, you’ll then be tools use the alternative text to describe
On standard Ubuntu systems, Kompozer presented with a blank document. Just the contents of the image to visually im-
will not appear automatically in the start typing inside the document as you paired users. Once you have inserted the
menu once you add it. To start Kom- would any word processor. As you type image, it will appear in the Kompozer
pozer, launch a terminal window by se-
lecting Applications | Accessories | Termi-
nal in the Ubuntu main window and
type kompozer (all lowercase – remem-
ber that Ubuntu is case sensitive) at the
command prompt. Kompozer starts with
the user-friendly interface shown in Fig-
ure 5. Note: Some early versions of
Jaunty have experienced issues with
Kompozer. These issues will likely be
Spell Checking
Right now, Kompozer doesn’t have a
good spell checking feature. If you’re
stumped for decent spell checking in
Kompozer, consider copying and past-
ing text from Kompozer into OpenOf-
fice. Figure 8: A web page in Kompozer after inserting an image.
HTML Validation
After you finish creating
your web page, you’re
still not ready to post it.
First you need to prove
that the code you gener-
ated is compliant with
the World Wide Web
Consortium (W3C) stan-
dards. In addition to the Figure 10: Choosing a file for validation.
Arc
hMe
n, F
otol
ia
Rolling your own Debian packages
GIFT WRAPPED
Just a couple of steps are all it takes to convert a source code archive into a full-fledged Debian package.
BY CARSTEN SCHNOBER
T
he compiler was once regarded to convert a program into the Debian ready. All the required information must
as an exotic tool for hard-core de- package format. be located in the debian subdirectory of
velopers, but building programs the source code directory. If the distribu-
is now a common task for average Linux CheckInstall tion has a prebuilt DEB package with the
users. The three classic commands con- The CheckInstall [1] program (Figure 1) software you want to compile, the infor-
figure, make, and sudo make install will offers the easiest approach to creating mation is probably already available. To
help you convert the source code down- the DEB packages used with Ubuntu, as recompile this version – for example,
loaded from a promising project website well as RPM packages used with other with support for additional features –
into a binary application ready to exe- Linux variants. CheckInstall is easy to first download the matching source code
cute on your own system. use, although it tends to fail with pack- using apt-get source Packagename (with-
The problem is, if you build a program ages that extend the operating system out sudo). You might need to enable the
yourself, you won’t be able to manage, functionality by adding kernel modules. Source code package source in Synaptic.
track, and update the application If you prefer DEB packages that will run After you download the files to a di-
through Ubuntu’s handy package man- on systems other than Debian, you need rectory, you will need to change to this
agement system. more than the basic packages created by directory to run the command. You
If you can’t find an Ubuntu package CheckInstall. Debian-based distros offer should have three new files and a direc-
for the program you want to install, but a collection of tools, mainly found in the tory. The filenames comprise the soft-
you still want the chance to manage the dpkg-dev package, that facilitate the task ware name, the package version number,
program using Ubuntu’s package man- of packaging an application. and possibly an internal revision num-
agement tools, you can always convert ber, such as ubuntu2. One of the three
the program into the Debian package original Beats Imitations files is the original archive with the
format used with Ubuntu. In this article, Debian packages are quite easy to build .orig.tar.gz suffix. The file with the
I'll walk you through the steps required as long as the source code directory is .diff.gz suffix contains the changes the
Figure 2: The uupdate command unpacks a source code archive and Figure 3: The dh_make command Debianizes a source code directory,
creates a debian subdirectory based on the content of the existing creating a debian subdirectory where it creates and generically popu-
package. lates files.
the latest version; you need a new DEB .gz file and attempts to add them to the $ dh_make -e mail@address.com -f
package based on the source code for new version. This approach will only ../program-version.tar.gz
the updated program version. The uup- work if the modified files are not much
date command from the Devscripts pack- different from their counterparts in the Next, you must decide what type of
age helps you update the source code. previous version. If just a couple of the package you are building (Figure 3). In
To use uupdate, download the tarball patches fail, the update process will the easiest case, you enter s for a single
with the new archive, but do not unpack carry on without them. uupdate also binary package. The other options are m
it. Then run apt-get source program transfers information, such as the pack- for multiple binary, l for library, and k
(again without sudo) to download your age description and dependencies, from for kernel module.
distributor’s version of the same pack- the original package to the new version. The CDBS (b, Common Debian Build
age. This will give you both a complete The call to uupdate unpacks the tar- System, [2][3]) option is useful mainly
debian directory with information you ball with the updated program version, for more complex packages that you will
can recycle, as well as (typically) the which contains a new source code direc- want to use and update over an ex-
changes made by the distributor to mod- tory, including a debian subdirectory tended period of time; however, this op-
ify the system for your distribution. with the package information gleaned tion does require a deeper understanding
Now change to the program version di- from the original package. Next, run of the DEB package system.
rectory created by apt-get source and run dpkg-buildpackage in the new source
the uupdate -u command, adding the code directory, as described previously. debian Directory
filename of the archive containing the This step starts the build, which gives After you run dh_make, take a look at
new version of the program (Figure 2): you a full-fledged DEB package. Again, the files in the debian directory (Table
the package management tool is re- 1). The files created here contain the
$ uupdate -u U quired to install the package: placeholders and generic information
path/program-NewVersion.tar.gz you will need to modify to match the
dpkg -i package_name.deb package.
The command reads the changes made The control file plays a fundamental
by the distributor from the program.diff- role because it contains all the critical
new Buildings package information. You can enter the
Table 2: Software If you do not have a previous version of software category in the Section: line;
Categories for “Section:” the program to build on, your only op- Table 2 shows your options.
tion is a completely new DEB package. In many cases, an additional Priority:
Designation Purpose
To start, unpack the source code archive, line is useful. The Priority: line describes
admin System management
which will not contain any distribution- how important the software is for the
programs
specific information. To “Debianize” the
base Basic packages
devel Packages for software
source code, you must first install the INFO
developers dh-make package. Then run dh_make
[1] CheckInstall: http://asic-linux.com.
doc Documentation with the -f parameter in the source code mx/~izto/checkinstall
libs Program libraries directory, passing in the path to the orig-
[2] CDBS: http://build-common.alioth.
mail Email software inal source code archive. So that other
debian.org
net Network software
users can contact you, you also need to
[3] Debian packages via CDBS:
enter an email address for the package,
x11 Other graphical programs http://www.ngolde.de/cdbs.html
which is defined with the -e parameter:
${shlibs:Depends}, U
${misc:Depends}
These variables save you some work; when you compile, the
dh_shlibdeps program automatically replaces the variables
with the required packages.
If you want to add recommended packages, insert a Sug-
gests: line into the control file;
Suggests: libqt0-ruby1.8
Premium
under which the software package is published. Indent the
text with four blanks. If you are using GPL licensing, you
don’t need to add the whole text, since it is available on any
Ubuntu PCs
Debian-based system in the /usr/share/common-licenses/GPL
directory. In this case, you can simply add a reference to the
license text in copyright.
Checking the changelog file for any new package is a good
idea. The first time you build a package, you normally won’t We also sell high-end Ubuntu
need to change the log and can just delete the file. In all other PCs. Visit our site to have a
cases, you will need to edit the file. The README.Debian file look at our new AMD
is where you add instructions that relate to the DEB package
in general and not to the software it contains.
Phenom II X4 and Intel Core
i7 machines.
Small Steps These are pre-installed
If you build software yourself, the small effort of building with Ubuntu 9.04.
matching packages will give you enormous convenience ben-
efits. The uupdate utility updates on the basis of an existing
package, and dh_make creates the debian directory. With just
a little practice, a final call to dpkg-buildpackage quickly be-
comes routine.
Seeing your first home-grown package install is a really
great feeling! n
ANSWER MAN
sudo apt-get install U and your flash drive in the bottom selec-
evolution-mapi tion box and click on Make Startup Disk
(Figure 1). You can also run this same
This will only work if your Exchange program by typing usb-creator at the
2007 server has MAPI enabled on it. command line on any existing Ubuntu
8.10 or newer machine.
Installing from USB
I have an Asus Eee PC 901 and Fixing Ubuntu Boot Menu
want to install Ubuntu on it, but I still dual boot my machine be-
it has no CD/DVD drive. How tween Windows XP and Ubuntu.
can I copy the Ubuntu Live CD ISO I recently had to reinstall Win-
Mike Basinger is an administra- [image] to a USB flash drive? dows XP on my computer. After reinstall-
ing Windows, my Ubuntu boot menu
tor on the Ubuntu Forums, where
The ability to create a bootable was gone, and I could no longer boot
he helps users with Ubuntu ques- Ubuntu USB installer has been into Ubuntu. How can I recover my
tions every day. He works for the included on the Ubuntu Live CD Ubuntu boot menu so I can dual boot be-
Ubuntu community by serving since the release of Ubuntu 8.10. All you tween Ubuntu and Windows XP again?
on the Ubuntu Community and need to make a USB installer is a USB
Forum Councils. Mike works at the flash drive with at least 700MB of free When you reinstalled Windows,
space, an Ubuntu 8.10 or newer Live CD, the Ubuntu bootloader, grub got
University of Utah Marriott Library
and a computer that you can boot into overwritten. Fixing this is easy –
in Salt Lake City, Utah, as an IT man- the Ubuntu Live CD. you just need an Ubuntu install CD or
ager. Send your Ubuntu questions Place the Ubuntu Live CD in your Live CD. Once the Ubuntu Live session
to: QandA@ubuntu-user.com computer CD/DVD drive and boot from boots, you should see an Ubuntu basic
the Live CD. At the prompt, choose Try desktop.
Ubuntu without installing. Once the Now open a terminal window, Appli-
Ubuntu Live session boots, you should cations | Accessories | Terminal and type
Corporate Email see an Ubuntu basic desktop. the following:
My company uses Microsoft Ex- Now plug your flash drive into your
change server for email. Does computer and go to the top menubar sudo grub
Ubuntu have any mail clients and choose System | Administration |
that work with an Exchange server? Create a USB startup disk. Next, select This will open the grub command-line
your Live CD in the top selection box interface. At the grub prompt, enter the
If you don’t need calendaring, following commands:
you can use almost any IMAP
(Internet Mail Access Protocol) find /boot/grub/stage1
mail client, such as Thunderbird, Mutt,
Evolution, or KMail, to connect to your This will tell you what hard drive and
mailbox. Ask your admin whether your partition grub is on. For this example, I
Exchange server is set up to work with will use (hd0,0), the first partition on
IMAP. If you do need calendaring, you the first hard drive, which is a very com-
can try using the Exchange connectors mon setup.
included with the Evolution mail client. Now you want to repair the grub boot-
Ubuntu automatically installs the Ex- loader:
change connector needed for Microsoft
Exchange 2003 or earlier. If your work- root (hd0,0)
place has a Exchange 2007 server, you setup (hd0)
need to install the MAPI (Messaging Ap- exit
plication Programming Interface) plugin
for Evolution, which is a new feature in The root command points to the proper
Evolution 2.26: Figure 1: Creating a USB startup disk. area of the hard drive, and the setup
command installs grub to the MBR sudo apt-get install fusion-icon and for Kubuntu, enter:
(Master Boot Record).
To get your Ubuntu boot menu back, Now you can launch fusion-icon at login sudo /etc/init.d/kdm stop
close down your Ubuntu Live CD ses- by creating a new startup program in
sion, remove the CD, and reboot your System | Preferences | Startup Applica- Now log in to your machine at the termi-
computer normally. tions. Be sure to use fusion-icon -n so nal window and go to the directory in
that it does not change the window man- which you downloaded the NVIDIA
Playing DVDs ager when it starts. driver. The chmod command will make
I would like to play DVDs on my the file executable:
Ubuntu laptop when I’m on a NVIDIA Graphics Card
flight, but it does not work I bought a new NVIDIA card sudo chmod +x NVIDIA*
when I insert a DVD. Is there anyway to and it is not supported by the
make DVD playback work in Ubuntu? NVIDIA drivers that come with Then, run the driver installer, follow the
Ubuntu. How do I install the latest driver instructions, and reboot your computer
Most store-bought DVDs are en- from the NVIDIA website on Ubuntu? after you finish.
crypted with CSS (Content If all goes well, your computer reloads
Scrambling System), which at- Installing NVIDIA drivers manu- X Window with full 3D support:
tempts to restrict the software that can ally is a little different on
play a DVD. The ability to decrypt DVDs Ubuntu than on other Linux dis- sudo sh NVIDIA*
in not included by default on Ubuntu be- tributions. First you need to download
cause of legal restrictions in some coun- the latest NVIDIA driver from their web- Bug Out
tries. To enable DVD playback (assuming site that supports your card. To compile I’m having problems with Fire-
it is legal in your area and you have a the driver, you need some extra software fox. It does not behave as it
legal right to access the recording), you installed in Ubuntu: should and crashes on me occa-
need to install the libdvdcss library. sionally. How do I report problems back
From Synaptic or a terminal, install libd- sudo apt-get install U to Ubuntu?
vdread4/ to get libdvdcss: build-essential linux-headers-U
`uname -r` If you are having a problem
sudo apt-get install libdvdread4 with Ubuntu that you think the
Then you need to install the 3D NVIDIA developers should know about,
Then from a terminal, execute the fol- driver that Ubuntu installs: submit a bug report to Launchpad
lowing command to install libdvdcss: (http://launchpad.net). Launchpad pro-
sudo apt-get remove U vides the bug tracker, among other ser-
sudo /usr/share/doc/U nvidia-glx nvidia-glx-legacy U vices, used by the Ubuntu community.
libdvdread4/install-css.sh nvidia-glx-new nvidia-settings Before you summit a bug to Launchpad,
you will need to create an account at
Games and Compiz The Ubuntu Linux kernel includes the https://launchpad.net/distros/ubuntu/
I really like the visual effects in 2D NVIDIA driver, which must be dis- +bugs/+login. After you have created
Compiz, but it causes slow- abled at boot-up. Just edit the /etc/ your account, you can use two auto-
downs and screen corruption default/linux-restricted-modules-common matic procedures to create your bug re-
when I play games in Ubuntu. Is there a file: port. In most programs included in
quick and easy way to turn off Compiz Ubuntu, go to Help | Report a Problem.
temporarily when I play games on my gksudo gedit U This will automatically create a bug re-
computer? /etc/default/linux-restricted-U port with the necessary information that
modules-common Ubuntu developers will need.
Compiz can be turned off with All you need to do is fill in a descrip-
the Appearance control panel, and change the line DISABLED_ tion of what is happening. At the com-
System | Preferences | Appear- MODULES=" to "DISABLED_ mand prompt, you can do the same
ance, by clicking on the Visual Effects MODULES="nv nvidia_new". thing with the ubuntu-bug command:
tab and selecting None. The problem Be sure to back up your xorg.conf file
with this method is that any special set- and exit the X Window System com- ubuntu-bug firefox
tings that were changed in Compiz will pletely.
be lost when you re-enable it. Before submitting a bug report, I would
A better way to turn Compiz off and sudo cp /etc/X11/xorg.conf U suggest searching Google, the Ubuntu
on is to use the fusion-icon program. The /etc/X11/xorg.conf.backup Forums, and Launchpad to see whether
fusion-icon program sits in the notifica- this is a known issue. Hunting down a
tion area in your Gnome panel and con- For Ubuntu, type previous answer will help keep the de-
trols Compiz. Install fusion-icon with velopers from being overwhelmed by
Synaptic or apt-get: sudo /etc/init.d/gdm stop duplicate bug reports. n
Central
launCher
Redrex, Fotolia
Information at your fingertips with actions to match – Gnome Do tact in Pidgin. The tool also supports file
operations and much more. Various
merges search engine and application launcher functionality to create plugins give users a convenient ap-
proach to extending functionality.
a new and convenient tool. BY CHRISTOPH LANGNER
Installation
D
ocuments, applications, mes- Gnome Do can do more than just Gnome Do is easy to install because
sages, and bookmarks tend to launch programs – it will find music in Ubuntu includes all the necessary pack-
spread all over a system. Gnome Rhythmbox (see Figure 2), Amarok, or ages [3]. Simply run Applications | Add/
Do [1] gives users a new launcher for Banshee databases or contacts in Evolu- Remove… and enter gnome-do into the
Gnome and other desktops that not only tion, Gmail, or the Pidgin instant mes- Search box. Then mark the resulting
finds information but also triggers ac- senger. If you want, you can tell Gnome entry GNOME Do for installation and
tions on the basis of the results. Do to set up a chat session with the con- click on Apply Changes.
The flexible Gnome Do [1] application After you finish the install, Applica-
launcher is similar to the Quicksilver [2] tions | Accessories | GNOME Do takes
launch tool for Mac OS X. Users press a
keyboard shortcut to pop up a window
in which they enter the name of the pro-
gram they need.
Because Gnome Do auto-completes
the entry, entering just part of the name
is sufficient (Figure 1). For example,
typing text will launch your text editor. Figure 1: Gnome Do auto-completes the
Gnome Do bases its auto-complete entry. (Screenshots courtesy of David
suggestions on start menu entries. Siegel) Figure 2: Gnome Do even finds your music.
the Visual Effects tab, you can choose file extension of .dll, which is fairly sur-
Normal or Extra. prising for Linux users. Simply drop the
plugin into the .local/share/gnome-do/
triple Functionality plugins directory below your home di-
The Gnome Do main window has three rectory and relaunch the program to
sections, two of which are visible on allow Gnome Do to detect the plugin.
launching the tool. When you enter a This gives users a simple approach to
search key, an action to match the adding a variety of functions.
search automatically appears in the sec- Gnome Do 0.5 introduced a new pref-
ond section. For example, if you enter erences window and plugin manager
text, Gnome Do automatically selects (Figure 3), which helps you browse,
Run to execute a program. If you then download, install, and enable or disable
confirm the action by pressing Enter, the plugins from within the tool. Additional
Gnome text editor launches. plugin information is available on a wiki
Because Gnome Do uses the names in page, and you can do plugin-specific
the start menu to identify applications, it configuration.
can cause some confusion. The Gnome Gnome Do will search Firefox or
Figure 3: Plugins extend Gnome Do’s func- text editor binary is called gedit. If you Epiphany bookmarks and open links in
tionality. enter the name in Gnome Do, the pro- your browser, and it will also search for
gram fails to find a match. To be on the music in your Rhythmbox, Amarok, or
you to a program launcher. First you will safe side, stick to the names in the appli- Banshee database and add this to a play-
see the application window. If you click cation menus. list (see Figure 4). Also, you can add
on the desktop or perform some other If you enter the name of a file or direc- Pidgin or Evolution contacts to the
action, Gnome Do disappears into the tory in your home directory and press launcher.
background. Tab to move to the action area, you can
To move the tool to the foreground, then press the Down arrow key to select Community Contributions
you just press its configured keyboard other actions, such as moving or copy- New plugins are released almost daily.
shortcut – by default, that’s Windows ing. After selecting an action, a third sec- Gnome Do provides a community plugin
+ Spacebar. tion appears and you can choose a target category with plugins from a variety of
for the action. contributors. New community contribu-
session These controls are typical of Gnome tions include Skype, Twitter, Flickr, and
After installation, Ubuntu automatically Do: You start by typing a search key and Google Calendar plugins, as well as the
launches Gnome Do in the background then press Tab to move on to the next WindowManager plugin that lets you ar-
at every start of the desktop. With the section, where you press the Down range windows on your desktop. Devel-
session management feature, you can arrow key to select an action. opers who enjoy working with Mono
undo and later reactivate this behavior if can also refer to the detailed documenta-
you want. plugins tion to implement their own ideas [5]. n
To remove Gnome Do from the list of The recent Plugin improvements have
programs that are started automatically, made Gnome Do a flexibly extendable INFO
press System | Preferences | Startup Ap- tool [4]. Each plugin has a library with a
[1] Gnome Do: http://do.davebsd.com/
plications and search for the
[2] Quicksilver: http://docs.blacktree.
GNOME Do entry. Now you
com/quicksilver/what_is_quicksilver
want to deactivate the
checkbox next to it and click [3] Installation: http://do.davebsd.com/
wiki/index.php?title=Installing_Do
on Close. In the same way,
you can later configure the [4] Gnome Do plugins: http://
do.davebsd.com/wiki/index.
desktop to run Gnome Do at
php?title=Category:Plugins
startup again.
Gnome Do does not use a [5] Developing plugins: http://
do.davebsd.com/wiki/index.
traditional application win-
php?title=Getting_started_with_writ-
dow. Assuming you have
ing_plugins
desktop effects enabled,
Gnome Do does without a
frame and the window is Christoph Langner works in test
AUTHOR
MIND TRICKS
Learn how to master the advanced features of the FreeMind mind-mapping application to get the most out of
this useful tool. BY DMITRI POPOV
A
lthough you might think that Linux and download the file free- velopment version of FreeMind (cur-
FreeMind [1] is just a mind- mind_0.8.1-2_all.deb. A double-click on rently, it’s 0.9.0) and unpack it.
mapping application designed to it starts the installer for external pack- In the terminal, switch to the freemind
help creative professionals organize their ages. The plugin packages provide addi- directory and run the sh freemind.sh
thoughts and ideas, in reality, it sports so tional features but are not necessary. command to launch the application.
many nifty features that it could prove to The package installer automatically
be an indispensable productivity tool no takes care of the additional necessary Using Shortcuts
matter what you do for a living. files. The FreeMind developers recom- Because it is a graphical application,
Because FreeMind is a rather straight- mend Sun Java instead of the free GCJ. FreeMind lets you work with mind maps
forward application, you can learn how To get it, install the sun-java6-jre pack- by the point-and-click method. It also
to use its basic features in a couple of age with the Synaptic package manager supports keyboard shortcuts, which
hours. But if you want to get the most or run the sudo apt-get install allow you to perform virtually any oper-
out of this excellent application, you sun-java6-jre command in the terminal. ation without touching the mouse.
might want to master its more advanced Once the package is installed, use the The main advantage of keyboard
features. sudo update-alternatives --config java shortcuts is speed: Hitting a key combi-
command to set Sun JRE as the default nation is much faster than finding and
Basics environment on your system. moving the mouse. It might take you
The Ubuntu 9.04 package manager only If you don’t mind living on the bleed- some time to learn FreeMind’s shortcuts,
contains FreeMind version 0.7. To install ing edge, you might want to opt for the but once you’ve mastered them, you can
it, use the Applications | Add/Remove... latest test release of FreeMind that create and navigate mind maps with
dialog. comes with a few nifty features not consummate ease and speed.
On the FreeMind homepage you will found in the stable version of the appli- These keyboard skills can come in
find the most recent program version, cation. No official distribution packages particularly handy when you are brain-
currently 0.8.1, which brings a number are ready yet, so you have to download storming a problem or taking notes dur-
of new features. Just click on Debian the zip archive containing the latest de- ing a lecture and you don’t have time to
Usage Scenarios
FreeMind is not only good for mapping
your ideas, with a bit of creativity, you
can use FreeMind for pretty much any-
thing. For example, FreeMind has all the
features you need to create a task man-
ager. To start, create a mind map that
represents the overall structure of a task
manager.
The exact structure depends on how
you usually manage your tasks, but it
could look like the example in Figure 1. Figure 3: Using attributes to keep tabs on tasks.
Getting physical
To provide a more efficient way of ap-
plying formatting to nodes in a mind
map, FreeMind sports so-called physical
styles, which you can use to specify
styles and their properties, such as node
color, type, font, borders, and so on. To
do this, choose Format | Physical Style |
Manage Patterns. This opens the Pat-
terns dialog window (Figure 5), where
you can tweak the existing styles. To
apply a physical style to a node, right-
click on it and select the desired style
from the Physical Style list.
WRITERS
UNBLOCKED
W
hen you are ready to sit down as text, movie, theater, comic, and radio The editor might seem spartan, but it
and write that book you al- play. The right side of the splash screen works in an intelligent way with the use
ways think about, you might offers a selection of classical works pre- of conventions and indenting that distin-
want some help getting organized. Here, pared as examples – such as the H. G. guish a play or other literary scripts in
I will examine Celtx [1], a tool that helps Wells’ radio play War of the Worlds [5] printed format. This feature distin-
you compose comics, radio dramas, or Oscar Wilde’s The Importance of guishes Celtx from Emacs or other word
movie scripts, novels, or plays. (See also Being Earnest [6] – that will give you an processing software. For example, the
the “Alternatives to Celtx” box.) excellent overview of what Celtx offers. software attempts to identify the format
After selecting Wilde’s play, you will of any text you type as a Dialog, Head-
Installation see a number of tabs in the left-hand ing, or Figure. If the editor fails to iden-
Installing Celtx is easy, and it works sidebar. The tabs give you a clear over- tify the format, you can choose the cor-
right out of the box. In the download view of the wide range of concerns in- rect format from a pull-down menu on
section of the Celtx project page [2], pro- volved in producing a play. For example, the left-hand side. Also, the editor has
gram packages are available for the Stageplay tab contains the literary a function for converting the complete
Windows, Mac, and Linux. work with acts, setting descriptions, and script, including the cover, to PDF for-
After downloading Celtx, you can un- dialogs in a text editor. mat (see Figure 3).
pack the tarball in the shell by typing tar
xvzf Celtx.tar.gz, then type cd celtx to Alternatives to Celtx
change to the newly create directory. Besides Celtx, a number of other programs take a similar approach to facilitating the
When you get there, type ./celtx to writer’s daily grind. If you prefer a more spartan approach, StorYBook [3] – a Java pro-
launch the writing tool. gram – is a good choice, providing a good database that offers views and options to suit
your individual requirements.
Getting started Amateur writers with serious ambitions might want to check out Writer’s Café [4]. Instal-
On launch, Celtx comes up with a clear- lation is simple, and the software integrates seamlessly with the Gnome desktop. Writ-
cut splash screen (Figure 2) that gives er’s Café works with OpenOffice, is just as feature rich as Celtx, and offers many helpers
you a couple of options. On the left side and rules for users who are interested in learning the writer’s trade from scratch. In con-
of the window, Celtx offers a selection of trast to its competitor, only the demo version is free; the full version of Writer’s Café will
project templates that cover topics such set you back about US$ 65 (EUR 41, UK£ 33).
Authoring Time
Not every piece of work will be as large
as this sample. Although Celtx is used
mainly for drafting theater plays; scripts
for radio, movies, and TV; and comics,
the program can also help you structure
a longer piece of prose, such as a novella
or novel. As a simple example, imagine
Figure 1: If you need help, check out the wiki on the Celtx website. you are planning a novel titled “The
Magic Mountain” [7]. First you would
At first, the Tea Images tab, with its play, you will see the Project Library in choose the Text template on the Celtx
pictures of teacups and sandwiches, the top half. This contains a filesystem welcome window. Celtx would then
might seem slightly strange. In fact, this tree with the root of the project named come up with the Text and Main catalog
is a suggestion for the set in scene 1 Importance of Being Earnest containing tabs, which you would see in the sidebar
(Figure 4). With this option, you can add various entries. The entries include tabs below Project Library.
sketches or photos to a project, scene by such as Master Catalog, Stageplay, The next step would be to assign a
scene, and access this data whenever Character Catalog, Synopsis and Sum- name to your project. To do so, just
needed. The Production Schedule tab mary, and Oscar Bio, a short biography right-click the root directory of the proj-
takes you to a calendar that lets you plan of Oscar Wilde (see Figure 5). ect tree in the side bar, which is origi-
the production down to the minute. Fi- The second part of the sidebar nally titled Unnamed. In the context
nally, the Master Catalog gives you a da- changes its appearance or is hidden – menu, select Rename and enter “The
tabase with resources such as photos depending on the context of the project Magic Mountain” in the dialog that then
and addresses of actors involved, loca- element you are accessing. For example, appears.
tions, and set designs – all of which are
organized in a clear-cut way, scene by
scene. The next section tells you how to
work with these resources.
The sidebar on the left of the window
offers a further option for breaking down
your material. In the case of Wilde’s
Figure 4: If you are planning a play, you can collect the set design Figure 5: The sample Oscar Wilde play in Celtx includes a biography
elements in the Tea Images folder.. of the Irish author.
Clicking the Main Catalog tab opens a To complete the Characteristics, you or authors, you can upload your co-pro-
list with the headings Name, Category, also need to consider the character’s duction to a Celtx server. The program
Description, Tags, and Media. The + main role in your story: this could be the offers a wizard to guide you through the
Add button lets you add elements to the Protagonist, Antagonist, Best Friend, or formalities of logging on. To reach the
empty list, such as Characters, Scene something completely different. service, click the Web Services button in
Details, or Location. The element list At this point, you can add one charac- the tool’s taskbar. In addition, Celtx of-
contains all kinds of entries, but you ter after another to your narrative, as fers a wiki, a forum, and a video tutorial.
might be able to do without fields like well as multiple Locations; however, if To access these resources, launch the
Costumes or Stunts for a novel. you click Map of scene in the Address matching options with your web
Because a good story depends greatly section, the program launches your web browser in the Help menu.
on powerful characters, you will want to browser and takes you to Google Maps.
select Characters and think of a name, Adding a Scene details element lets Conclusions
which you then type into the text box in you define precisely what happens in Celtx is a feature-rich program, but de-
the element window – say Hans Castorp. which scene, who the protagonists and spite this, the learning curve is not too
The right window now tiles horizontally antagonists are, what their motivations steep: Computer newcomers should
with the tab Character: Hans Castorp. In are, and whether they reach these objec- have no trouble navigating around the
the fields, you can enter this character’s tives in the scene. This element is impor- program, thanks to the intuitive inter-
characteristics. tant to a story, in that good material al- face. Of course, Celtx can’t take one re-
The field labels are self-explanatory. ways has scope for conflict. sponsibility off your shoulders – that of
Here you can add an image to the Media To create a storyboard, including a being creative and brave enough to put
field – a portrait of the character per- short description of all its sequences, your own ideas down on paper. n
haps. The Detailed description of body, click the plus sign (+) in the sidebar or
Motivation, and Background to character click the Add icon in the taskbar. Again, INFO
fields round off the image of your novel you can choose from a list of elements
[1] Celtx project homepage:
character. that you might recognize from your first http://celtx.com/
steps with the Oscar Wilde example. In
[2] Celtx download page:
this case, you need the Storyboard. Press
http://celtx.com/download.html
the Sequence button to add one se-
[3] StorYBook website:
quence after another (Figure 6). For ex-
http://storybook.intertec.ch/
ample, 1. Hans Castorp takes the train
[4] Writer’s Café:
from Hamburg to Davos, 2. Hans Castorp
http://www.writerscafe.co.uk/
arrives in the sanatorium in Davos, and
so on, until your story unfolds in front of [5] War of the Worlds: http://en.wiki-
pedia.org/wiki/The_War_of_the_
your eyes – all you need to do now is
Worlds_(radio)
write it.
[6] The Importance of Being Earnest:
But That’s Not All, Folks … http://en.wikipedia.org/wiki/The_Im-
portance_of_Being_Earnest
To take a break from your work, select
Save Project in the File menu at the top [7] Mann, Thomas. The Magic Moun-
tain. 1929. http://en.wikipedia.org/
of the Celtx window. If you are collabo-
wiki/The_Magic_Mountain
Figure 6: Compiling the story scene by scene. rating on the project with various artists
LATERAL CONTROL
Fran
ck Boston,
Synergy lets you combine multiple PCs into a
Fot
ol i
a.c
single virtual desktop.
BY FLORIAN EFFENBERGER om
S
ynergy is a small but powerful desktop running on Ubuntu and a small administrator will be using the keyboard
tool that lets the user control notebook running on Vista next to it. To and mouse attached to it. In line with
multiple PCs with a single key- remove the need to keep swapping be- this, all other devices are clients.
board and mouse – even across operat- tween keyboards, the administrator de-
ing system boundaries. To run Synergy, cides to install Synergy. Most of the work Configuration
you’ll need at least two PCs, each with will be done on the desktop, the Ubuntu Before you start using Synergy, you need
its own operating system, monitor, and system. In Synergy-speak this master to configure the program by editing the
working network adapter. The software system is known as the server, and the /etc/synergy.conf or ~/.synergy.conf text
supports Windows from 95 through file. The program relies on the concept of
Vista, Mac OS X version 10.2 or newer, Enabling Universe screens: Every computer in the group,
and not only Ubuntu but other Linux Ubuntu organizes its software packages
whether it is a server or a client, is a
distributions with the latest X server. in numerous repositories. Universe is a screen with a precisely defined position
Prebuilt packages for Windows and Mac hold-all for packages that are not as – just like assigning positions to applica-
OS X are available from the Synergy comprehensively supported and main- tions on a multi-display setup. There-
homepage [1]. Ubuntu offers a Synergy tained as some others. To use Universe, fore, you must add the screen name, its
package in its Universe repository. For you first need to enable the entry in the aliases, and the position relative to the
RPM-based Linux systems, an RPM /etc/apt/sources.list by removing the other devices to the configuration file. It
package is also available. pound sign. Then, after running apt-get is important to define the position in
First imagine a typical network admin- update, you can install various new both directions, left and right. The setup
packages, including Synergy.
istrator’s workplace with a professional for the case study here, and comments
on it, are given in Listing 1. Many more tem – the difference is that you
options are available, all of which are are using two operating system
documented on the Synergy configura- platforms. Keyboard input will
tion page [2]. also reach the client while the
A word of warning is appropriate here: focus is on it (i.e., the mouse
Make sure you enter all the options in cursor is on the client screen). In
the configuration file in lowercase. In ad- addition, Synergy synchronizes
dition, pay attention to line breaks be- the clipboards between the two
cause Synergy is finicky and will not systems; according to the devel-
load the file if you make a mistake. After opers, this feature automatically
you complete the setup, launch the Syn- sets the correct character set and
ergy server on Ubuntu as a normal user converts line breaks between op-
by typing synergys. Adding -f prevents erating systems – a perfect way
Synergy from running in the background to copy longer texts and configu- Figure 1: Synergy as a client on Windows Vista.
as a service. ration files centrally. Pressing
Scroll disables Synergy temporarily if According to the homepage, the Mac
QuickSynergy needed. OS X variant of the program in particular
QuickSynergy provides an even more Many more options are available for is not as mature as the Linux and Win-
convenient approach to configuring the you to set the configuration file. Among dows versions.
tool. On Ubuntu, you can download the other things, Synergy supports keyboard
QuickSynergy package from the Universe mapping between the server and the cli- Conclusions
repository and install it, then launch it ents, lets you configure screen areas Synergy offers an interesting approach
via Applications | Tools | QuickSynergy. where no screen paging will take place, to managing multiple computers cen-
Unfortunately, the program failed to and lets you run certain actions with the trally without investing in additional
launch a working server when I tried it press of a button. hardware. In contrast to legacy solu-
in our lab. Of course, nobody’s perfect, and Sy- tions, every machine keeps its own dis-
The Vista client – that is, the PC I will nergy failed on a couple of counts in our play. The program is definitely a boon
be controlling via the Ubuntu system – is lab. For example, it failed to synchronize for anybody who needs to run several
easier to configure. After completing the the screensavers and centrally lock all machines, and Synergy’s cross-operating
install, you can launch Synergy directly the screens. system clipboard support is a really use-
via the Start menu, which takes you to a ful feature that removes the need to
neat-looking graphical interface (Figure Listing 1: Case Study copy text files. However, if I had three
1). To connect to the server, select the 01 # Define screens wishes, one of them would be easier
Use another computer’s shared keyboard 02 section: screens configuration on Linux. n
and mouse option and enter the name of 03 ubuntu:
the server machine. Professionals might 04 vista:
INFO
also be interested in setting additional
05 end [1] Synergy homepage:
options, such as the logging level, auto-
06 http://synergy2.sourceforge.net
start, and network details.
07 # Alternative names [2] Configuration options:
Linking Screens 08 section: aliases http://synergy2.sourceforge.net/
configuration.html
09 # ubuntu -> desktop
After configuring your clients, just type
10 ubuntu: [3] Security notes: http://synergy2.
synergyc server IP (or click Start if you
11 desktop
sourceforge.net/security.html
are working on Windows) to connect the
screens. At first, this is all fairly unspec- 12 # vista -> notebook
tacular – you can use both systems in 13 vista: Florian Effenberger has been a free
the normal way. 14 notebook software evangelist for many years.
But if you move the mouse cursor over 15 end
He is the Co-Lead of OpenOffice.
org’s international marketing project
the right-hand border of the screen on 16
THE AUTHOR
ENVIRONMENTAL
a terminal window. We’ll show you some terminal tricks with environment variables. BY HEIKE JURZIK
U
buntu’s Terminal accessory To access the terminal window, select the user’s home directory, and many
opens a text-based command Accessories | Terminal in the Ubuntu other things.
window that uses a command main window. An environment variable has three
system called Bash (Bourne Again If you enter a command like ls in the parts: the name, an assignment operator
SHell). shell, the shell knows you want to call (=), and a value:
the /bin/ls program. Bash knows where
Listing 1: env Example to look for executables, so you don’t variable=value
01 huhn@asteroid:~$ env
need to type in the full path. This path is
defined in what is known as an environ- The name can include upper- and lower-
02 TERM=xterm
ment variable. Variables of this kind are case letters, underlines, and numbers.
03 SHELL=/bin/bash
also used to modify the appearance of The only restriction is that a table can’t
04 USER=huhn
the shell prompt, set the time zone and start with a number. If the value of the
05 LS_COLORS=no=00:fi=00:...
06 PATH=/usr/local/bin:/usr/bin:/bin:/
usr/bin/X11:/usr/games:/home/huhn/
Tip GLOSSARY
bin
Instead of using two separate com- builtin: an abbreviation for “built-in
07 IRCSERVER=irc.freenode.net mands (e.g., LESS="-X"; export LESS), command.” Commands like this are
08 LANG=de_DE@euro you can define and export all at once: built in to the shell, and you do not need
09 ... export LESS="-X". to run a special program to use them.
02 declare -x CHARSET="latin1"
03 declare -x LS_COLORS="no=00:fi=00:..."
FROM APRESS
04 declare -x IRCSERVER="irc.freenode.net"
05 ...
Peter Seebach
variable contains blanks or nonstandard characters, you have 978-1-4302-1043-6
to double-quote your input: | |
$34.99 376 pp November 2008
LESS="-X"
Welcome Home
Ron Peters
Every user on an Ubuntu system has a place he or she can 978-1-4302-1841-8
call home; Bash provides a fully furnished environment for | |
$39.99 330 pp December 2008
every single account. To discover which variables your home
uses, type env (for “environment”).
Listing 1 shows an example. Some of the variables in List-
ing 1 are set by the user. Other shell variables are predefined
but can be modified as necessary. The convention is to use Kirk Bauer and Nathan Campi
uppercase letters. 978-1-4302-1059-7
Table 1 gives an overview of common variables for Bash. | |
$49.99 425 pp December 2008
huhn@asteroid:echo $LANG
de_DE@euro
huhn@asteroid:echo $PS1
\u@\h:\w\$
Sander van Vugt
978-1-4302-1622-3
The shell replaces the variables $LANG and $PS1 with their
| |
$44.99 400 pp December 2008
Language and Locale and looking for your language with the variables. The -n option deletes a vari-
The LANG command lists the language Search tool. able from the list. Listing 2 gives a cou-
and locale settings for your environ- ple of examples.
ment. To see the locale options available Change
on your system, type: As you have seen, you can easily change Home Improvements
a variable by entering its name, the as- Any variables you export are only effec-
locale -a signment operator, and the value. Vari- tive in the current shell and its child pro-
ables defined in this way are only valid cesses. To set up a variable permanently,
If your Ubuntu system is configured for for the current terminal session. To ex- you need to modify your Bash configura-
US English (the en_US.utf8 locale) but port the settings, you need the aptly tion file and reload your environment.
your preference is for British English, named export command. This command To do so, add your new export com-
you can change the language setting makes the settings accessible to child mands to one of the Bash startup files,
with the following command: processes and subshells. such as ~/.bashrc (Figure 1), then parse
For example, if you are an IRC user, the file once you’ve finished your home
LANG=GB you can set the IRCNICK, IRCNAME, and improvements:
IRCSERVER variables for the current
The shell even lets you define the lan- Bash shell to tell command line--based source ~/.bashrc
guage setting for certain specific applica- IRC clients which nick and name to use
tions: to log on automatically to a specific IRC Listing 3 shows a couple of practical en-
server. If you then launch a second shell vironment variables, including com-
LANG=GB firefox from the first one and try to output the ments, that should make you feel at
values of the new variables, you won’t home. n
Also, you can configure your environ- see a thing. First you need to quit the
ment for different languages: second shell by typing exit (Ctrl+D) and Listing 3: Environment
export the new variables. Now open a Variables
LANG=FR firefox new shell from the first one and you will 01 # prevents "less" from leaving an
If the language you want to add are now available in the subshell. 02 # screen at the end of the output:
doesn’t appear with the locale -a com- The export builtin has more tricks up 03
mand, you will need to install it through its sleeve. In combination with the -p op- 04 export LESS="-X"
the Ubuntu repositories. To do so, try tion, or when called without any param- 05
going to the Synaptic package manager eters, it displays a list of all exported 06 # adds a touch of color: user
prompt in
Variable Meaning 08
HOSTNAME Hostname 14
LANG Language for program output, such as the date format, etc., assuming 15 COLOR2='\[\033[00;33m\]'
none of the LC_ variables (see below) have been set. With the locale 16 COLOR3='\[\033[00;37m\]'
command, you can output a listing of all defined language variables.
17 PS1=$COLOR1'[\u@\h'$COLOR2'
LC_ALL Country setting, such as C or de; this overrides LANG and any other
\W'$COLOR1']'$COLOR3'\$ '
LC_ variables.
18 PS2=$COLOR1'>'$COLOR3' '
LC_MESSAGES Language for program and error messages
19
LC_TIME Time format
20 # I want the CET time zone on my
LOGNAME Login name of user
server in Canada:
MAIL Path to the user’s mailbox (incoming mail)
21
MANPATH Search path for man pages
22 export TZ=CET
PATH Search path for executables
23
PS1 Default appearance of the shell prompt. For non-privileged users, this
is typically \u@\h:\w\$ (huhn@asteroid:~$ in this example); for the ad- 24 # I want ispell to use the correct
ministrator, this is typically \h:\w\$ (asteroid:~#). character set
PWD Name of the current directory (“print working directory”) 25 # and the correct dictionary:
All jackalope cartoons in this issue were created by K. Curtis Shontz, www.theagilebadger.com
Installation
Installing
Ubuntu
If your hardware supports Ubuntu, you should have
your new system up and running in less than an hour.
BY CARSTEN SCHNOBER
The Ubuntu DVD enclosed with this issue in- The first item in the
stalls on most contemporary Intel-compatible boot menu, Try Ubuntu
PC systems. The machine you use will need at without any changes to
least 384MB of RAM. Certain graphics cards, your computer, lets you
WLAN chipsets, and other components might boot the system in Live
not be supported by Ubuntu. Included on the mode from the DVD.
DVD is a Live boot option that allows you to As mentioned previ-
boot Ubuntu from the DVD without disturbing ously, you can try a
the contents of your hard disk. To start, you Live boot first before
might want to perform a Live boot from the committing to a hard
DVD to test for any hardware compatibility is- disk install. To navi-
sues before you do a conventional installation. gate the menu, use
If you boot to the Live system, you will find a the arrow keys and
folder called Examples on the desktop with a press Enter to select.
variety of test files for exploring multimedia The Check disc for
and office applications and other Ubuntu fea- defects and Test RAM
tures. options take you to a
If you experience problems with hardware couple of test rou-
support, see Ubuntu’s online help sources for tines. If you have de-
additional information. The Ubuntu Jaunty cided that you just
Jackalope release notes are a good starting want to boot your old
point [1]. Ubuntu also provides forums [2], a system normally and
wiki [3], and other sources for troubleshooting ignore the contents of
information [4]. the DVD, select Boot
from the first hard Figure 1: After booting from the installation DVD, you have a large
Getting Started disk. If you are sure selection of options. Take time to get to know the system before you
First, place the DVD included with this issue in that you want to in- load it onto your hard disk.
your DVD drive and reboot. If all goes well, stall Ubuntu on your
the boot menu shown in Figure 1 will appear hard disk, select Install Ubuntu. technical in nature. The first thing you need to
on your screen. If you don’t see the boot menu, do is specify your preferred desktop language
make sure your BIOS is configured to start the Step by Step and locale.
system from the DVD drive. (See the box titled Most of the prompts from the Ubuntu installer In the next dialog, you need to tell Ubuntu
“Boot Order.”) are just informational and are not necessarily the time zone in which your computer resides.
To set up your clock correctly, choose a city in
Boot Order the list that shares the same time zone as your
machine.
The BIOS (Basic Input/Output System) de- do so, enter the BIOS menu by pressing
The keyboard layout dialog follows. The sys-
cides which drive to use to load the oper- the necessary key (e.g., F2 or Del) when
ating system. you power the system on. (The correct key tem will suggest a keyboard layout that reflects
will depend on your flavor of BIOS. See your choice of language, and it will assume a
If your system doesn’t boot to the DVD by
default, watch for the message displayed the vendor documentation for your moth- standard PC keyboard. If needed, variants such
when you power on, telling you now to erboard. Instructions for reaching the boot as Macintosh keyboards or keyboards with no
change the boot order. Look for something menu often appear in the screen mes- Dead Keys are available; the latter does not un-
like Press X for boot manager, where X sages when you power your system on.) derstand accents or non-standard characters.
represents a key (often the F8 key). In the BIOS menu, look for an item labeled In the input box, you can test your choice of
If your BIOS doesn’t have a boot manager, Boot. Set the options so that the DVD drive keyboard.
you need to change the order manually. To has a higher priority than the hard disk. The next step lets you choose the hard disk
partition on which to install Ubuntu (Figure 2).
Figure 2: In the partitioning phase, you specify the hard disk area in Figure 3: Carefully check the overview before you install your new
which you will be installing Ubuntu. You also get to decide how operating system. Any pre-existing data on the partition to which
much of the disk to use for Ubuntu. you are installing will be lost.
A partition is a section of the hard disk that is from existing Windows and Linux systems on details carefully; once you confirm, the instal-
treated as a single entity by the filesystem. If the hard disk. If you have multiple user ac- lation will start.
the disk is empty, or if you don’t care about counts, select the accounts you want to import,
losing the data and operating systems currently then select the information you want to import. Let the Games Begin
residing on your disk, choose the Use entire The wizard will import bookmarks from Firefox After the installation, you should remove the
disk option to use the whole disk for your and Internet Explorer, along with the wallpaper DVD from the drive, shut down the system,
Ubuntu installation. and files from the My Files directory structure and press Enter to boot your new Ubuntu sys-
The installer is capable of setting up Ubuntu on a Windows system. Note that this will only tem for the first time. The computer will load
to dual-boot with an existing Windows or work if you retain the Windows system on your Ubuntu and present a login window in which
Linux installation. In this case, you will need to disk! you can type your username and password
install Ubuntu on a separate partition. All data Finally, the installer asks you for your name, (unless you enabled the Automatic Login op-
on the partition you use to install Ubuntu will username, and password. To make life more tion earlier).
be lost. Select Specify partitions manually to difficult for potential attackers, the password After you log in, it is a good idea to upgrade
resize, delete, and create partitions. As you can should contain at least eight characters, some your system with any recent bug fixes or secu-
see in Figure 2, this manual configuration op- of which should be numbers and letters. The rity updates that have appeared since this DVD
tion is considered an advanced skill. For addi- system also suggests the hostname, which is was published. New packages are installed
tional background on how to configure parti- used to talk to the machine on the local net- over the Internet, so you’ll need to have a
tions, see the Ubuntu website [5]. Also, don’t work. To finish this part of your installation, working Internet connection to download and
forget to back up any important files on the you can enable the Automatic login option if install the latest packages.
previous system. you want to log in without entering a password To update your system, select System | Ad-
when you boot the machine. ministration | Update Manager to launch the
Migrants Welcome! Before the installation starts, the installer Update Manager. For more on installing soft-
After you decide on a partition configuration, shows you an overview of your configuration ware packages in Ubuntu, see the article on
the installer offers to parse settings and files choices (Figure 3). Just make sure to read the managing packages. ■
Exploring the
Desktop
Make yourself at home on the Ubuntu desktop.
BY CARSTEN SCHNOBER
Figure 3: Before you can start working, you need to log in.
www.linux-magazine.com/JustAsk
Exploring the Desktop
Figure 4: The Gnome menu lets you install and remove new programs at the click Figure 7: Customizing the Ubuntu panel is done from
of a mouse. the Add to Panel dialog box.
The entries in this menu item let you update Privileges tab lets you modify the details of a charge status. Clicking your name lets you log
your software collection by calling the Synap- user’s account. off, shutdown, or restart the computer. Also,
tic package manager, install proprietary drivers you can switch to another user account with-
(Hardware Drivers), and check your hardware Panels out quitting the current session. A Guest ses-
(System Monitor or Network Tools). The USB Next to the menus, you will see launchers for sion is useful for one-off users because it de-
Startup Disk Creator allows you to install the Firefox web browser, the Evolution email letes any files the guests create in their home
Ubuntu on a USB stick. This option lets you and calendaring application, and the help sys- directory when they log off again.
carry a bootable Ubuntu system, including tem. By right-clicking and selecting Remove At the bottom edge of the screen is another
your files, wherever you go. from panel, you can remove these icons from panel that you can customize to suit your own
Although the system regularly checks for up- the panel. If you prefer a different email pro- needs. By default, it shows you all the program
dates on its own, the Update Manager allows gram, you can add the icon for your own mail windows that are currently open. Clicking on
you to check manually for system updates. If it client, instead of Evolution, by right-clicking a an icon for a window moves the window to the
finds any in automatic mode, it displays a mes- free space in the panel, selecting Add to Panel, foreground. The button on the bottom left
sage in the panel at the top of the screen. and in the dialog that then appears, selecting iconizes all the active windows; the button in
Clicking the icon takes you to a window in Application Launcher (Figure 7). Now you can the bottom right is for the trash can, where any
which you can automatically install the latest locate the program in the menu structure. files you delete are temporarily stored until you
versions of your choice of software. The desktop provides several panel applets empty the trash.
When you create a user account in System | that let you monitor system activity, integrate Next to the trash can in the bottom panel is
Administration | Users and Groups, you can set new functions, or just have fun. For example, the pager, which is a feature that lets you open
a Profile for each user – for example, Adminis- you can add a Fish that will swim around on any number of independent screens and switch
trator, Desktop user, or Unprivileged (Figure your desktop, make notes of events on yellow back and forth between them by clicking the
6). Administrators are allowed to change sys- Sticky notes, or check the Weather report. boxes. This setup is a useful way of separating
tem settings, whereas Desktop users are not. Applets are preconfigured panel elements tasks, in that you can access a fresh workspace
Unprivileged users are given a fairly restricted that appear top right on your screen; they will without closing the windows on the current
workspace that even prevents access to exter- differ slightly depending on your system. Be- desktop. If the default of two workspaces is not
nal media and multimedia devices. The User sides the clock, you will see the network man- sufficient, right-click the pager, select Prefer-
ager, and, if you have a laptop, the battery ences, and enter the number of Columns and
Rows under the Workspaces field.
Newbie-Friendly
Ubuntu and the Gnome desktop offer a flexi-
ble, versatile working environment for begin-
ners and advanced users. Other articles in this
Discovery Guide provide a closer look at
some tools of the Ubuntu environment. ■
Info
[1] Gnome: http://www.gnome.org
[2] KDE: http://www.kde.org
[3] Xfce: http://www.xfce.org
[4] Kubuntu: http://www.kubuntu.org
Figure 5: Choose Connect to Server in the
[5] Xubuntu: http://www.xubuntu.org
Places menu to access an Internet server. Figure 6: Setting privileges for a new user.
Networking
Ubuntu will connect automatically if your
network uses DHCP. Configuring a static
connection takes a little more time. If
you’re going wireless, you might need to
install a driver.
BY KRISTIAN KISSLING AND MARCEL HILZINGER
Tip
To manually request a DHCP address
from the DHCP server, open a terminal
and type sudo dhclient (Figure 2). The
server will then assign you a new IP ad-
dress. This option is useful if the Net-
work Manager isn’t running or isn’t co-
Figure 1: The ifconfig command provides a summary of network configuration information.
operating.
The HWaddr setting refers to the MAC address.
Figure 2: The dhclient lets you manually request a private IP address from the Figure 4: The Network Tools application provides a GUI
DHCP server. interface for classic Unix network utilities.
and select Edit Connections. In the network nection Information for a summary of network such as 80.237.227.149 for Linux Magazine
connections window, click on the Wired tab settings. Online.
and press the Add button. Start by typing a If you can’t access the Internet, start by ping- If the website responds to the ping, the prob-
name for the connection (say, static), then go to ing the router and its gateway address: lem might be due to DNS name resolution
the IPv4 Settings tab (Figure 3) and select the rather than IP networking. Try pinging the same
Manual entry in the drop-down menu. Now ping 10.0.2.2 address by its domain name:
click Add and type a static IP address for the
computer (10.0.2.253 in Figure 3), followed by (Type Ctrl+C to stop the output and return to ping www.linux-magazine.com
the netmask (255.255.255.0) and the gateway the command prompt.) If this does not work,
(i.e., router) address (10.0.2.2). Because the the router might not be working or the cable If you can reach the address by its IP address
router on a small network typically is also the between the router and your computer might but not by its domain name, the problem is
DNS server, the server address in Figure 3 is be damaged. Also, you can ping the “loopback probably with DNS.
also 10.0.2.2. Clicking Apply saves the address” 127.0.0.1, which gives an indication
changes. To enable the new settings, left-click of whether your networking software is suc- Network Tools
the Network Manager icon and select the static cessfully connected to your the networking Ubuntu provides a number of classic Unix/
connection. hardware. Linux configuration and troubleshooting utili-
If your connection to the router is working, ties via a convenient GUI interface. To reach
Network Problems you can try pinging an IP address that you are the Network Tools application, select System |
The ifconfig command provides a summary of familiar with of a website beyond the router, Administration | Network Tools (Figure 4).
the IP configuration. Also, you can right-click
the Network Manager icon and choose Con-
Adding a Static Address Manually
Of course, Linux wouldn’t be Linux if you couldn’t delve deeper and add the IP address
manually to the /etc/network/interfaces file. To start, stop the existing network by typing
sudo /etc/init.d/networking stop. Then press Alt+F2 and type gksu gedit to launch the
Gedit editor with administrative privileges. Add the parameters from the Static IP box to
the /etc/network/interfaces file:
auto eth0
address 10.0.2.253
netmask 255.255.255.0
gateway 10.0.2.2
The first two lines auto-enable the network interface (auto eth0) and tell the computer to
set up a static IP address (static). If the computer has multiple network adapters, you
need to specify the name of the adapter (eth1, eth2, etc.). The third line specifies the value
for the static IP address. The fourth line contains the subnet mask (255.255.255.0), and the
last line contains your router’s gateway address, which you discovered previously. Now
save the file and then open the /etc/resolv.conf file. This file is very important because it
contains the address of the name server that converts IP addresses to domain names.
Next, add the line nameserver 10.0.2.2, save the file, then type sudo /etc/init.d/networking
start to restart the network. When you type /sbin/ifconfig in the terminal window, you
Figure 3: Setting up a network connection should see your static IP address.
with a static IP address.
Info
[1] Ubuntu wiki:
https://help.ubuntu.com/community
[2] Ralink drivers for Draft N cards:
http://www.ralinktech.com/ralink/
Home/Support/Linux.html
Figure 8: From the system log, you can discover the name of the driver for your WLAN card. Table 1 gives you an overview of well-sup-
ported USB sticks. Note that the manufacturers
However, these drivers have not (yet) been in- pliance with your local requirements. (If you frequently change the hardware without re-
tegrated with the kernel, so you need to install chose a different driver from the Ralink home- naming the models.
them manually. page, replace RT2870STA with the name asso-
Unlike the official Linux kernel, Ubuntu ciated with your driver.) Legacy Burdens
supports WLAN cards and USB sticks with the Take care of the following entries Normally, Network Manager provides the easi-
RT2860 and RT2870 chipsets. If you have a de- est approach to setting up a WLAN device.
vice with an RT3070 chipset, you need to CountryRegion=0 However, Network Manager does not support
build the Linux drivers manually. CountryRegionABand=2 certain legacy WLAN sticks and cards. If Net-
To build the drivers, start by using the Synap- CountryCode=US work Manager is not cooperating, Ubuntu of-
tic package manager to install the linux-head- WirelessMode=5 fers a manual configuration option. Start by
ers-kernelversion and build-essential packages. clicking on the Network Manager icon and se-
(Replace kernelversion with your kernel ver- and see the README_STA file for a detailed lecting Edit Connections. Now go to the Wire-
sion.) After downloading the drivers from the description of the configuration. less tab, select the first entry, and click Edit to
Ralink homepage [2], right-click the archive in Now reboot your machine and check to see change the settings. In the new dialog box, first
the file manager to unpack in your home direc- whether the driver is working by first typing choose the Wireless tab, then uncheck Con-
tory. The archive includes a README_STA file; iwconfig in a terminal (Figure 9) and then typ- nect automatically and enter the required pa-
the Build Instructions section describes how to ing iwlist chan. In the final section of rameters.
modify the config.mk file in your favorite editor README_STA, you will find out how to load
before compiling the software. In order for the the module automatically when you boot your Conclusions
driver to cooperate with the Network Manager, machine. Once you have taken the time to set up the
the config.mk file, which is found in the subdi- If you have a USB stick with a chipset that adapter, opening a WLAN connection be-
rectory os/linux/config.mk, must contain the the driver does not know, you will need to comes easy. If you often work at different loca-
following lines: enter the USB ID in a file. First, launch an edi- tions, Network Manager remembers individual
tor and open the os/linux/usb_main_dev.c file connections and logs in automatically wher-
HAS_WPA_SUPPLICANT=y in the directory with the downloaded driver. ever possible. ■
HAS_NATIVE_WPA_SUPPLICANT_U Now you need to
SUPPORT=y scroll down to about
line 100, where the
After adding (or editing) these lines, change to list begins for the
the driver directory with Makefile, and type supported sticks and
make. This command will build the module, matching USB manu-
which could take up to 30 minutes depending facturers and device
on your CPU. The sudo make install command IDs. This is where you
then installs the module. enter your stick’s ID.
If this process completes without errors To discover your
(warnings are okay and can be ignored), the stick’s ID, plug in the
driver should work. Copy the file RT2870STA. stick and type lsusb
dat in the source directory to the /etc/Wireless/ in a terminal. After
RT2870STA directory. Again using a text editor completing these
and armed with administrative privileges changes, build the
(Alt+F2 and gksu gedit), you should now edit driver by typing make
the /etc/Wireless/RT2870STA/RT2870STA.dat and sudo make in- Figure 9: The iwconfig command displays information on wireless
file to modify the transmission range for com- stall. connections.
Safety First
Linux is a very secure system, but it still pays to be cautious.
BY ACHIM LEITNER AND CARSTEN SCHNOBER
Security is one reason many users switch to lete every file, remove every directory, and cre-
Linux from Windows. With the rising impor- ate new directories wherever you want.
tance of computers in daily life, more and
more private data are stored on desktop sys- Risky Business
tems. The hunt for bank account access keys Windows users who do their daily work as Ad-
has become big business, and many users also ministrator to avoid annoying privilege restric-
store private messages, business plans, and tions are taking a serious security risk. This
other sensitive information on home PCs. warning also applies to the root user account
A fresh installation of Ubuntu is much less in Linux. The root account should only be used
vulnerable than a comparable Windows sys- for administrative work when it is required.
tem. Spyware, trojans, viruses, and other attack Even if you are charged with the task of admin- new software, or adding or removing software,
vectors have not settled in the world of Linux istering the computer and are given the root Ubuntu asks for the user’s normal password.
as they have with other systems, but it is im- password, you should still give yourself an or- In one sense, this approach has the effect of
portant to understand some basic security if dinary user account for daily user tasks. reducing security for greater convenience be-
you want to keep your Linux system safe. The traditional way to use the root account cause an intruder only needs to know your
is to work as a normal user and, when neces- user password to gain full access to the system.
Linux Security Basics sary, switch to root during single administrative Therefore, it is especially important that every
Every discussion of computer administration actions. Ubuntu further reduces the temptation person using the computer has a separate ac-
revolves around finding the balance between to permanently work with superuser privileges count. On the other hand, this approach forces
convenience and security. If you’re careful, you by completely deactivating the root account by the intruder to guess both a username and a
can have a system that is both convenient and default. That means you will be able neither to password, whereas the classic root account al-
secure. The best approach is to let each user do log in as root nor to switch to the root account ways has the same name: root.
what is needed, and nothing more. during your session.
This basic idea is most obvious in the mul- Managing Users
tiuser system, which includes Linux and recent Sudo When you create a new account, you can
Windows and Mac OS systems. Every user Of course, Ubuntu does not bar you from per- choose whether the new user is a normal desk-
stores documents, email, and other personal forming administrative tasks. Instead, the user top user or an administrator who is qualified to
data in a private area. In Linux, this area is account created during installation can gain perform system configuration tasks.
known as the user’s home folder. If a user acci- superuser privileges with the command-line To create a new user, open the Users and
dentally chooses something like Delete all, program sudo. Groups dialog from System | Administration to
other users’ data are not affected. The operat- An advantages of sudo is that you do not see a list of existing users. First, click the Un-
ing system itself is in a place where an individ- have to remember another password. Before lock button and enter your password; if you
ual user can’t delete or edit the files. an administrator can execute an operation that have administrative rights, you may now add
Not only are misbehaving users dangerous, requires privileged permissions, such as chang- and delete users and manage groups.
but malfunctioning software or an outside in- ing network settings, setting the time, installing If you choose Add User, a New User dialog
truder who has breached security can cause (Figure 1) pops up. In the Account tab, enter
considerable damage.
Root
Users can take care of their daily work with-
out the need for write access to critical system
files. Sooner or later, though, you’ll need to
make changes to the system. For instance,
new software or hardware might require
changes to the system configuration.
Every operating system has a special user
account with the elevated privileges needed
to change the system; in Linux, this special ac-
count is called root. The root account, which
is also sometimes called the superuser ac-
count, corresponds to what Windows users
call the Administrator account.
When you log into a Linux system as the
root user, you are allowed to do virtually ev- Figure 2: Use the Permissions tab to set file
erything: You may read every document, de- Figure 1: Adding a new user account. permissions.
checkbox in the user proper- For normal files, the first position is a dash;
ties. otherwise, d points to a directory. Device files
and other special files show c, for example.
Read, Write, and The nine symbols that follow relate to permis-
Execute sions. These symbols are interpreted in three
User permissions are imple- sections of three letters each. The first section
mented as a system of access refers to the file owner, the next to the group,
levels. This even applies to and the last three to the remaining users. Each
the access control on hard- of these nine positions can show either a dash
ware devices because Linux or one of the letters r (readable), w (writable),
manages these devices or x (executable).
through special files residing
in the /dev directory. Viruses in Linux
File permissions are di- Theoretically, viruses could threaten Linux, but
vided into three sections that in practical terms, this hardly ever happens.
specify what the owner, the The reasons are mainly rooted in the technol-
Figure 3: Make sure you know how your mail client is process- members of the owner ogy. To propagate, the virus needs to affect
ing HTML email. group, and all other users are other programs it locates on the filesystem.
allowed to do with the file. Older Windows versions give viruses a free
the Username, Real name, and optional Con- The basic access categories are read, write, hand, whereas Linux slams the door shut. As
tact Information (e.g., telephone numbers). and execute. long as the program has a normal user ac-
In the Password section, you can either enter When you right-click on any file in the file count, rather than one with root privileges, it is
a temporary password yourself or make the browser and choose Properties, the Permis- not permitted to overwrite other program files,
system generate one. The new user is expected sions tab provides a view of access permissions leaving the virus without a propagation vector.
to change the password after the first login. (Figure 2). The upper section shows the file On top of this, Linux users rarely send each
owner and the owner’s access level: Read and other pre-compiled binaries. Because any soft-
Granting Rights write, Read-only, or None. Execution permis- ware you need is available for free, users are
In the Profile drop-down list, you can grant sions are handled separately with the check- more likely to obtain the program from a web-
rights according to three levels of access. If you box labeled Allow executing file as program. site or distribution DVD.
choose Administrator, the new user is allowed Whether you are able to change these settings Several vendors provide virus scanners for
to gain superuser privileges and thereby can depends on your access permissions. Linux [1], but the primary purpose of these
operate on the system without limits; other- tools is to protect email messages or files on
wise, choose Desktop user. This lets the new Directories file servers that might one day find their way to
user work in a home folder and gives full ac- Directories are handled like files except for ex- a Windows system.
cess to external media but forbids tasks that re- ecution. (Folders can have execution access as
sult in changes to the system settings. Unprivi- well, which means that users are allowed to Email Worms
leged creates a user with minimal rights. A pos- browse the directory content.) The Properties In contrast to viruses, worms do not need a
sible use for this kind of account would be to dialog of a directory looks like that of a file, but host program but run autonomously. A typical
support users who log in via a network and with a button labeled Apply
therefore do not need access to local devices. permissions to enclosed files. If
The User Privileges tab reveals more details you click this button, the per-
about the chosen profile. Here, you’ll find a list mission settings affect files and
of specific actions, such as Administer the sys- subdirectories in this folder.
tem, Access local storage devices automati- Filesystem settings can over-
cally, or Use audio devices. All of these actions ride file permissions. Ubuntu
can be activated separately. makes use of this feature for ex-
If you choose the Administrator profile, ternal storage devices. By de-
you’ll see a check mark next to every entry. By fault, external storage devices
clicking the checkboxes, you can adjust each are mounted with the noexec
new user’s privileges individually. Be aware flag, which means that en-
that users who are allowed to administer the closed programs cannot be exe-
system can change their own permissions. cuted. This protects the system
Linux employs the concept of groups to from uncontrollable software
manage access to files and other resources. In brought in by CDs or other ex-
Unix and Linux, a group is a collection of users ternal sources.
with certain common permissions. Linux In a terminal window, the
grants different write and read permissions to command ls -l gives file permis-
the owner of the file and to the members of the sions information, showing
group. every entry in the current direc-
In the User Settings main window, the Man- tory in a single line:
age Groups button shows a list of all groups in
your system. Double-click an entry to see the -rw-r--r-- 1 carsten U
group’s current members. If you want, you can users 43142 2008-04-28 U
add users to the group manually, which has 20:17 data.txt Figure 4: The Update Manager helps you keep your system
the same effect as activating the corresponding up to date.
email worm sends itself to all the contacts in parts: One contains an HTML version, and the
an address book. However, it only causes dam- other contains pure text. If you prefer HTML,
age to the receiving machine if the recipient select Show HTML if present.
carelessly opens the attachment or if the worm HTML email also provides the possibility of
can exploit a vulnerability in the mailer. embedding direct links to Internet images. Be-
HTML-based email is also a risk. Many cause it is generally better not to load files
email clients ignore HTML attachments or de- from the Internet unless you know what they
ploy secure program modules to display HTML are, the default setting is Never load images
code. Be sure you know how your web from the Internet. If you indeed want to see
browser treats HTML-based email. In Linux – images from a known secure source, change
just as in any other operating system – don’t this option in the HTML preferences to Load
open attachments with untrusted messages images in messages from contacts or even to
and, above all, never launch any programs sent Always load images from the Internet.
to you unexpectedly. Your own mail is written in plain text by de-
fault. For HTML, go to the Composer Prefer-
Evolution ences section in the Preferences window. To Figure 5: The ufw firewall configuration util-
Ubuntu’s default mailer Evolution does display enable HTML formatting, activate the check- ity is useful if you are comfortable at the
HTML mail by default. If you prefer to avoid box next to Format messages in HTML. Alter- command line.
this, use Edit | Preferences. In the Mail Prefer- natively, you can enable it for a specific mes-
ences section, you will find the HTML Mes- sage in the composing window. allow data packets to pass if they comply with
sages tab (Figure 3). When you are writing a message, the Format specific criteria. A firewall can only give you
In the Plain Text Mode section, you can dis- menu provides the option HTML, which you limited protection: If you permit a connection,
able HTML by choosing Only ever show can check or uncheck depending on current you are leaving it up to the client and server
PLAIN. Some email messages consist of two needs. Be aware that the receiver’s mail soft- programs to defend themselves. In other
ware also has to be able to display HTML, so if words, the best protection is to install and
in doubt, you should stay with plain text. launch only those services you really need.
Secure Passwords In addition to server programs, which must
Even Linux is powerless if users inadver- Don’t Forget to Update be available to outside access and, therefore,
tently or negligently endanger its secu- When a vulnerability is discovered, the correct are vulnerable to attack, some client programs
rity. Passwords play a key role in the se-
response is to fix the program, preferably by are also endangered. A client application theo-
curity of a system. If you want a safe sys-
updating the vulnerable program package. The retically opens itself up to attacks by servers.
tem, don’t use passwords that are easy
Ubuntu Update Manager automatically locates For example, a web browser surfing the web
to guess. Using a friend’s birthday or
patches for installed packages. exposes itself to the dangers of spoofing or
your pet’s name is definitely not a good
idea. An attacker who is looking to break Vulnerabilities in server programs are partic- phishing attacks.
passwords will deploy programs to au- ularly critical. The server just waits for a client As a protection against outside attack,
tomate the guesswork. These programs to connect, and, of course, an attacker who Ubuntu installs no server software in the de-
use comprehensive dictionaries in multi- gets inside can hitch up a server to the Internet fault configuration. However, many users
ple languages and possess rules on how and wait for victims. In fact, an attacker doesn’t might want to explore the possibility of run-
to compile words and replace letters even need to know a victim’s address: The in- ning network services in Ubuntu.
with figures or nonstandard characters. truder can simply search large sections of the If you are looking for some additional con-
To make the guesswork as difficult as network looking for low-hanging fruit. What trol, Ubuntu 9.04 comes with a firewall config-
possible, a password should not be too makes this even worse is that servers often run uration tool called Uncomplicated Firewall
short. Unix and Linux systems often de- with root privileges – following an attack, the (ufw). To configure ufw at the command line,
mand eight-character passwords. These attacker assumes the privileges of the victim, enter the command sudo ufw followed by
length restrictions are no longer valid for thus controlling the whole computer. some arguments. The prepending of sudo is
systems that use MD5-based password By default, Ubuntu checks for available up- necessary because controlling network traffic
encryption techniques. dates every day. Ubuntu will indicate the pres- requires administrator privileges. Complete
The number of different characters is ence of a new software package for your sys- documentation for ufw can be found on the
particularly important: A mixture of up- tem with a message and put the Update Man- Ubuntu wiki [2].
percase and lowercase letters, numbers, ager icon into the upper panel.
and nonstandard characters, such as # < If you left-click the icon, the Update Man- Solid Security
> _ = ( ), makes a password more effec- ager window opens (Figure 4). Different update Linux does a good job of protecting itself
tive. types might be available; when security up- against attackers, but you need to be careful
Despite all the versatility and random- dates are listed, you should install them. and always install the updates. Although a little
ness, a user needs to be able to remem- Recommended updates usually fix bugs in attention is warranted, the natural defenses of
ber the password. Mnemonic aids can applications that could cause application Linux are extremely successful at keeping in-
help, but they have to be just as secret crashes but are not considered to be related to truders away. ■
as the password itself. Also of impor- security.
tance is that each password be used for After you click on the Install Updates button,
one task only. For example, you should
Info
the system asks for your password then down-
never use your login password for a web [1] ClamAV open source antivirus tool:
loads and installs the updates.
forum as your password for the root ac- http://www.clamav.org
count on another computer. And you Firewalls [2] Uncomplicated Firewall documenta-
should change your password at regular tion: https://wiki.ubuntu.com/
Many networks deploy firewalls to protect
intervals. UbuntuFirewall
against outside attack (Figure 5). Firewalls only
Printing
Before you set up a printer on Ubuntu, take
a moment to learn about the Linux printing
system. BY KRISTIAN KISSLING
Figure 1: The Ubuntu printer dialog will automatically locate printers Figure 3: PostScript is a human-readable page description language
on your network or directly attached to your computer. for printers.
Multimedia
Codecs
To experience the full spectrum of multimedia
file formats available online, you might need
to install some codecs. BY TIM SCHÜRMANN
Onion Skins
File formats from the world of
Windows, typically with suffixes
such as .avi, .wmv, or .asf, are re-
ally just containers for the video
and audio data. In fact, you can’t
tell whether the file contains an
MPEG4 video or a file in the de-
funct Indeo format. Incidentally,
the same thing applies to Quick-
Time files (.mov suffix), as pro-
duced by Apple computers.
When Totem finds an unrecog-
nizable file format, it will usually
search for a matching GStreamer
plugin before installing the corre-
sponding Ubuntu packages (Fig-
Figure 1: Manage your sounds with the Rythmbox music player. ure 3). Totem and Rhythmbox
Dangerous Liaisons
If you want to view commercial DVDs on
Linux, you currently need a special li-
brary (libdvdcss2) which removes the
CSS (Content Scrambling System) pro-
tection. In many countries of the world,
the use of copy protection removal sys-
tems is illegal and could constitute a
copyright offense. The only legal way to
play CSS-protected disks right now is
LinDVD by Corel [1], which costs around
EUR 40.
Besides the copy protection issues, there
are a number of unresolved patenting is-
sues, relating first and foremost to com-
pression methods such as MPEG2, or
MP3, a format popular with music lov-
Figure 2: Play videos with Totem. ers. The players and libraries were devel-
oped without the explicit approval of the
(which also relies on GStreamer) need to install follow the steps outlined just now. In that case, patent and/or license owners, and they
the packages gstreamer0.10-plugins-ugly and you can retrieve the required codecs from an are thus on uncertain ground from a
gstreamer0.10-ffmpeg to play MP3 files. existing Windows installation, although this legal point of view. Therefore, you have
To avoid these questions in the future, you can be tantamount to the labors of Sisyphus. to install the packages manually – and at
can apply a liberal dose of plugins by telling Fortunately, the external Medibuntu repository your own risk.
Synaptic to install the ubuntu-restricted-extras offers a package that bundles the major Win-
package. (This helps Ubuntu fetch numerous, dows codecs. To load the package, go to Sys-
frequently needed plugins for tools, such as tem | Administration | Software Sources, click Pitfdll – do not work properly on Ubuntu 9.04
Sun Java, or various Windows fonts, which can the Third-party software tab, and then click as of this writing.
be quite bulky.) Add. Now type the following, slightly cryptic To work around the problem, you can install
A package called gstreamer0.10-plugins- line in the input box an alternative version of Totem that uses the
ugly includes codecs for files with some legal Xine media player library instead of GStreamer.
restrictions. Many file formats are subject to deb http://packages.U To do so, launch Synaptic, search for the to-
patents and licenses (for more information on medibuntu.org/ jaunty U tem-xine package, and install the package.
this issue, see the “Dangerous Liaisons” box). free non-free Now you have two versions of Totem on your
To identify plugins with a dubious legal status, disk.
the developers called them just plain ugly. If to add the software package source (pay atten- The main menu will still take you to the
Totem offers to install an “ugly” package, you tion to the spaces in this command line). When GStreamer version, so to launch a movie with
have to decide whether to install it and thus you leave the window by clicking Close, you the Xine version, go to Applications | Accesso-
enter the legal gray zone. are taken to the main window, where you can ries | Terminal, type totem-xine&, and press
click on Reload. This action tells Ubuntu to Enter. The video player does not look any dif-
Multimedia with Medibuntu pick up a list of available Medibuntu packages ferent, but if you check Help | Xine, you will
Some exotic file formats from the world of off the Internet. If you are warned about miss- see that a different engine is under the hood.
Windows remain closed to Ubuntu even if you ing signatures, just click Close and try again a To play a video file directly with Totem Xine,
couple of minutes later. right-click the file, select Open with other ap-
When you are done, you plication, and then select Video Player (Xine)
need to install the w32co- from the list. ■
decs package.
Fluendo GStreamer Plugins
The Pitfdll
Dilemma Fluendo [2] has licensed GStreamer
plugins for sale on its website. In addi-
Sad to say, this is not the
tion to the MP3 codec, you will find eve-
end of the story: You also
rything you need to play Windows
need Totem support for
media files (WMV, WMA, ASF) and
Windows codecs. The
MPEG2 videos, although a full set of co-
Pitfdll plugin was devel-
decs costs EUR 28.
oped for GStreamer as a
kind of adapter that runs
the Windows codecs on Info
Linux. Synaptic calls the
[1] LinDVD player:
package gstreamer0.10-
http://www.intervideo.com/jsp/
pitfdll. Unfortunately, in-
Product_Profile.jsp?p=LinDVD
Figure 3: After a short pause for thought, GStreamer-based stalling it will not get you
programs like Totem and Rhythmbox offer to install any miss- very far: The gang of three – [2] Commercial GStreamer plugins:
ing codecs. Totem, GStreamer, and http://www.fluendo.com/
Burning CDs
and DVDs
Burn your own CDs and DVDs with
Brasero. BY MATTHEW SACKS
Burning MP3s
Brasero allows the user to drag and drop MP3s
and most other audio file formats into a project
to be burned to an audio CD for play in any shows the progress of the burn as the audio for Disc Insertion dialog disappears once a
standard CD/DVD player. The quality of the files write to disc. valid blank disc is inserted into the drive tray
blank CD/DVDs you use can have a great ef- and the tray is closed. As soon as the disc is fin-
fect on the system’s ability to make a good Disc Copying ished copying, a message will display CD suc-
burn – so try to avoid the discount blanks. Brasero has a disc copy feature that is useful cessfully copied. To view the contents of the
To begin creating an audio CD, click on the when exact copies of the same disc are CD or DVD, you need to remount it by simply
Audio Project button in the main Brasero menu needed, whether it is a data disc, a DVD opening and closing the drive tray.
or click on Project | New Project | New Audio movie, or an audio CD. Because Brasero stores To make copies of DVD movies (legal cop-
project. Now drag the desired MP3 (or other a temporary image of your CD or DVD on the ies, of course), you need libdvdcss2 [2]. This li-
supported audio format) to the main window local hard disk and then prompts you to insert brary can be installed in Ubuntu by opening a
or click the Add button and locate the audio a blank CD, just one drive is necessary. terminal window and typing sudo /usr/share/
files on the local hard drive (see Figure 2). At To copy a disc, insert the source disc and doc/libdvdread3/install-css.sh. Totem, Ubun-
the bottom of the application you will see how have a blank CD/DVD handy. After clicking on tu’s default video player, also requires the lib-
much space the added files consume. Disc Copy, select a source drive to copy from dvdcss2 library to play DVD movies.
In the Name text field, you need to enter the and a destination drive to write to (Figure 3),
title before you click Burn. A Disc Burning then click the Copy button. A status bar indi- Burning a Disc Image from an
Setup dialog box appears, prompting you to cates its progress. The program opens the disc ISO
use the burning device. To begin burning the tray and displays a dialog box prompting the Brasero supports burning from an ISO image
audio project, click Burn again. A status bar user to insert a blank CD or DVD. The Waiting [3] to a CD or DVD. Disc images are a conve-
Figure 1: Starting the Brasero application. Figure 2: Adding music to an audio disc project.
Now select the drive to use for writing the speed, use the Properties button (Figure 5).
image to disc and click on Click here to select When finished, click OK and then Burn again.
an image to locate the image on the local hard The progress bar will show the status of the
drive. The Select Image File dialog box will ap- burn. Unless you have changed the corre-
pear. Here, select the ISO image to be burned sponding option, the disc should automatically
to disc, click Open, then click Burn. Brasero eject from the tray once the burn is complete.
creates an image checksum and shows the
Figure 3: The CD/DVD Copy Options dialog. progress of the image as it is burned to disc. If Conclusion
Brasero throws errors, try lowering the burn Brasero makes the process of burning CDs and
nient way to transport the contents of CDs and speed and then re-burning. DVDs extremely simple. The plugin capability
DVDs acquired from the Internet. For example, of Brasero offers a means for integrating addi-
you could download the latest copy of a new Creating a Data Disc tional features. ■
operating system, such as Ubuntu, and burn it Brasero easily allows the user to create data
to a disc, or you could transfer audio files as an discs to back up and transport files. Creating a
image and burn a copy to a physical disc for data disc in Brasero is simple. Click on the
use in a DVD player. New Data Project button or click on Project |
In the main Brasero menu, click on the Burn New Project | New Data Project. Now add
Image button or click Project | New Project | your documents to the Files pane and click the
Burn Image. The Image Burning Setup dialog Burn button in the bottom right-hand corner.
box will appear (Figure 4). The Disc Burning Setup dialog box will ap-
pear. To change properties, like the burning
Info
[1] Brasero: http://www.gnome.org/
projects/brasero/
[2] libdvdcss2: http://en.wikipedia.org/
wiki/Libdvdcss
[3] ISO image: http://en.wikipedia.org/
wiki/ISO_disk_image Figure 5: In the Properties of CD-ROM box,
Figure 4: Burning a disc image. define the burning speed and other options.
S C R I B E N O W!
SUB r for only
yea
4 issues per
E U R 2 9 .9 0 / US$ 39.95
£ 24.90 /
www.ubuntu-user.com
DISCOVERY GUIDE
F-Spot Image Manager
Managing Photos
Chaos is inevitable when your hard disk fills up
with digital photos. The F-Spot image manage-
ment program helps you manage your photo
archives. BY MATTHIAS WARKUS
Info
[1] F-Spot homepage: http://f-spot.org/
[2] Mono download: http://www.
mono-project.com/Downloads
[3] Flickr: http://www.flickr.com/
Figure 1: F-Spot shows an overview of stored images.
Installing Software
Ubuntu lets you install and manage software at the click of a
mouse. BY JAMES MOHR
Thousands of open source software applica- two commands with a utility called
tions are available for Linux systems, and be- apt-get.
cause these tools are mostly free, the software In this article, I look briefly at
usually isn’t distributed in shrink-wrapped managing packages with Synaptic
boxes. A Linux user who wants a program sim- and apt-get, but you’ll have to de-
ply downloads it. In the old days, this meant cide for yourself which applications
finding and compiling the source code. Some to install. The economies of open
Linux users still like to work with source code, source don’t leave room for a lot of
and in some cases, your only choice might be vendor advertising. Most Linux
to compile the program yourself. However, users find interesting tools by word of mouth. Often, some of the package have to be down-
most users install software with package sys- You might learn of a promising application in loaded. Synaptic can find the necessary pack-
tems. A package system is a collection of tools an online forum or from a magazine like this. If ages in different repositories and servers on the
and services that lets you download and install the app is available as an Ubuntu package, a Internet. When you click Apply, Synaptic
an application in just a few mouse clicks. user can quickly add it to the system with the downloads the files and performs the installa-
Major Linux vendors make packages avail- use of Ubuntu’s package management tools. tion, including creating directories and copy-
able in large online repositories. A program on ing the files to the appropriate locations.
the client computer simply calls for a package Installing Software
in the repository, and the installation occurs The Synaptic package manager is a graphic
nearly automatically. Best of all, the package tool for installing, updating, and managing
system also resolves dependencies associated software packages. To start, select System | Ad-
with the application. A dependency is a back- ministration | Synaptic Package Manager, then
ground application or component that must be enter your administrator password.
present for the program to run. For instance, an The Synaptic main window (Figure 1) is
application might require the correct version of where you tell Synaptic to display packages by
a specific Linux library. A good package system subject, status (installed or not), or origin
installs all the necessary background software (which repository). Also, you can define your
along with the application you want. search criteria. As shown, I have already
Ubuntu and other Debian derivatives use clicked the Sections button to display the
the Advanced Packaging Tool (APT) system. The packages in predefined groups. In this case, I
Ubuntu project has a large repository of pack- have selected the Science section because I Figure 2: Synaptic summarizes the changes
ages you can install on your Ubuntu computer. want to install the KStars planetarium program. necessary for installing an application.
Several tools can serve as a front end for ac- After I select the KStars package, a new win-
cessing these APT-based repositories. From a dow pops up showing a list of changes the sys- The time needed for installation depends on
graphic desktop, Ubuntu provides the Synaptic tem needs to make for the program to run (Fig- the number of packages, the speed of the Inter-
package manager. Working from the command ure 2). This list displays the dependencies asso- net connection, and the extent of the necessary
line, you can install a new package in one or ciated with the program; if you want to remove preparations. In this example, it took just a
a particular package, couple of minutes. When it’s done, KStars ap-
you might see a list pears under Applications | Education.
of packages you Keep in mind that Synaptic displays not only
need to remove to direct dependencies, but also the packages on
keep the system con- which these dependencies depend.
sistent. If you click Occasionally, you might not know the pack-
Mark, Synaptic will age name or even which group the package is
mark all of the in. Synaptic includes a search feature that
necessary packages helps you locate a package if you don’t know
for installation. the name. For example, you can search for a
Clicking Apply in string of characters that appear in the package
the toolbar at the top name or search by dependency or maintainer
of the Synaptic main (the person who manages the package).
window pops up a
Summary box show- Other Features
ing all of the pack- Synaptic provides a number of other interest-
ages Synaptic is to ing features. For example, you can examine the
Figure 1: The Synaptic main window. install (Figure 3). details of each package by right-clicking on it
• Universe – community-maintained
software that is not officially sup-
ported.
• Multiverse – unsupported software
under a non-free license.
Synaptic also lets you add repositories
located on the Internet or on a local
network. In Settings | Repositories, you
have a wide range of options for con-
figuring repositories. For example, you
can download only officially sup-
ported software or only community
software, or you can add personal re-
positories that others can’t access.
Figure 3: Study the list of changes before
you click Apply to begin the installation. At the Command Line Figure 4: Synaptic displays package dependencies
Sometimes users need to install soft- in the Properties dialog.
and selecting Properties (Figure 4), which ware directly from the command line,
shows several useful settings. The Dependen- such as when connecting remotely or when Debian packages also can be installed di-
cies tab is useful for troubleshooting failed in- using a system without a graphic desktop. rectly from the command line with the dpkg
stallations. Note that the final two entries in Some system administrators prefer to work at command:
Figure 4 are labeled Suggests. These packages the command line because they find it faster
are recommended but not required for the pro- and more intuitive. Ubuntu uses apt-get to in- dpkg -i PACKAGE_NAME.deb
gram to run successfully. One common exam- stall software at the terminal prompt.
ple of a suggested package is documentation To install KStars from the command line, you One disadvantage of this approach is that you
for the program. must invoke the sudo utility, which is used need to resolve the dependencies yourself, but
Synaptic also lets you track the history of with commands that require administrative this technique is sometimes useful if you are
what has been installed. To view the history, privileges. In a terminal session, enter: installing software remotely.
If a native .deb package is not available, you
sudo apt-get install kstars might find the program in an alternative Linux
package format, such as an RPM. If you want
Note that kstars needs to be lower- to install a package in a foreign or “alien” for-
case. The output in Figure 6 is simi- mat, try the alien command:
lar to what you should see.
To initiate the installation, press sudo alien -i PACKAGE_NAME.rpm
Enter. Apt-get runs through the
same steps as Synaptic. Installing If the alien utility is not present on your system,
software with apt-get is usually find and install it using the techniques de-
very easy. As you might guess, you scribed in this article.
can also use apt-get to perform
other tasks, such as uninstalling Conclusion
packages and displaying depen- To familiarize yourself with the applications
Figure 5: A view of the installation history. dencies. For more on working with available for Ubuntu, browse the Ubuntu re-
apt-get, type man apt-get to view pository – and keep surfing and reading to
select File | History, then select a specific entry, the apt-get man page. learn about new and interesting Linux tools. ■
as shown in Figure 5.
Manually
Adding Repositories Sometimes the package you want to
After you finish installing Ubuntu, the system install is not available in a reposi-
adds the installation CD to the list of reposito- tory, so you need to take an extra
ries, along with the official repository Ubuntu step to install the package “manu-
maintains on the Internet. Under the Edit menu ally.” Ubuntu uses the Debian pack-
is an entry called Add CD-ROM, which adds a age format. Debian packages typi-
CD-ROM to the system. When you select this cally have a .deb ending. If you
option, you are prompted to insert the CD, want to install a Debian package,
which is then scanned. The packages Synaptic simply double-click on the file in
finds are added to the list of known packages. the Nautilus file manager, and a
Later, when you attempt to install a package window will pop up allowing you
that is present on the CD, Synaptic will prompt to install the package. Your system
you to insert the CD. will attempt to resolve any depen-
The official Ubuntu repository is divided dencies through your configured re-
into four components: positories. If the supporting pack-
• Main – free software supported by Ubuntu. ages are not available, you will
• Restricted – Ubuntu-supported software that need to search for the missing pack- Figure 6: Installing from the command line with the
is not available under a free license. ages, which could be a tedious task. apt-get command.
Email with
Evolution
Access your email accounts, contacts, calendars, tasks, and
notes with Evolution. BY MATTHEW SACKS
The Evolution email client allows a user to ac- into Gmail and clicking
cess email accounts, contacts, calendars, tasks, Settings | Forwarding and
and notes all in a single location. Evolution POP/IMAP | Enable IMAP
mail is the de facto Linux email client bundled (or Settings | Forwarding
with Ubuntu 9.04. Simple to set up and config- and POP/IMAP | Enable
ure, it can be expanded and customized for the POP for all mail). Or you can enable both for Evolution from the IMAP account, the message
advanced user. Evolution has been developed all mail. The most difficult part of configuring also will be deleted from the email server. On
on one simple premise: simplicity without Evolution is getting the settings you need to a POP server, the message would only be de-
compromise of functionality. enter into the client that allow you to connect leted from the Evolution in box. The message
to the mail server of choice. For information would still remain on the server or be deleted
Creating Email Accounts such as SMTP servers and POP or IMAP server from the server the first time the message is
The 2.26 release, which is shipped with addresses, check the email provider’s website downloaded to Evolution. The difference be-
Ubuntu 9.04, includes intelligent spam filter- or call their tech support line. Typically, this in- tween the use of one protocol over the other
ing and supports Google Contacts. To start Evo- formation is listed on the ISP’s website. boils down to the user’s preferences and what
lution, click on the mail icon in the top left A prompt appears for identity information. the email provider supports. The general rec-
navigation menu or go to Applications| Inter- First fill in the Full Name field with the name ommendation is to use IMAP when it is avail-
net and click on Evolution mail. that will display when recipients receive mes- able.
For an unconfigured system, the welcome sages, the Email Address of the account, and, In the next dialog, Receiving Email (Figure
screen will appear. Clicking Forward advances optionally, the Reply-To address (Figure 1). 2), select the Server Type in the drop-down
to the Restore from the Backup window. If a box. In this example, the IMAP protocol is
previous Evolution archive exists that needs to POP Email Server vs. IMAP used to connect to a Gmail account. The con-
be restored, check the Restore Evolution from IMAP is chosen for the example here over POP, figuration parameters for the mail server will
the backup file box and select the archive to be although most commercial and free email pro- vary between providers. Generally, IMAP, POP,
restored. If no previous email accounts exist, viders support both platforms. Evolution allows or Exchange Server (for corporate users) will be
leave this box unchecked and click Forward. the user to access either one or both. The main used. The configuration settings should be
In this example, Gmail is the free mail ser- difference between POP and IMAP is that, with typed as follows for Gmail:
vice of choice. Gmail is just one of many email the use of IMAP, actions executed within Evo-
providers that Evolution can access to send lution also are reflected on the email server. Server Type: IMAP
and receive email. To access Gmail from Evo- For example, if the IMAP protocol is being Server: imap.gmail.com
lution, enable IMAP or POP access by logging used and the user deletes a message within Username: MyUserName
Figure 1: The Identity step in the Evolution Setup Assistant. Figure 2: Setting up email as an IMAP account.
Figure 3: Specifying options for incoming mail. Figure 4: Specifying options for outgoing mail.
Use Secure Conncetion: U MyUserName Accounts button on the left, then on the Add
SSL Encryption RememberU button on the right (Figure 5).
Password: Checked At this point, the Evolution Account Assistant
Next is the Receiving Options dialog box (Fig- appears. Before continuing on to the Receiving
ure 3). Evolution checks for new messages pe- At this point, you can continue to the Account Email window, you need to supply the infor-
riodically if you mark the Check for new mes- Management dialog box and enter the name of mation for the next window (name, email ad-
sages every n minutes box. If you mark Check your account as it should appear in the Evolu- dress, etc.). For the Server Type, select Micro-
for new messages in all folders, it will down- tion email client. To select the time zone in the soft Exchange, then enter a Username and the
load messages for all folders present, including next window, click on the appropriate region OWA URL, and click Authenticate to make
the Sent Items mailbox and any other custom of the world map or find the region in the Se- sure the settings are correct and that Evolution
folders you have created for the email account. lection drop-down menu. can connect to the Exchange server.
In the Options section of this dialog: In the final Evolution Setup Assistant screen, If no error message appears, Evolution has
• Apply filters to new messages in INBOX on click Apply to accept the changes. Now Evolu- connected successfully to Exchange, and you
this server allows message filtering on the tion is fully configured to send and receive can continue to the Receiving Options win-
basis of sender, subject, or content of an email with Gmail or other IMAP/POP ac- dow. Here, you specify the interval at which
email message. Configuring how junk mail counts. Evolution checks for new messages, as well as
is filtered will be covered later on. Most corporate mail users use Microsoft Ex- the Global Catalog server name, which is re-
• Check new messages for Junk contents en- change Server as their back-end mail server. quired to retrieve contacts from an address
ables the SpamAssassin or Bogofilter plugin Exchange accounts automatically synchronize book and access Exchange Free/Busy service
to apply spam-filtering capabilities to mes- contacts, calendars, memos, and tasks, and it when scheduling meetings. If this information
sages received. typically integrates well with Linux desktops; is not available, you should contact your Ex-
• Automatically synchronize remote mail lo- however, with Evolution integrating the two, it change system administrator for it; otherwise,
cally instructs Evolution to download the is painless. it will default to the Exchange Server informa-
contents of the email and “open” the enve- tion passed through OWA.
lope. Otherwise, IMAP by default only Syncing with
downloads the message headers, which is Exchange
essentially the equivalent of the envelope of Evolution connects to Ex-
a physical piece of mail. change through the Outlook
In the Sending Email dialog (Figure 4), in Web Access (OWA) protocol, a
which you configure the outgoing mail server webmail service of Microsoft
options, the configuration for Gmail is: Exchange Server. OWA pub-
lishes a webmail interface for
Server Type: SMTP the user [1], and Evolution can
Server: smtp.U use this nifty interface to im-
gmail.com port the Exchange information.
Server RequiresU To set up an Exchange ac-
Authentication:U count in Evolution, you need
Checked to add a new account with Edit
Use SecureU | Preferences. The Evolution
Connection: SSL Preferences dialog box is
AuthenticationU where most of the configura-
Type: Login tion information for Evolution
Username: is input. First, click on the Mail Figure 5: The Evolution Preferences dialog box.
Spam Filtering
SpamAssassin is open source spam-filtering
software maintained by the Apache Group.
Evolution has a plugin in Ubuntu 9 that makes
SpamAssassin the default spam-filtering mod-
ule. It is powerful because of its predefined fil-
tering rules, heuristic learning engine (Bayes’
theorem), and integration into a worldwide
network of spam identification servers.
By default, SpamAssassin is not installed
with Ubuntu 9, so to use the plugin that ships
with Evolution, it will need to be installed by Figure 7: Google Calendar reflects entries made in the Evolution Calendar.
Ubuntu’s package management system. To
open a command-line terminal, navigate to Do you want to continue U msacks@linuxpromag:~$U
Applications | Accessories | Terminal. At the [Y/n]? Y sudo /etc/init.d/U
command prompt, type: spamassassin start
At this point, the dependent software packages Starting SpamAssassin MailU
sudo apt-get install U are downloaded and installed. Once SpamAs- Filter Daemon: spamd.
spamassassin sassin is installed, run the command
To turn off SpamAssassin, enter:
A prompt appears that requires root access to spamassassin -V
install software packages on Ubuntu. The de- msacks@linuxpromag:~$U
pendencies are displayed, with a prompt for to test for successful installation. If it is in- sudo /etc/init.d/U
the user to type Y to continue: stalled properly, the output should indicate the spamassassin stop
SpamAssassin version and the version of Perl
msacks@linuxpromag:~$U that was installed: By default, SpamAssassin is enabled on restart
sudo apt-get installU and bootup from now on unless it is disabled
spamassassin msacks@linuxpromag:~$U by ENABLED=0 and a computer restart.
[sudo] password forU spamassassin -V SpamAssassin offers a wide array of tuning
msacks: SpamAssassin version 3.2.5 and configuration options on which an entire
After this operation, U running on Perl version 5.10.0 book could be written, but reading an entire
6947kB of additional diskU book is not required to make use of its power-
space will be used. Now that you have enabled SpamAssassin, you ful and precise spam-filtering features. Simply
must turn it on and enable it by default. To en- installing SpamAssassin, turning it on, and en-
able SpamAssassin, edit a configuration file as abling it within Evolution is all you need to get
follows by typing the spam-filtering power of SpamAssassin’s
real-time, worldwide blacklists.
sudo gedit /etc/default/U
spamassassin Enabling SpamAssassin Within
Evolution
or Now that the SpamAssassin process is running
in the background, you must configure Evolu-
sudo vi /etc/default/U tion to make use of its features. By default,
spamassassin Evolution installs the SpamAssassin plugin on
Ubuntu 9.04. To verify that it is installed, go to
(see Listing 1). To enable SpamAssassin, mod- the Edit | Plugins menu in Evolution and make
ify ENABLED=0 to ENABLED=1 and make sure sure the Spam-Assassin junk plugin is checked.
that CRON=1 to turn on nightly updates. To In Evolution, you configure this by clicking
Figure 6: To synchronize a Google calendar, turn on SpamAssassin, open another terminal Edit | Preferences. Then click on the Mail Pref-
you should preferably use the CalDAV window and type: erences button and the Junk tab in the top
plugin. right-hand corner.
Selecting SpamAssassin in the Default junk check Use SSL. In the URL field, enter the cal- and with better junk mail filtering built in. The
plugin drop-down menu should show “Spam- endar’s address. features list is extensive, and Evolution’s ease
Assassin plug-in is available and the binary is To synchronize with your Google calendar, of use surpasses that of most commercial email
installed.” To make sure the changes take ef- enter caldav://www.google.com/calendar/ clients. The Evolution email client supports a
fect, restart the Evolution client. dav/username@gmail.com/events into the URL variety of mail, calendar, and contact formats,
To test the effectiveness of the SpamAssassin field, replacing username with your Google and the number of formats only grows with
plugin, disable it by unchecking SpamAssassin Mail login. The same entry usually needs to be every release. ■
in Edit | Plugins. Then, send some spam to an entered in the Username field (Figure 6). When
account in the Evolution client. Now try turn- you click OK, the calendar should appear in
Listing 1: SpamAssassin
ing on the plugin again and see if messages are the calendar navigation pane under Google.
automatically moved to the Spam folder when Now when new entries are input into
Defaults
01 # /etc/default/spamassassin
the plugin is enabled. SpamAssassin is very ef- Google Calendar (Figure 7) or iCal, the same
fective and accurate at filtering out spam. appointments will appear in the Evolution Cal- 02 # Duncan Findlay
for retrieving calendar information. tacts. In most instances, a simple export to a 10 # Options
Certain web calendars, such as iCal and file from the old mail client and an import of 11 # See man spamd for possible
Google Calendar, are designed to be edited the file into Evolution is all it takes to capture options. The -d option is
from within their respective services, rather an old contact list. automatically
than from within Evolution. Although Evolution To import contacts into Evolution from Out- 12 added.
has a Google calendar plugin, use CalDAV in- look, open Outlook/Outlook Express on the 13
stead for its full compatibility with Google Cal- source computer and click File | Import and Ex-
14 # SpamAssassin uses a preforking
endar and increased stability in the current port. Now select Export to a file and choose
model, so be careful! You need to
Evolution release (Figure 6). comma-separated values before saving the file
15 # make sure --max-children is not
and transporting it to the computer that is run-
Access Calendar ning the Evolution client.
set to anything higher than 5,
choose a Name and a Color and set the Refresh 20 # Pid file
interval. Google requires the connection to be Conclusion 21 # Where should spamd write its PID
encrypted, which is strongly recommended in The Evolution email client can handle most of to file? If you use the -u or
any other case, too. To activate encryption, the functions that commercial email clients do, 22 # --username option above, this
needs to be writable by that user.
24 PIDFILE=”/var/run/spamd.pid”
25
27 #NICE=”--nicelevel 15”
28
29 # Cronjob
32 CRON=1
Info
[1] OWA: http://office.microsoft.com/
en-us/outlook/HA010860351033.aspx
Figure 8: The Evolution Calendar reflects entries made in Google Calendar.
Links
Clicking the Link button in the
toolbar allows you to link any se-
lected word to a new note. This
seemingly simple feature adds a
whole new dimension to Tomboy;
for example, you can keep all Figure 1: Each Tomboy note acts as a mini–text Figure 2: The Preferences window allows you to
your appointments in one note editor. customize Tomboy’s settings.
Tomboy Add-ins
The Add-ins section al-
lows you to manage
Tomboy’s add-ins, which
are small modules that
expand the application’s
default functionality.
Tomboy comes with a
handful of officially sup-
ported add-ins, and a list
of add-ins maintained by
third-party developers is
Figure 3: Tomboy can sync your notes with another Figure 4: With the use of add-ins, you easily can extend available on the project’s
machine, server, or local directory. Tomboy’s functionality. wiki [1]. At least two
add-ins are particularly
Because this technique is used widely in wikis, Editing tab, you can enable automatic spell useful: Blogposter and Reminder.
you might already know how this feature check and the WikiWords feature. As the name suggests, Blogposter [2] allows
works and how to use it. By default, the Wiki- If you don’t like the default font, you can you to post notes to your blog, thus turning it
Word recognition feature is turned off, so you choose another. To do this, tick the Use custom into a simple blog publishing tool. The add-in
must first enable it in the Preferences window font checkbox and select the font you like. can publish notes to Wordpress, Blogger, Live-
(Figure 2; see also “Preferences” below). Here, you can also specify the template used Journal, or any blogging system that supports
The Text Properties button offers a few es- for every new note. The Hotkeys tab lets you the APP protocol.
sential text-formatting options, such as bold, enable and specify keyboard shortcuts for The Blogposter add-in is available through
italic, strikeout, and highlight. Tomboy also common tasks so you can create and manage the Ubuntu repositories. Search for Blogposter
supports different text sizes, as well as simple notes without leaving the keyboard (Figure 5). in the Synaptic package manager to install the
bulleted lists that come in handy when using With the use of options available in the Syn- package. After you restart Tomboy, open the
Tomboy as a no-frills outliner or a tool for chronization tab, you can configure the way Preferences window and enable the Post note
keeping track of to-do items. The Tools button Tomboy synchronizes notes (Figure 3). This to your blog add-in in the Add-ins section.
provides access to several actions you can per- feature can be especially useful if you use Tom- Then press the Preferences button and fill out
form on the current note; for example, you can boy on several machines and want to keep the required fields.
synchronize your notes and export them in your notes in sync. Moreover, you can use the Reminder [3] is another add-in from the
HTML format. The Tools button also contains synchronization feature to back up your notes. same author. By adding a date and time to a
the What links here command, which displays By default, Tomboy allows you to sync notes note, Reminder allows you to turn the note
a list of notes that link to the current note; this with a directory on the local hard disk or a into a reminder. For example, if you add the
can be useful for backward navigation. WebDAV server. However, you also can per- string !2011/01/01 07:00 to a note, this note
The Delete button doesn’t require any expla- form synchronization with another machine pops up on your screen on January 1, 2011, at
nation, so I’ll move straight to the last button in via SSH, but first you must enable SSH Sync 7:00am.
the toolbar, which allows you to place a note Service Add-in from the Add-ins tab (Figure 4). Reminder also understands strings such as
in an existing notebook. To make !monday, !next monday, and !monday @ 2h
use of this feature, you must set up am. The exclamation mark in front of each re-
at least one notebook with Note- minder entry is used to differentiate the actual
books | New Notebook. Once reminder from regular date and time entries in
you’ve created a notebook, you the note. Downloading the tomboy-reminder.
can add the current note to it, or dll binary and moving it to the .tomboy/add-
you can create a new note directly ins directory is the easiest way to install Re-
in the notebook by choosing Note- minder. Then restart Tomboy and enable the
books | New “Notebook name” add-in in the Add-ins section of the Prefer-
Note. Grouping notes to notebooks ences window. ■
makes searching easier because the
search feature allows you to search Infos
through all notes or only notes in a
[1] Tomboy add-ins: http://live.gnome.
particular notebook.
org/Tomboy/PluginList
Preferences [2] Blogposter add-in: http://flukkost.nu/
The Preferences window, which blog/tomboyblogposter/
you can access by right-clicking on
[3] Reminder: http://flukkost.nu/blog/
the Tomboy icon, allows you to
tomboy-reminder/
tweak Tomboy’s settings. Under the Figure 5: Create keyboard shortcuts in the Hotkeys tab.
Work in Writer
with Style
Styles is one of the features that
make OOo Writer a rather
powerful word processing ap-
Figure 1: Save your Writer documents in PDF plication. In fact, if you really
format with ease. want to get the most out of Figure 2: Tweaking styles in Writer.
Extending Writer
As in Firefox, you can add new features to
OpenOffice applications with extensions. The
best place to find them is the official extension
repository [1]. Here, you can find extensions
for all OpenOffice applications, as well as rate
them and comment on them. Installing Open-
Office extensions is rather straightforward.
First, with the Synaptic package manager,
download the desired extension, which also
requires that the Ubuntu openoffice.org-java-
common package be installed. Then launch
OpenOffice, choose Tools | Extension Man-
ager, and select the My Extension section.
Now press the Add button and select the
Figure 3: Checking grammar with LanguageTool. downloaded .oxt file. Once the extension is
installed, restart OpenOffice to enable it.
Oblique in the Typeface list, press OK, and you save individual chapters as separate .odt files Which extensions you choose to install on
are done. and assemble them in a master document. The your system depends largely on your needs,
The Styles feature offers a few other creature master/subdocuments concept is not new. This but you might want to try at least two exten-
comforts. The Organizer tab in the Style dialog feature has been available in Microsoft Word sions: LanguageTool [2] and OpenOffice.org-
window allows you to specify which style for a while, but it was (and probably still is) so 2GoogleDocs [3].
should follow the current one (the Next Style buggy that even Microsoft recommended you Although OpenOffice comes with a compe-
option) and which style inherits its properties stay away from it. The master documents in tent spell checker and thesaurus, it lacks a
(the Linked with option). For example, you can
create a special style for the document header
and set the Next Style option to the Text body
paragraph style. The next time you type a
header in your document and press Enter,
Writer automatically switches to the Text body
style. Using the Linked with option, you can
link several styles together. For example, you
can link the Heading 1 style with Heading 2,
so the latter style inherits the properties of the
former. If you later change, for example, the
font in the Heading 1 style, this change will be
automatically applied to the Heading 2 style
and any style linked to it. In this way, you
don’t have to go through each style and
change its properties manually. To keep tabs
on styles, Writer sports the Stylist tool, which
can be evoked by pressing the F11 key or by
choosing Format | Styles and Formatting.
Styles can be a bit intimidating in the begin-
ning, but once you’ve learned the ropes, they
can save you a lot of time and make you look
like a real OOo Writer pro.
TIP
Instead of entering the status manually
each time, click on a status cell and press
the Ctrl+D key combination. This gives
you a drop-down menu containing all
previously entered items. To make the in-
voice manager even more useful, you
can add a feature that marks overdue in-
voices. To do this, simply add a Payment
due column (C) and add a function to the
cells in column D (see Figure 8).
Installing OpenOffice
Base
By default, Ubuntu ships without OOo
Base, so before you can start creating
databases, you have to install the Base
application on your machine. To do
this, click on Applications | Add/Re-
move and select the Office section.
Now enter openoffice in the search
field, locate the entry OpenOffice.org
Database in the list of found items, and
tick the checkbox next to it to mark it
for installation. Then press the Apply
Figure 11: Setting a primary key. Changes button to install all the neces-
sary packages.
Although Impress’ features and interface can and work on it. Alternatively, to manage your
be a bit overwhelming in the beginning, using presentation as an outline, click on the Outline Using OpenOffice Base
the application to create presentations is not tab in the working area (Figure 10). Each time The best way to learn the ropes is to create a
that difficult. If you choose File | New | Presen- you type a header and press Enter, Impress working database solution in OOo Base. For
tation, OpenOffice launches the Presentation adds a new slide. Using the promote and de- example, you can build a simple database so-
Wizard, which helps you configure the basic mote buttons in the Formatting toolbar, you lution that will help you to keep track of your
settings of your presentation. First, you have to can manage text as outline items. To speed jobs, how many hours you spend on each job,
choose the template and slide design you want things up, use the Tab key to demote the cur- companies (i.e., your customers), and contact
to use for your slides. Then, you specify the rent item or Tab+Shift to promote it. The Out- persons for each company. Launch OOo Base
output format for the final presentation and line mode allows you to concentrate on the and choose File | New | Database, then use the
choose between overhead sheet, paper, slide, content of your presentation. You can tweak Database Wizard to create and save a database
and other options. The wizard also lets you the layout and overall appearance later. file. When you click the Finish button, OOo
specify a slide transition that will be used Timing is everything in presentations, so Im- Base opens the main window, which is the
throughout the entire presentation. If you want press includes the Rehearse Timings feature. main “working zone” from which you create
the presentation to run automatically, you can With this feature, you can adjust timings for your database.
also specify the duration time for slides and each slide. First choose Slide Show | Rehearse The first thing you need to do is create tables
pauses between them. Once you are satisfied Timings. This launches the presentation, and and populate them with fields. Choose Tables
with the settings, press Create, and the wizard you should see a timer in the left corner at the in the Database pane, and click on Create
generates a presentation. bottom of the slide. Say to your imaginary au- Table in Design View. This will create a new
Of course, if you prefer to create a presenta- dience what you want to communicate about empty table, which you will use to store job
tion from scratch, you can skip all the described the first slide. Then when you are ready to go to data. Then create a JobID field by typing its
steps and simply press the Create button. This the next slide, click on the timer, and Impress name in the Field Name column, and set its
generates a blank presentation that you can saves the timing for the current slide. Now re- type to Integer ([ INTEGER ]).
tweak to your heart’s content. If you choose to
go this way, the first thing you might want to do
is choose a master slide for your presentation.
This will apply a specific layout to all the slides
you create, thus saving you a lot of work. To
choose a master slide, click on the Master
Pages section and choose the master you like
from the Available for Use category.
Impress offers two ways of creating slides
and adding content to them. The first and most
obvious way is to right-click somewhere in the
Slides pane and choose New Slide. Then you
can use the main working area to add bulleted
points, graphs, and other stuff to the slide.
Once the slide is ready, you create a new slide Figure 12: Defining relationships.
OOo Base offers a range of field types. The left mouse button, then drag a relation
most important are numerical types (INTEGER, onto the CONTACTS.CompanyID
for integers – e.g., 1001, 2031, 5673; FLOAT, field and release the button. The next
for floating-point numbers – e.g., 375.75, step is to define the relation’s proper-
12.32, 100.21); variable-length strings (VAR- ties (Figure 13). If you have a com-
CHAR, with widths specified in the Field Prop- pany in your database that is no lon-
erties pane); dates (DATE); and times (TIME). ger your customer and you decide to
To set the JobID field as the primary key, delete it from your database, the sys-
right-click on the record pointer (the green tri- tem has to know what to do with the
angle to the far left) and select Primary Key “orphaned” contact records. Nor-
from the contextual menu. The primary key mally, you’d want to delete them as
has to meet two requirements: It must not be well. Double-click on the relation be-
empty, and it must have a unique value. OOo tween COMPANIES and CONTACTS,
Base makes it easy to assign this property to and in the Delete options column, se-
the primary field key. Selecting Yes from the lect Delete cascade and click OK.
AutoValue list in the Field Properties pane (Fig- By the same technique, define rela-
ure 11) ensures that every new record gets a tions between the COMPANIES and
unique value (in this case, it’s a number) in the Figure 13: Setting the properties of relations. JOBS tables. Make sure, however, that
JobID field. the delete option is set to No action;
Now add the rest of the fields and set their member to set the correct format for the Date, otherwise, deleting a job will automatically de-
types. Before you save the table, make sure TimeUsed, and Price fields in the HOURS lete the related company. Finally, define a rela-
that the date format of the Deadline field is table. tion between JOBS and HOURS and set the
configured properly. Select the Deadline field, The Relation Design tools make creation of delete option to Delete cascade. This will en-
and in the Field Properties pane click on the relations between tables as easy as drawing sure that if you delete a job, you won’t end up
button next to the Format example field. Select lines between primary and foreign keys (Figure with orphaned time entries.
the desired format and language and click OK. 12). To define relations between the four ta- When the relations are defined, save them
Save the table (File | Save or Ctrl+S), and when bles, choose Tools | Relationships and use the (File | Save or Ctrl+S) and close the Relation
prompted, give the table the name JOBS. Add Table dialog window to add the tables. Design dialog window (File | Close). Now you
Now that you know how to create tables To establish a relation between the COMPA- have tables, and gradually you need to fill
and fields, you can easily add the HOURS, NIES and CONTACTS tables, select the COM- them with data. To view and manipulate the
COMPANIES, and CONTACTS tables. Just re- PANIES.CompanyID field, click and hold the data, you have to create queries.
WANT TO KNOW
WHAT‘S UP NEXT?
SUBSCRIBE TO LINUX
MAGAZINE PREVIEW,
OUR FREE MONTHLY
EMAIL NEWSLETTER!
DISCOVERY GUIDE
WWW.LINUX-MAGAZINE.COM/NEWSLETTER ISSUE 01 95
OpenOffice.org
Info
[1] OpenOffice.org extensions
repository:
http://extensions.services.openoffice.
org
[2] LanguageTool:
http://www.languagetool.org
[3] OpenOffice.org2GoogleDocs:
http://code.google.com/p/ooo2gd
[4] Professional Template Pack:
http://extensions.services.openoffice.
org/project/SunTemplatepack_1
Figure 14: Creating a query.
www.ubuntu-user.com
98 ISSUE 01 UBUNTU USER
DON’T MISS A
SINGLE ISSUE!
Ubuntu User is the first print magazine created specifically for Ubuntu
users. Ease into Ubuntu with the helpful Discovery Guide included in
each issue, or advance your skills with in-depth
technical articles, HOW-TOs, reviews,
R I B E N O W !
tutorials, and community reports. SUBSC er year for o
nly
4 issues p 5
/ E U R 2 9 .9 0 / US$ 39.9
£ 24.90
www.ubuntu-user.com
N
Sup ow
Ub p
un or ts
JAU tu 9
NT
Y JAC
KA
.04
LO
PE
http://www.microlite.com CORPORATION