discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: app wrappers and gworkspace


From: Raffael Herzog
Subject: Re: app wrappers and gworkspace
Date: Sun, 08 Aug 2004 17:22:30 +0200
User-agent: Opera M2/7.54 (Linux, build 751)

On Sat, 07 Aug 2004 17:48:50 +0100, Jonathan Shipley <jon@windj.ath.cx> wrote:

This is a very good start, which will certainly help the current
situation. And talk about fast.

Well, it was just a proof of concept. ;) The release will probably not contain this feature.


I have some user-related questions, though.

1) Can the 'virtual' gnustep apps created be kept in sync with the
   distro's package system (/usr/share/applications/*.dektop) so that if
   the user adds or removes a package the wrappers will automatically
   adjust to the new situation? Could this step of GNUstep-ising
   existing applications be done virtually when GNUstep firsts loads?

That's why I thought of using enabling GSWrapper for StepTalk. Like this, creating wrappers could be scripted and run e.g. on each login. Another thing I'm thinking about is splitting GSWrapper into a library for handling wrappers and the GUI itself and then create an additional command line tool that allows manipulating wrappers from within shell scripts.

But currently, no automation is planned, I'd like to get that thing running first as it is now. This means, that GSWrapper is currently nothing more than a graphical editor to create wrappers that comply to a defined layout and that are able to communicate with GWorkspace properly.


I really don't see the need for 'wrappers' for most of the system - but
   useful for user customisations in ~/GNUstep perhaps (see my last
   point).  Could you explain why app-wrappers are actually needed?

Well, I don't like the way (user) applications are organised in UNIX and I hate menus, especially start menus. I really think this concept is completely broken.

I'd like to organise my Wrappers under ~/GNUstep/Applications in subdirectories, I'd like to put the ones I often use in the tabbed shelf, etc. That's why wrappers are IMHO the best solution. Of course, I could think of integrating this functionallity into GWorkspace or whatever, as long as in the end I've got e.g. a Gimp.app which I can move around, double-click to start etc. I just want something I can touch. :)

Wrappers are needed if you want to keep the NeXTish/Macish feel of handling applications (which I do want to keep).


2) Can wrappers for apps that don't exist be ignored so that users are
   not presented with unachievable options: e.g. opening files with
   non-existant apps, as currently happens?  Perhaps this issue goes
   away if app-wrappers aren't pre-configured.  The interface must
   provide only reasonable choices if you want users to come on board.

This could be done by a synchronization script, however, it could be a bit dangerous: If you just delete wrappers, the scripts in there, which may contain customisations, are lost. But moving wrappers for non-existing applications to a directory where GNUstep doesn't see them could be an option.


3) Is there a way with the app-wrappers system for users to make their
   own customisations in their home directory?  I can think of uses for
   this, but the one time I tried to do this it didn't work.

GSWrapper currently actually creates three scripts:

1. Start the application
2. Start the application and open one or more files
3. Open one or more files in an already running application

You're free what you write in those scripts, GSWrapper just inserts some very basic templates, and the proof of concept to use the informations in .desktop files to create the scripts has been done. I actually wrapped several Java applications (they almost always require some scripting to start) directly from within GSWrapper. You can also set the interpreter to be used for running the script, so if you're crazy and want to write a complex wrapper with a 1000 line Python script, go ahead. ;)

An application wrapped by GSWrapper is actually a GNUstep application like any other GNUstep app. The difference is just that it doesn't do anything itself, it just sits there waiting for requests from other applications, running the appropriate scripts when these requests arrive and exiting properly when the UNIX application exits.


Perhaps I am just showing my ignorance of GNUstep here, so I hope you
can all bear with me.

Well, GNUstep organises Application in a completely different way than KDE and GNOME do -- a nicer way, IMHO. In GNUstep, an application is actually a directory containing all the resources the application needs. So, instead of spreading apps all over the file system, everything that belongs to an app is packaged in one single place. This makes moving them around or also installing them very easy. Actually, it's just like in the good old Macintosh days: Install an application by simply copying a single "file" (actually a bundle) to your hard drive.


cu,
   Raffi, unfortunately probably not ready for a release this week-end

--
The difference between theory and practice is that in theory, there is no difference, but in practice, there is.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]