Re: Control Panel
On 20 Mar 1999, Robert Woodcock wrote:
> Gnome integration is fine - for a frontend.
> The backend shouldn't be tied to any particular interface. It should
> probably be able to fit in the base system, and there should be a simple
> frontend that programs can use from maintainer scripts.
I'm the first to agree with this. In fact my major large application
(http://www.gnome.org/guppi/) is written in a backend/frontend way. (As is
gnome-apt but Jason took care of the backend part for me.)
Since someone mailed me privately with a similar sentiment and desktops
seem to inspire this feeling, it's probably worth clarifying what I mean
by "integration." Microsoft has corrupted the word. What I mean is a
common standard (and hopefully as much common implementation as is
feasible) shared by multiple programs.
Examples of integration: the Debian packaging system (and all its
sub-features, such as conffile handling); the Debian menu system; the
Gnome window-manager hints specification; the Unix stdin/stdout/stderr
A property of integration is that the more applications which integrate
along any given dimension, the more useful that dimension of integration
Basically I just mean, interoperability, don't reinvent the wheel, and
other common sense. Share a common backend. Coordinate with other
projects. Use relevant internet standards. Don't make users and developers
learn ten ways to perform a single task.
So I think you're wrong to worry about "going overboard with desktop
integration" - the real problem is failing to integrate the desktop with
the rest of the system. That's why I bring up the config file issue, I
would like to see more programs using the same config file format.
To be very slightly more concrete, I would just say: if you're going to
spend time on a cool configuration backend or format, also think about
getting projects to use it upstream and what sorts of features it needs to
have for that. (An obvious one is, it has to be advertised as not
Debian-specific.) Also think about existing libraries and standards, such
as libPropList, LDAP, XML, and other acronyms. Ideally a project like
Gnome could just plug the backend you come up with for all of its apps,
and then maintainers wouldn't have to write a debian2gnome script for
every Gnome application the way they have to write a debian2foo for every
window manager's menu config file, and configuring a package from the
Gnome preferences box would not be distinct from configuring it using any
of the other frontends. Also ideally, one could write generic tools to
locate and manipulate all the config files on a system.
I can't be more specific since va appears to be hosed and I can't read
Wichert's proposal. Since I've missed all the discussion I probably
shouldn't jump in anyway, I just wanted to enter my "please work with
upstream" plea, and truly Gnome is just an example of a general point.