Current desktop detection / app access - take 2.
Mark McLoughlin
markmc at redhat.com
Thu May 27 14:48:21 EEST 2004
Hi,
On Wed, 2004-05-26 at 11:09, Michael Meeks wrote:
> > The problem is that the hack actively prevents us from moving toward the
> > standardized platform, because it gives app authors this
> > write-my-app-five-times-over semi-working approach to solving the same
> > problem. We should be living with the pain until we solve it sanely.
>
> I really don't see where the 5 times comes in. I'm guess it can be
> simplified to 2 questions:
>
> * is there a good way for an ISV to detect what toolkit to use
> for integrated theming ?
> + yes it sucks that we have to do this at all, but life
> does suck often :-)
>
> * is some sophisticated shared mime-foo ever going to do much
> better than: exec ("desktop-launch") ?
> + this argument _looks_ like it hinges on some obscure
> preference for linking vs. a MIME library to do the
> exec for you, rather than letting the helper do that.
>
> My feeling is that deliberately increasing ISV (and user) pain for a
> long period, while hoping that this will focus people's minds on a more
> complicated solution that is a few percent more powerful than a very
> simple, quick solution - is not _really_ a useful use of life. There are
> plenty of more interesting, complicated / nasty problems that we can
> address surely ?
Ignore your immediate problems for a moment and listen.
If we add a $DESKTOP environment variable/root window property we are
effectively putting big sign up that says "solve all your integration
woes here with one easy hack". No matter what we do, $DESKTOP will more
than likely become the de-facto way of integrating apps into different
desktops.
Look at http://freedesktop.org/Standards for a moment and consider how
many of those standards would exist if apps could have done:
switch (desktop)
{
case GNOME:
do_gnome_thing ();
break;
case KDE:
do_kde_thing ();
break;
...
case CDE: /* who uses this any more? */
g_assert_not_reached ();
break;
}
I don't think we'd be better off if apps were doing this instead of us
having well defined standardisation between desktop environments. And I
don't believe you could think so either ...
Notice the way I haven't mentioned your specific problems? I've put
little or no thought into whether there is a better way of fixing those
problems than changing behaviour based on an environment variable or
root window property. I'm not claiming there is a better way, but if
there isn't we should be talking about standardising on
_NET_TOOLKIT_NAME and $DESKTOP_LAUNCH=/usr/bin/gnome-launch or whatever
rather than introducing something which, IMHO, will introduce a
significant barrier to us growing the number well-defined, standardised
application integration points.
Cheers,
Mark.
More information about the xdg
mailing list