I went last Saturday to Ulzama, to the north of Pamplona, with some friends
to pick up mushrooms (as food, not as drug :-). We picked up a lot of them:

They were really delicious (we ate some of them on Sunday), and picking them
involved meeting new friends:

The weird thing is that the most beautiful mushrooms are the ones that cannot
be eaten, whereas the ugly ones can. Of course, we didn’t pick any of them,
since one of the guys with us knew a lot about mushrooms and told us not to.
If he had not been with us, I’m sure we would have taken them :-)


GNOME Network

GNOME Network 1.99.2 has
been released
. This was a quick release to propose it for inclusion
in GNOME 2.6 Desktop Release. It has been suggested to separate things in
small modules, which doesn’t look bad to me. Although I need to come up
with a good setup that allows us to manage all in one shot (one CVS
meta-module, I suppose, like what gnome-utils is, IIRC).


GNOME Network

We’ve finally merged libgtcpsocket into our libgnetwork.
To keep all CVS history, logs, etc, we’ve just renamed libgtcpsocket
and will be adding new functionality from there. We now need to complete
all the renaming stuff and, once that is done, integrate the already
available GNetworkHttpServer in that
new library.


The first consequence of following the GNOME release schedule from now on is
that the priorities for the 1.2 release are now clear. The focus will be mainly
on making the data models updatable, so that you can do things like:

        GdaDataModel *model;
	GdaRow *row;
	model = gda_connection_get_table (cnc, "mytable");
	row = gda_data_model_get_row (model, row_number);
	/* modify the GdaValue's contained in 'row' */
	gda_data_model_update_row (model, row);

Thus not having to use SQL at all for modifying the data in the underlying data
source (now needed, in 1.0). Also, of course, there are equivalent functions to
remove a row (gda_data_model_remove_row) and to add
new rows (gda_data_model_append_row) to the data model.



Following Seth’s
post on “Factories, Refineries and Tools
, I’ve been
thinking that a possible solution to the problem might be to heavily use D&D;
for the communication between the programs. That is, we could make applications
be a set of tools, represented by the different toolbar buttons, etc,
available in the application. You could then drag an item (image, text, whatever)
from another application and drop it on the button (which represents a tool).
An example of this could be a graphic in Gnumeric, which you drag to a button
in The Gimp’s toolbox, and that will apply the given filter (if that’s what
the button represents) on the dragged image, which will then be shown in Gnumeric
with the filter applied. The same, for instance, for a text table dragged from
Abiword to a GNOME-DB window representing a database table; in that case, the
action would be to add the records from the table in Abiword to the database.

Another thing, on which I intended to work a little bit but had no time to even
start was to extensively use the MIME actions extension system, so that applications
will always have a set of those actions for the MIME types they support. Of course,
this is not really what Seth was talking about, I guess, but at least it will
allow us to have a more tool/action-oriented interface. This might be specially
important with the spatial Nautilus, where, from what I’ve found out from my
usage of it so far, it misses a way to really replace the terminal. I find myself too
many times running the ‘terminal-here’ Nautilus script, or writing more scripts
to do what I usually do on the command line. So having an extensive set of tools
that operate on the files you are seeing in Nautilus is a must, at least for me.
As examples of this, there could be, if you install a graphics manipulation app,
like The Gimp, actions such as ‘rotate’, ‘resize’, etc, for graphic files, or,
for a directory containing a CVS module, actions to update, add, remove, etc, the
files on it.


I’m preparing the 1.0.1 release, which will be out soon, probably next Monday. This
release includes several fixes, included one for a crash reported by Gnumeric users.



goal is “define a portable and efficient C programming interface (API)
to determine the call-chain of a program. The API additionally provides the means
to manipulate the preserved (callee-saved) state of each call-frame and to resume
execution at any point in the call-chain (non-local goto). The API supports both local
(same-process) and remote (across-process) operation
“. Interesting
piece of software, which would allow the development of a debugger that can go
back to a given point of execution, and resume from there, which would be a really
useful feature.



More images
from Mars


A funny
review of a SCO roadshow
. It is nice to see they are so wrong,
so that people that were worrying about Free Software future, they can
now stop worrying (or at least I hope so). A quote from that page that,
I think, summarizes all this: “Truthfully I thought SCO was
a non-entity before this bicker began. It’s amazing how far a group can get
on a comedy suit



The people at Esware have
added Zeroconf support to
ifupdown package
. With this, you can easily configure your network devices
to use Zeroconf detection, by using:

      iface eth0 inet zeroconf

in your /etc/network/interfaces file. I wonder what other
distros might be doing for this. For the time being, I asked
à lvaro about
sending the patches upstream.

Having this basic support in distros, as well as multicast DNS and other needed
things for Zeroconf, is a good first step, I guess, for having this support in
GNOME. Now, I just need a bit of time to start seriously adding all this to