Interview with FreeBSD Developer Joe Marcus Clarke

Michael Tran dublue at
Thu Apr 20 13:26:21 UTC 2006

Here you go, I've just finished transcribing it.  Let me know if you
need it hosted somewhere.

ps, don't expect it to be 100% accurate!  I didn't know everything
that was mentioned.


Will Backman [0:38]
Today we're speaking with Joe Marcus Clarke and he is a FreeBSD
developer.  so i want to thank him for coming on this podcast, maybe
give him an opportunity to introduce himself and explain the different
things you're working with the FreeBSD project.

Joe Marcus Clarke [0:56]
Thank you.  My name's Joe Marcus Clarke.  I've been a FreeBSD
developer now for I believe four years.  I've been using FreeBSD for
over ten and a half and my main focus [way?] I got into FreeBSD [way?]
was in the committing part of FreeBSD was with the Gnome project.  I
also wear a few other hats in the project: I do work with the port
management team and I do repository work. So repo copies for those in
the FreeBSD know I do the copies of old ports to new ports for
developers.  I've also done some minor userland work specifically for
[skiny|skinning] Cisco IP phone telephony in our lib alias, our NAT
gateway.  But Gnome is, still is, and will be my main primary focus in
the project.

Will Backman [1:45]
And what got you interested in the Gnome desktop?

Joe Marcus Clarke [1:48]
I guess a funny story I'd... Back in the day, I just transitioned away
from KDE to[Astrastep?] because KDE was screwing up with some Java
applications that I needed to use.  And Gnome 1.0 just came out and I
thought "you know, I'd like a desktop.  Astrastep is nice but I'd like
to perhaps get a fully integrated desktop."  So I went with it.  And
after asking a few stupid questions on the mailing list, I thought "I
could start fixing some of these things - this isn't too bad - I've
done a few ports before".  And so I started committing, or submitting,
patches to Maxim Sobolev who was the FreeBSD project leader at the
time and he got tired of committing my patches so he said: "You know,
I'm gonna offer you a commit bit".  And I jumped at it.  It was just
something I had wanted for a long time.  And I thought it was funny
because my real work deals more in networking, I thought it was funny
I got into the desktop side of things.  But since doing that, I find
it very rewarding.  I get a chance to do some lower level stuff and I
don't plan on giving it up any time soon.

Will Backman [2:52]
And what do you think makes Gnome a nice fit for the FreeBSD desktop? 
There's obviously a lot of choices out there.  What makes it work
well?  Some of the questions are around the Gnome desktop is starting
to add more administration tools and stuff like that.  How well does
it integrate with FreeBSD?  Is it just a paint job on top of it or
does it work pretty well in the internals?

Joe Marcus Clarke [3:16]
My marketing hat doesn't fit too well but beyond what people know
about the Gnome desktop: it works out of the box.  It's not as flashy
as maybe KDE with all the knobs you can tweak right away.  It's got
enough there, enough integration there for the common user and it
gives the more advanced sophisticated users a way of turning on some
extra things once they get familiar with how the desktop works.  But
on the FreeBSD side, the FreeBSD Gnome team have done a lot to port
some of the lower level stuff to make things a little bit nicer like
the network applets, the monitoring applets.  You can monitor your
wireless state.  You can monitor your network activity.  You can do
things more on the hardware level where you're monitoring performance
of the system, looking at file system statistics.  So we have done a
lot of that lower level integration and you've got the greater higher
level things like Evolution which is a great groupware suite.  I use
it for emailing calendaring and it ties into Exchange at work.  It's
got a great innovative browser with Epiphany.  So you've got the
simple things for the basic users just wanting to get into the
FreeBSD.  You've got advanced things for sophisticated, more familiar
users.  And at the same time, it's a lot more modular than some of the
other desktop offerings so that you can tweak whatever you want to
install.  You don't have to lump on this huge thing and wait forever
for packages to install or things to compile.  You can say "I don't
necessarily need Evolution but I'd like the panel and I'd like the
novelist desktop".  You can pick and choose that and still come up
with very powerful desktop that fits your needs.

Will Backman [5:02]
What are your feelings around the overall development direction of
Gnome.  And specifically the question is, is it fairly Linux specific
or do you find that Gnome is operating system agnostic?

Joe Marcus Clarke [5:16]
When I started out I was very nervous, very apprehensive about how
they would be receptive to my input on the desktop developer's list. 
I was very pleased when they said "Oh no, we are not Linux focused. 
Your input is valuable to us."  I felt great, this is awesome.  In the
beginning it was easy for me to weigh in on module decision and say
"you know, this is a cool module but it only worked on Linux".  And in
the beginning, I got away with that.  These days, unfortunately,
everyone on the list is talking about distro this, and distro that. 
And the modules that they're starting to consider don't have FreeBSD,
don't have Solaris - they're very Linux specific.  And while the Gnome
group is very receptive to patches from non-Linux operating systems:
Solaris, I've committed a few; the NetBSD project sends a few patches
that are great; things like HAL (the hardware abstraction layer), and
network manager, the gnome power manager; these things are being
considered as modules and they're absolutely at this time and
unfortunately Linux specific.  My opinion, and I don't have any
evidence to back this up, but from the conversations I have on the
list is that the majority of the core Gnome developers don't use
anything but Linux as their primary gnome development platform.  There
are a few Solaris contributors and committors, from Sun actually, that
do a lot of the documentation.  I really get a strong Linux sense and
I have on IRC had a chance to speak to some of the KDE developers and
the FreeBSD KDE developers and they seem to be a lot more in tune with
other platforms specifically FreeBSD.  They seem to care if things
will work or wherever FreeBSD is going in regards to hardware support,
or the desktop can be better integrated.  And I like that, I'd like
the Gnome project to start embracing that more.  But it's been a bit
of a battle.

Will Backman [7:25]
You also were involved in the work on the new DBUS architecture for an
application.  Would you like to speak a little about that and how you
tried to get that to integrate well with the BSDs.

Joe Marcus Clarke [7:37]
The way I got familiar with that was I wanted to get a port of HAL,
the hardware abstraction layer, which was going to be this great thing
if and when we get it ported to FreeBSD it will really tie the whole
desktop thing into the operating system very nicely.  One of the chief
dependencies of HAL was DBUS which wasn't used by many components at
the time.  When I got into porting it, I found that there was one big
FreeBSD specific or non Linux specific road block was sockets and
credential passing on sockets.  Once that got ironed out, the port was
generally stable.  It worked really well.  I was pleased about that. 
And as DBUS began to evolve, there were other Linux systems that crept
into it and one was the ability to monitor for new applications for
when they install and if they install a service offering: a DBUS
services.  The Linux port would automatically pick this up using the
Linux i-notify feature and you wouldn't have to restart the system
bus.  I thought this would be great to add to FreeBSD and fortunately
we have this great kernel interface, the Kqueue that would allow us to
do a very similar thing.  So with Kqueue, I am able to monitor and
achieve the same thing as Linux port has where you install an
application that installs a DBUS service, automatically that service
becomes available.  And the great thing is DBUS is becoming more and
more popular and allows for event message passing.  One of the ways I
use DBUS everyday now, beyond the new Gnome screen saver, is Rhythm
Box - the Gnome audio mp3/ogg application.  It has a DBUS and lib
notify tie in the system.  When ever the song changes, I get a little
pop-up saying "Playing a new song".  I know the port works.  It works
great.  And I think this new common message bus is going to be
embraced by other desktop development groups so that we have now one
way of passing messages between applications.  DBUS has definitely got
a bright future and fortunately, it also has a bright future on

Will Backman [9:49]
And when you say other desktop development groups, are you hinting at
other desktop environments such as KDE?

Joe Marcus Clarke [9:55]
Yes.  I'm hinting at KDE.  There is a Portland project which has been
announced recently.  Portland is more for making applications for
desktop agnostics.  The Free Desktop Project which sponsors HAL,
sponsors DBUS, and a few other things, is trying to unify the
desktops.  Instead of this constant competition and [fight]shedding
and wars over whose desktop is better.  Unifies some of these
underlying things to avoid code duplication and to come up with a best
of breeds for doing some common desktop related tasks.

Will Backman [10:32]
Now DBUS with its message passing, is this eventually going to be the
replacement for the CORBA architecture that was part of the original
Gnome design?

Joe Marcus Clarke [10:41]
I think so.  It's going to be a replacement.  My understanding of the
libbonobo infrastructure within Gnome for doing these sorts of dynamic
object and message passing between applications, and already its been
(at least in its latest release of Gnome 2.14) defused into a lot of
different modules.  These days, we're just turning it on by default. 
In the past, it was an optional thing and now applications just will
not build these days without DBUS.  So we're starting to see this
transition.  CORBA is still hugely important and I don't see it going
away any time soon.  ORBIT is the Gnome CORBA object broker.  It's
still in there, it's not going away that I can see in 2.16, maybe in
3.0, but it's around to stay for a while.

Will Backman [11:37]
How well were you able to keep up with the Gnome release schedule?

Joe Marcus Clarke [11:41]
We have a two tier model.  This current stable release we maintain in
the ports tree, and we monitor in the FreeBSD CVS - you can look at it
on Freshports - that maintains the current stable release which is
current Gnome stable release right now is 2.14.  The previous was 2.12
but due to a release freeze, because we're getting ready to put 5.5
and 6.1 out, the ports tree still watches 2.12.  But what we do is I
host my own CVS tree at and that is where we focus our
development.  So as soon as 2.15 comes out in preparation for 2.16,
we'll move the 2.14 stuff out of my tree into the ports tree and we'll
move 2.15 in.  We've got a large base of FreeBSD users who are willing
to test this, at times very unstable code, and help make the next
release not only a good Gnome release but also a good FreeBSD Gnome
release.  And one of the other advantages of that is that we're right
there with them.  Sometimes within hours of their announcement, I can
announce that we have 2.14.1 and we're very close at this point, or
2.15 dot whatever.  So we try to keep that parallel development so
that we can give them (the Gnome project) bug feedback that our users
keep up with what's going on.  So that when we come out with a
release, we've got screen shots to show with our users, new known
issues, new documentation things.  And our users really appreciate
that because when we throw in this new release into the tree, it's not
like just cobbled this together at the last minute - we've done a lot
of testing, not just ourselves, but users using this in production as
their desktop.  So that the known issues we can cut down, we can cut
down a lot of the "whoops... uh... missed that", have to update this
port, or whatever.  And our users appreciate that.

Will Backman [13:41]
You know I don't know whether it's just my limited view of things, but
it appears to me as though a lot of the desktop BSD initiates that are
going on (sub projects or forks), keen to push the KDE desktop.  I
don' t know why that is and what it might take to make Gnome more
popular.  That may be a completely false view on my part.

Joe Marcus Clarke [14:05]
It's true.  I see the same thing.  I see a lot of FreeBSD developers
seem to embrace KDE over Gnome.  We do have some pretty influential, I
say influential I mean developers who do a lot of work not just fly by
commits of the kernel and Eric Anholt love it and people who are very
active in the project are using Gnome or test Gnome for us and help us
test it.  But I don't really why things as DesktopBSD are embracing
KDE more.  I think maybe some of the appearances, I think people tend
to like that better.  Gnome's appearance has generally been flat for
over the last two releases.  I think we're going to see a big change
in 2.16 that may attract more people.  So I think the attractiveness. 
I think some people like the different tools that KDE offers but I
think we're seeing some vast improvements on the Gnome side with
relation to some of the tools like Gedit is going to become a more (or
has become a more) powerful editor.  But maybe KDE was there first and
by there I mean, to a state where people could use it and felt
comfortable with it - just like I became comfortable and a user of
Gnome first.  Now I do not see myself change as that's what I've
gotten into.  I'm very receptive, and our team is very receptive, to
anyone who is listening "I've loved to do this and that with Gnome". 
If anyone from those other four projects wanted to approach as and
help develop something can and out of the box, I've got some great
ideas.  And one thing about our group is we seem to pioneer a lot of
these newer technologies so we put out DBUS, we maintain a lot of the
lower level [actual?] related stuff, the Freetype, we do Mozilla, we
do Firefox.  And the GTK toolkit which Gnome is based on is more
pervasive.  So I would think more people would like to stick with
Gnome but KDE seems t attract them and I don't have, unfortunately,
all the answers as to why.

Will Backman [16:20]
This is a question that might be perhaps outside of what you're
working on, but I think I'll throw it your way anyway.  There's been a
lot of buzz recently around this 3D OpenGL desktop compositing window
manager stuff in the Linux world.  And one question I had was that a
lot of it depends on commercial drivers for video cards.  And I don't
know whether you've seen some of this come down the pipeline in Gnome,
and what the situation is around 3D accelerated X and the FreeBSD

Joe Marcus Clarke [16:56]
There are a lot of FreeBSD people, a lot of our users who are into 3D
gaming.  For me and my computer, I generally use it more for
development and using the Internet.  I don't do a lot of gaming.  The
only 3D I really have on there is my screen saver.  With the
acceleration, right now I have multiple computers; some running the
commercial nVidia drivers which seem to do the acceleration very well.
 My laptop has ATI and I'm waiting to get some patches so that I can
use the acceleration there.  And because of these different drivers, I
haven't really sat down and looked at some of this new rendering and
compositing stuff.  I know that the Metacity window manager in Gnome
is capable of doing some of this, but I haven't had a chance myself to
play with it.  Some of the users are reporting mixed results, some
success, some doesn't work at all for them and I think it boils down
to what drivers they're using.  But myself and the team, I don't hear
us talking much about 3D remotely.  Just working on the various
porting the the various desktop and related modules.  But if it
becomes big then yeah, we're going to have to immerse ourselves into

Will Backman [18:15]
So do you have the luxury of working with FreeBSD as your desktop
during your workday or is there something [you wanna say?]?

Joe Marcus Clarke []
A little bit of both.  I've got at work, four computers I use more or
less simultaneously for different tasks.  I've got a Solaris
workstation, next to is the Mac OS X, next to that is my FreeBSD
laptop, and next to that is my FreeBSD desktop on which I do Gnome
development.  So the desktop machine runs whatever the latest bleeding
edge release of Gnome is, developer debugging compiled in so that I
can get good core dumps and everything.  Work is fairly flexible in
that they let me do things with Gnome as long as it doesn't interfere
with FreeBSD, as long as it doesn't interfere with my real work.  So I
have time to do patches or look at critical things at work if need be.

Will Backman [19:10]
So with all those systems in front of you, which one do you see
yourself gravitating to?

Joe Marcus Clarke [19:15]
I use my FreeBSD laptop a lot.  I love the Evolution groupware suite. 
I switched off of Pine to that and haven't looked back.  I could never
have found a graphical I liked and Evolution did it for me for
whatever reasons.  I like the way it does threading.  I like the way I
can do filtering and marking messages.  I love the way the calendar
works and the fact it integrates with Exchange makes working with the
Exchange server we have at work great.  The LDAP integration is
excellent.  I love the Epiphany web browser, its smart bookmarks and
the way I can just put in all my work related search fields there
makes things so much easier.  The web-based applications I need to use
at work works very well with Firefox or Epiphany.  Sometimes I have to
go to pure Mozilla.  I can do just about everything I need to do on
that FreeBSD laptop.  I've got Abiword, OpenOffice, Gnumeric to view
my documents.  It's great.  It doesn't crash and it stays up.  Gnome
fits my needs perfectly.

Will Backman [20:28]
And when you're porting Gnome, are you primarily porting it to the
i386 platform, or does it seem to have equal among the 64 bit stuff
and I know there's unofficial support within FreeBSD for some other
architectures.  I didn't know how well those are supported.

Joe Marcus Clarke [20:45]
I do have an AMD64 server at my house that I do Gnome builds on.  I
have a port Tinderbox project that I also maintain.  I do builds of
Gnome for AMD64.  I don't unfortunately have the resources to test
AMD64 as a desktop platform.  So my work and I think all but maybe one
of the FreeBSD Gnome team is we primarily focus on i386.  Gnome has
got a lot better in terms of 64 bit support.  We're still finding a
few things here and there and we usually leave it up to the users who
report the problem.  We try to get a back trace out of GDB from them
or look at compiler warnings to see if pointers are being passed as
integers, see if we can track down the problem.  We've had some good
success with that.  So I think Gnome on FreeBSD is fairly stable on
both i386 and AMD64.  The IA64 and Sparc64 ports are a different
story.  I don't know of anyone running it as a desktop on IA64.  The
team member who did Sparc64 testing for us has been AWOL for a while
but last I heard it was working ok on that platform.

Will Backman [22:09]
Were there any thing else you wanted to talk about related to Gnome or
other projects you're working on?

Joe Marcus Clarke [22:15]
Well I open partition any listener if they're willing to help out with
the project, we have numerous ways people can volunteer.  Our
documentation can sometimes be a bit lacking so if there's people out
there with a creative bug or good at technical documentation, that's
always helpful.  And as I mentioned before, getting the HAL (the
hardware abstraction layer) project successfully working on FreeBSD
would be a great win.  It's not a silver bullet, it's not going to
make us perfect by any means, but it'll go a long way to bringing in
some much needed.. that cool desktop features of FreeBSD.  And just
yesterday, fortunately, one of our team members, Jean Eve, he said
that he was now working on it.  So I've got some code that I've
written, looks like he's writing some code.  And if anyone out there
wants to learn more about FreeBSD internals is good, or wants to get
good with C programming, to help with that port would be great.

Will Backman [23:18]
And I guess one final question: favourite text editor?

Joe Marcus Clarke [23:21]
My favourite text editor right now is vim.  I use Gedit because Gedit
integrates nicely with the archive manager Fileroller.  I tend to use
it a lot from time to time.  But doing all my developments, I do vim,
or gvim.

Will Backman [23:38]
Thank you very much for speaking with me today and good luck with the
upcoming releases and let's hope we get some people helping out with

On 4/20/06, Jeremy Messenger <mezz7 at> wrote:
> On Wed, 19 Apr 2006 06:30:23 -0500, Michael Tran <dublue at> wrote:
> > I've got about half of it transcribed tonight.  Hopefully will have it
> > done within a few days.  Will probably need somebody else to go
> > through it to iron out all the things I missed or weren't familiar
> > with.
> Awsome, thanks!
> > Hope you can wait a bit more :)
> I can wait much longer than you can think. ;-) A best example that I can
> think of is movie, I have to wait for over 4 to 6 months for DVD to come
> out with subtitle/closed caption. Although, sometimes I have downloaded
> some movies (that have subtitle included) to have early but I don't always
> do that unless it's a must movie to watch.
> Cheers,
> Mezz
> > Michael
> >
> > On 4/15/06, Jeremy Messenger <mezz7 at> wrote:
> >> Hello folks,
> >>
> >> The subject has said it all at most. The reason why I am posting it in
> >> here is that I am kind of request for anyone that willing to write it in
> >> text for me or/and other deaf people. If you do, I will love you. ;-)
> >> Thanks.
> >>
> >> URL: (Interview with FreeBSD Developer Joe
> >> Marcus
> >> Clarke)
> >>
> >> Cheers,
> >> Mezz
> --
> mezz7 at  -  mezz at
> FreeBSD GNOME Team
>  -  gnome at

More information about the freebsd-gnome mailing list