[Desktop_architects] The experience of an ISV

Jeremy White jwhite at codeweavers.com
Wed Feb 8 13:00:40 PST 2006


Hi Folks,

We're in the process of migrating an application from
Windows to Linux.  I thought I'd record our experiences
thus far, and use them as an example of what an ISV needs.

We have found the following requirements with non obvious
Linux solutions:

  1.  Menu entry creation
  2.  Desktop icon creation
  3.  Mime associations
      A.  Launch a url with the 'right' browser
      B.  Launch an app to handle files of a particular type
      C.  We don't need it, but it's usually important to
          be able to register my app as a mime handler

  4.  Run an application at user login
  5.  Interface with the 'right' email client
      A.  Access to address lists
  6.  Launch the 'right' file browser to show files in a folder
  7.  Set the wallpaper
  8.  Set a screen saver


This should by no means be considered a complete list for all ISVs,
but I think it's a good start, and I think useful at least as
a first level checklist for our ISV portal.

With these, what we have found so far is as follows:

  Menu/Desktop icon creation is manageable.
    It has a modern specification that is somewhat well accepted.  See
    this page in particular:
      http://standards.freedesktop.org/menu-spec/latest/apc.html
    I feel that this is pretty good, with one hole in the spec.
    I've started a thread here to try to close that hole:
      http://lists.freedesktop.org/archives/xdg/2006-February/007685.html
    The responses at times made me despair; it seems that some folks
    consider ./configure && make install to be the only way to install
    software.
    Nonetheless, I think this spec is a shining example
    of the 'right way' to do things.

  For Mime associations, there has been good work done, but not enough.
    Today it looks as though lots of WM specific hoops will be required to
    do anything interesting with Mime associations.
    The interesting specifications are these:
      http://www.freedesktop.org/wiki/Standards_2fmime_2dactions_2dspec
      http://www.freedesktop.org/wiki/Standards_2fshared_2dmime_2dinfo_2dspec
    This might be a useful place for us to put elbow grease.

  For autostart, email, file browsing, and wallpaper interface, no joy.
    There doesn't seem to be any kind of standard.  There seem to be ways to do
    this for each of the WM environments, but we couldn't find any organized
    or systematic information on doing this.
    As an example of a 'good' case, here is what one Gentoo'er put together
    on Autostarting:
     http://gentoo-wiki.com/HOWTO_Autostart_Programs

  Setting the screen saver is apparently a nasty political mess.
    There used to be one true X screen saver; xscreensaver, and hence,
    only one mechanism to build an X screen saver.  But apparently
    that has now forked, and there are variants for both Gnome and KDE.
    It's not clear if there remains one unified way to make your own
    screen saver.


I would like to see us driving a process to make sure that each
part of this has as good a spec as the one for menus; and at least
a portal that lays things out as well as that Gentoo HOWTO does.

I'd also appreciate corrections if I've missed cases where a standard
is emerging.

Cheers,

Jeremy



More information about the Desktop_architects mailing list