Sourcer has a design based on less typing and more guessing. It divides information of each package
in a lot of pieces, adn then groups then in different file. Since most packages have similar information
this ends to be easier to update, and less tyyping, but sure, a little bit confusing.
Sourcer divide the information of every package in 3 parts. One is the "setup information",
usually "./configure, make, make install", but somethimes there are a lot of options.
The second one is the "packages information", the one is much more specific, mainly it have to do with packages, like the main tarball and patches,
but it also have basic information, like the group, base, gnome, kde, etc.
The third one it's about download location, author, license, description, etc.
There is the division of groups, that helps to organize stuff, each group can share some information of any kind,
for example, the "net" group has a prefix of "/opt/net" so any program in that group will be installed there, you only need to specify that it's in the "net" group.
And you can change that in a line inside the "groups" file. The "gnome" group as any
other group has it's own prefix but also has a "default.xml" file and you can simply link the "gaim.xml" file there in order to have
the default "setup information" for the gnome builds, since each group has it's own dir in the "setup information" dir, like "stp_nfo/gnome/default.xml"
There is also the subgroups idea, for example you can have all your "base" group normal "setup information" in one dir,
but you want to be able to compile all them statically, well, you can go to the "stp_nfo/base" dir and there you can have "vim.static.xml" "gcc.static.xml"
and so on. Here comes the magic of having the information divided, because the "packages information" of vim and vim.static are the same, the only thing that changes
is "setup instructions".
In fact you usually don't have to worry about all this, because sourcer has a very smart piece of code that will try to find
absolutely all the information it can, tarballs, patches, version, group, etc. and often you'll not need to do anything else.
But there is more, the "setup info" is divided into steps, so you can have a "prepare" step, that has nothing to do with the "config" step
ando so on. So sourcer stores that information in xml files and each step can have all the commands you want. If you don't have xml, there
is no problem, sourcer has tools to export that information into 2 other formats.
It can even build a whole new system, a distro. You can choose which packages to install and which not, altought it requires a little bit of reading :)
Also the options at runtime are vast and let you do a lot of things, you can tell sourcer to just show you what it's going to do
witouth actually doing it, you can specify wich commands to run, it can resume a installation, just unpack the package.
There are a lot of them.