l i n u x - u s e r s - g r o u p - o f - d a v i s
Next Meeting:
July 7: Social gathering
Next Installfest:
Latest News:
Jun. 14: June LUGOD meeting cancelled
Page last updated:
2007 Jul 09 08:13

The following is an archive of a post made to our 'vox mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
[vox] Tux Paint 'Magic' tools becoming plugins
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[vox] Tux Paint 'Magic' tools becoming plugins

Hot on the heels of the latest release of Tux Paint, I've begun adding a
plugin API that allows the creation of new 'Magic' tools.  (Things like the
grass and bricks painters, the blur and smudge effect, etc.)  I then yanked
all of the existing Magic tools out of the core of Tux Paint and converted
them into plugins.

I'm far from done settling the (current version of the) API, or finishing
the documentation, but I'm excited by the prospect of people being able
to more easily contribute new tools to the Tux Paint project, and wanted
to share with my local LUGs.

In fact, I'm eager to see Tux Paint and its new plugin API being utilized
by computer programming classes (in high schools, for example) as a
relatively easy and fun way of teaching graphics programming.

So, if I've piqued your interest at all, and want to play with (and provide
feedback on) the current implementation -- which I warn you is in flux -- then
go check out the latest Tux Paint source from CVS and have a go!

This page discusses how to pull Tux Paint out of the CVS repository on


Tux Paint has a number of dependenciesm, of course.  If you've never
compiled and installed it from source, you'll need:

  SDL  ( http://www.libsdl.org/ )
  SDL_mixer  ( http://www.libsdl.org/projects/SDL_mixer )  [optional]
  SDL_image  ( http://www.libsdl.org/projects/SDL_image )
  SDL_ttg  ( http://www.libsdl.org/projects/SDL_ttf )
  libPNG  ( http://www.libpng.org/pub/png/libpng.html )
  gettext  ( http://www.gnu.org/software/gettext/ )
  Cairo  ( http://www.cairographics.org/ )  [optional]
  libRSVG  ( http://librsvg.sourceforge.net/ )  [optional]
  libpaper  ( http://packages.debian.org/unstable/source/libpaper )

And don't forget the development packages, if you're installing via your
distro's package manager.  (e.g., get "libsdl1.2" AND "libsdl1.2-devel")

On Ubuntu Feisty, for example, I believe you need to aptitude install:

  libsdl1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev
  libpng12-dev libpaper-dev libcairo2-dev libsvg-cairo1-dev librsvg2-dev

You might think "can't I just do 'apt-get build-dep tuxpaint'"?
But there's the new SVG and libpaper stuff in the latest version,
which is unlikely to be in any distros (besides Debian/sid) right now,
since the latest version, and hence these new dependencies, is only a
week old :^)

For folks who just want to look, and not yet touch, you can peek at the
files via CVSweb:

  API header file:

  API documentation:

  Example plugin:

Thanks and enjoy!

vox mailing list

LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
Appahost Applications
For a significant contribution towards our projector, and a generous donation to allow us to continue meeting at the Davis Library.