Hi,
Wine currently creates launchers (.desktop files) with an Exec line like this:
Exec=wine 'c:\games\supreme\supreme.exe'
But, some games expects to be run from its working directory. As working directory typically doesn't matter to UNIX apps, some desktop environments like GNOME don't let you set it. Really, this is a Wine specific issue.
So I'm wondering how we should fix this. The most obvious is a way to tell Wine to change the working directory to the path of the EXE file before running it, but we can't introduce command line switches any more and an environment variable for this doesn't make much sense.
My proposal is to have a new winelib app "winemenulauncher" which simply takes the working directory, program and arguments, and runs the program but switching current directory first, ie the menu entry would look like:
Exec=wine winemenulauncher c:\games\supreme supreme.exe
Hopefully this should let us fix the case of games like Dungeon Keeper which actually crash when run from their install directory.
Does this sound sensible?
thanks -mike
On Thu, Dec 23, 2004 at 06:14:09PM +0000, Mike Hearn wrote:
Exec=wine winemenulauncher c:\games\supreme supreme.exe
Does this sound sensible?
Why not just:
Exec=winemenulauncher c:\games\supreme supreme.exe
On Thu, 23 Dec 2004 16:03:13 -0500, Dimitrie O. Paun wrote:
Why not just:
Exec=winemenulauncher c:\games\supreme supreme.exe
Could be, but we already dump lots of programs into the path. The other thing is that win32 launchers have "working directory" and "command": we should reproduce them faithfully IMHO. So if command is just "supreme.exe" then great, but if it's a full path then it would go in.
Mike Hearn mike@navi.cx writes:
My proposal is to have a new winelib app "winemenulauncher" which simply takes the working directory, program and arguments, and runs the program but switching current directory first, ie the menu entry would look like:
Exec=wine winemenulauncher c:\games\supreme supreme.exe
Hopefully this should let us fix the case of games like Dungeon Keeper which actually crash when run from their install directory.
Does this sound sensible?
The right way is to use start.exe on the .lnk file.