Gentoo Monthly Newsletter: 31 August 2008
This month in the GMN
Welcome to the August issue of the Gentoo monthly newsletter!
As usual, you can discuss any aspect of this issue of the GMN in the
forum thread. We look forward to hearing from you!
PHP4 removed from the Portage tree
All work on PHP4 was been discontinued by upstream on August 8. No more security
or bug fixes will be released. PHP4 has already been hardmasked in the Portage
tree since October 2007 (for security reasons), and now it has finally
been removed from the tree.
If possible, you should upgrade to PHP5, which is still supported with bug and
If you or your company have still not upgraded to PHP5, there is
a PHP4 overlay
available. However, running these older PHP4 packages on publicly
accessible services is not recommended, as the packages still contain multiple
The Gentoo Trustees held
its monthly meeting on August 18. The agenda may be found here;
the Trustees will vote at a later date on the proposed Foundation
Looking for a way to help out Gentoo without investing a lot of time? Join
us on September 06 for our monthly bugday, and help us squash some bugs.
Meeting: The Gentoo Council meets twice every month to discuss
important technical issues that affect Gentoo as a whole. The next meeting
is scheduled to be held on September 14, and everyone is welcome to
participate - #gentoo-council on irc.freenode.net at 2000UTC.
Meeting: Scheduled for September 19.
Heard in the Community
Interview: Google Summer of Code Student Nandeep Mali
In the third of the series of interviews with our Summer of Code students, we
chat with Nandeep Mali, who is working
on "Setting Beacon Afloat". Find out more about him and the project by reading
GMN: Give us a brief introduction of yourself. Where are you from? Where
and what do you study? What's your homepage or other means for fans to stalk
Nandeep: Hi folks! :) I am from India and completed my undergraduate
(B.Tech) in Computer Engineering from NIT Jaipur this year in May. My
homepage/blog used to be at miniorb.in but now it's just an empty domain
awaiting some care. And one can always haunt me at my email or poking me at
Freenode (alias = n9986).
GMN: Were you already involved with Gentoo and/or open source in general
before acceptance into SoC? If yes, briefly tell us how you got involved and why
you like writing open source code.
Nandeep:This summer has been my first plunge into this addictive
I have been really interested in this whole front-end-for-the-network
(read 'The Web') concept and wanted to vent out my energy into
something more useful than looping around my localhost.
While searching for a nice project I came upon this interesting idea in Gentoo
project pages. Knowing Anant (gamer buddy), I discussed with him the
possibilities with Beacon. The helpful 'pong' by rane during the drafting stages
helped me get around the Gentoo community. It was an awesome moment to see my
project page show 'Application Accepted!'.
From then on I have come a long way, learning about Gentoo by hanging out
#gentoo-dev and the mailing lists.
GMN: How has your experience with the Gentoo community been so far?
Nandeep: It's been a pleasure to be in touch with such efficient and very
talented developers. The documentation is very well done and user contribution
is also very easy. Despite some rumors about Gentoo not being fun loving I would
say that people here are very good humored and professionals.
GMN: Please tell our readers a little about the project you're working
on, and why you think it will be helpful to Gentoo users. What was your
inspiration for starting the project? What do you expect to achieve with it?
Nandeep: The project is a kick start on a sleeping project 'Beacon' (and
yes, we'll gladly accept the award for the best project name) which was created
by Anant Narayanan in 2006 as his Summer of Code project. I am working on
reviving this tool to, as put by rane, bring Gentoo documentation team out of
the middle ages of online editing (vim and cvs). The code base was already
strong and helped me get a good head start.
There are many possibilities with Beacon. The Rich text Editor will help save a
lot of time and once integrated with the Documentation site it'll help easy
wiki-like editing of the docs. The useful repodoc-web module which was already
in place and the collaborative editor (like Google Docs) should have some
interesting impacts on the way the Doc Team works.
In fact I typed out the answers to this interview in Beacon's Rich text Editor
and probably saved the GMN some time. ^_^
GMN: What do you do when you're not coding? (hobbies, interests, favorite
T.V. shows etc.)
Nandeep: Anime, Gaming, Music that my ears fancy (anything based on the
mood), Tolkien fiction, Roald Dahl's twists and rampaging around on the web
looking for random stuff. TV is an alien concept. And of course I never really
thought of coding as work. :)
GMN: Thanks for your time!
Parallel merges: Zac Medico announces
parallel builds for Portage and Jeremy Olexa has some initial tests.
More sets: Zac Medico tells us about new package
sets available for the Portage 2.2 RC versions.
New IRC servant: As Jeeves, the IRC butler, reached its end of work life,
Robin H. Johnson presents its replacement: Willikins.
Another ebook: Sven Vermeulen is discusses his work in progress on a Linux book,
centered around Gentoo.
Gentoo in the News
Gentoo was recently featured in the French edition of Linux Identity Magazine; several
articles were contributed by Gentoo developers Olivier Fisette and Luis Francisco Araujo. Some of the articles are even available online
Tigase: A Gentoo-based LiveCD
Tigase is a new Gentoo-based
distribution. The project focuses on developing XMPP (Jabber) server and web,
AJAX based clients.
The LiveCD contains the Tigase server, Drupal CMS and Dovecot IMAP4 server
pre-configured to work together as one system. All services use the same user
database for authentication. You can also post news on the example website
directly from your Jabber client and also you can receive notifications about
new comments and posts to your Jabber client. More details are available on the
The LiveCD demonstrates how Tigase's Jabber code can be integrated with other
Even though the project's code is written in Java, the development platform was
always Gentoo Linux, and all the Tigase servers are based on the Gentoo Linux.
Selecting Gentoo for the LiveCD was a natural choice. It gives the developers
plenty of flexibility and control over installed elements and the way they work
with all installed programs. Additionally, the developers can easily update all
packages using Portage.
The LiveCD is a 32-bit environment to make sure it will work on as many
platforms as possible, but it was prepared and built on a 64-bit Gentoo
installation. Despite the architectural differences, building the LiveCD is
quite easy and smooth.
Tin Hat: A Hardened Gentoo-based LiveCD
Tin Hat is a LiveCD based on
Hardened Gentoo. It
aims to provide a very secure, stable, fast desktop environment that lives
purely in RAM. It doesn't mount any filesystem from CD, but instead it is a huge
disc image (2.3GB) that loads into tmpfs at boot. Tin Hat can also be run from a
USB key for somewhat shorter boot times. Whether used from a CD or USB key, once
Tin Hat is running in memory it's quite speedy, as it never has to access its
Tin Hat takes security
quite seriously, even aiming for "zero information loss" -- its developers have
taken steps to ensure that data is secured even if an attacker physically
acquires the box. To protect against network/code exploits, Tin Hat layers
GRSEC, PAX, and other nifty tricks. More information on Tin Hat's security,
speed, and rationale may be found on its project page.
Tin Hat makes it easy to roll your own version via templates; you can even save
a snapshot of a currently running Tin Hat system and use that as a base,
complete with customizations, additional files, etc.
Want to try out Tin Hat? Get it here!
Tips and Tricks
Using lsof to find open files and directories
Have you had problems deleting a file or unmounting a device even as the root
user? More likely than not, your file or the directory where your device is
mounted is simply being used by another user or application. This edition of
Tips and Tricks shows you how to find who and what may be using the file or
directory that you are having trouble with.
First install the lsof tool:
Code Listing 4.1: Installing lsof
# emerge lsof
lsof lists the open files on the system. An open file can be a file that
you are editing, reading with another program, or a directory that you are
browsing. An example of how lsof can be used is to unmount a device that refuses
to be unmounted. Let's say Larry the Cow mounted a CD-ROM a few days ago and now
wants to unmount it. When he tries to unmount it, he gets the following error:
Code Listing 4.2: Unmounting a CD
# umount /mnt/cdrom
umount: /mnt/cdrom: device is busy
umount: /mnt/cdrom: device is busy
Something has /mnt/cdrom open. Since Larry does not remember what
it can be, he runs lsof to get the following:
Code Listing 4.3: Using lsof
# lsof | grep /mnt/cdrom
bash 6453 larry cwd DIR 7,0 2048 1856 /mnt/cdrom
su 15774 root cwd DIR 7,0 2048 1856 /mnt/cdrom
The first two fields describe the process name and process ID, the third field
is the user who owns the process, the forth field is file descriptor, followed
by the type of file, device number, size of the file, node number, and finally
the filename. The file descriptor is the type of the file, in this case it is
cwd, or current working directory. This means that somewhere the user
larry has his shell's directory pointed to /mnt/cdrom. Since
Larry has too many shells open, he decides to narrow down which shell it might
Code Listing 4.4: Examining shells
# lsof -R | grep /mnt/cdrom
bash 6453 6437 larry cwd DIR 7,0 2048 1856 /mnt/cdrom
su 15774 6453 root cwd DIR 7,0 2048 1856 /mnt/cdrom
An extra third field appears, which shows the parent process of bash and
su. As you can see, su is the child of bash. This likely
means that Larry ran su in the bash session that is keeping
/mnt/cdrom busy. Next Larry finds the parent of the bash process:
Code Listing 4.5: Finding a parent process
# ps aux | grep 6437
larry 6437 0.0 0.7 38880 24628 ? S Aug09 9:00 konsole [kdeinit] -session 10be696
Larry uses Konsole as his terminal program. Thus he knows that he must find the
bash session somewhere in one of his Konsole windows. Larry finds the
possible Konsole window by running pstree:
Code Listing 4.6: Looking for Konsole
# pstree 6437
Using this information, Larry narrows down his guessing to four bash sessions
where he ran su. To make /mnt/cdrom not busy he simply exits
out of his su terminals and uses cd to get out of the
lsof can be used for different purposes. For example, you can use it to
monitor your network connections:
Code Listing 4.7: Monitoring network connections
# lsof -i TCP:22
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 6094 root 3u IPv4 9145 TCP *:ssh (LISTEN)
ssh 9962 andrey 3u IPv4 3489405 TCP larry.cow:35467>larry.bull:ssh (ESTABLISHED)
Here we see the sshd service that listens for ssh connections and an
outgoing ssh session.
lsof also comes with some scripts in the
/usr/share/lsof/scripts/ directory. Most will be useful in your
quest to better spy on your users.
Gentoo developer moves
Gentoo is made up of 242 active developers, of which 43 are currently away.
Gentoo has recruited a total of 649 developers since its inception.
The following developers recently left the Gentoo project:
The number is higher than usual because several inactive developers were retired
as per Gentoo policy. This operation is performed on a regular basis by the Undertakers
- Chris Gianelloni (wolf31o2)
- Nguyen Thai Ngoc Duy (pclouds)
- Benjamin Smee (strerror)
- Guillaume Destuynder (kang)
- Christian Heim (phreak)
- Antoine Raillon (cab)
- Benigno Batista Júnior (bbj)
- Stefan Knoblich (stkn)
- Ingmar Vanhassel (ingmar)
- Bo Ørsted Andresen (zlin)
The following developers recently joined the Gentoo project:
- Jesus Rivero (neurogeek) joined the Python team
The following developers recently changed roles within the Gentoo project:
- Ben de Groot (yngwin) joined the LXDE team
This section summarizes the current state of the Portage tree.
Figure 6.1: Package distribution by keyword
The following section lists packages that have either been moved or added to the
tree. The package removals come from many locations, including the Treecleaners and various developers.
||24 Aug 2008
The Gentoo community uses Bugzilla
(bugs.gentoo.org) to record
and track bugs, notifications, suggestions and other interactions
with the development team. The following chart summarizes activity on
Bugzilla between 27 July 2008 and 29 August 2008.
Figure 7.1: Bug activity split-up
Of the 11946 currently open bugs: 14 are labeled blocker,
106 are labeled critical, and 422 are labeled major.
Closed bug ranking
The developers and teams who have closed the most bugs during this period are as
||Gentoo Linux Gnome Desktop Team
||Gentoo's Team for Core System packages
||Python Gentoo Team
||Gentoo Linux bug wranglers
||Gentoo non-Linux Team
Figure 7.2: Bug closed rankings
Assigned bug ranking
The developers and teams who have been assigned the most bugs during this period are as follows.
||Default Assignee for New Packages
||Gentoo Linux Gnome Desktop Team
||Gentoo KDE team
||Gentoo's Team for Core System packages
||Gentoo Toolchain Maintainers
||Gentoo X packagers
Figure 7.3: Bugs assigned rankings
The GMN relies on volunteers and members of the community for content every
month. If you are interested in writing for the GMN, do write in to
firstname.lastname@example.org with your articles in plaintext or GuideXML
The deadline for articles to be published in the next issue is
September 19, 2008.
We solicit feedback from all our readers on the newsletter. If you have any
ideas for articles, sections, or have anything to say about the GMN, don't
hesitate to email us at email@example.com.
You can also give us your feedback and comment on this particular issue of the
GMN on the forum
GMN subscription information
To subscribe to the Gentoo Monthly Newsletter, send a blank e-mail to
To unsubscribe to the Gentoo Monthly Newsletter, send a blank e-mail to
firstname.lastname@example.org from the e-mail address you are
The Gentoo Monthly Newsletter is available in the following languages: