I have a console-only windows application which I'd like to run on OS X. It runs, but insists on starting X11 every time I invoke wine, even though all the app does is write to a file. According to the the documentation at http://www.winehq.org/site/docs/wineusr-guide/cui-programs, wine should not require X11 for CLI programs. I've also tried invoking via wineconsole with no effect. Is it possible to run a CLI program on Mac OS X w/o wine starting X11? I'm running on Leopard, BTW. Thanks, Jon
I don't know if either of these will work... one.. you can try compiling Wine without X11 support... see what happens. two... you can try setting $DISPLAY to something invalid, like "export DISPLAY=:55" so that X will totally fail to launch, but then Wine may just error that X isn't running and not work at all. worth testing out though.
Thanks for the suggestions, everyone. I checked out wineskin, but that didn't really fit the bill, as what I'm trying to run is a command-line program (comskip.exe, in fact), and I need to pass a command-line argument to comskip, which is the filename of the file to process. The windows command would be something like comskip.exe --ini="/path/to/file.ini" /path/to/recording.mpg where recording.mpg is going to vary. This script will be invoked from a python script, which is in turn triggered by an applescript triggered from EyeTV. With wineskin, there didn't seem to be a way to alter the command line argument(s) from another script. I did some more poking around, and found a reference to ttydrv in the wine.conf manual page: format: """GraphicsDriver""=""<x11drv|ttydrv>""" default: "x11drv" Tells Wine which graphics driver to use. Normally you'd want to use x11drv (for X11). In case you want to run programs as text console/TTY only without having Wine rely on X11 support, then use ttydrv. It *looks* like I should just be able to set wine to use ttydrv and not have it fire up X. However, I don't have a wine.conf file (or a ~/.wine/config file). I tried creating one containing the relevant commands, but invoking wine still started up X11.app. So, can anyone tell me how to properly set up wine with ttydrv on a mac? Thanks, Jon
On 1/21/11 11:39 PM, Jon Christopher wrote:> I have a console-only windows application which I'd like to run on OS > X. It runs, but insists on starting X11 every > time I invoke wine, even though all the app does is write to a file. > According to the the documentation > at http://www.winehq.org/site/docs/wineusr-guide/cui-programs, wine > should not require X11 for CLI programs. > > I've also tried invoking via wineconsole with no effect. > > Is it possible to run a CLI program on Mac OS X w/o wine starting X11?Short answer: NO. There is NO such thing as a Windows CLI program btw. They all require starting the Windowing system in some fashion or another. However, you CAN try using DOSBOX or something like it and try running the program there. Otherwise you will have to use X11. James McKenzie
Jon Christopher wrote:> Thanks for the suggestions, everyone. I checked out wineskin, but > that didn't really fit the bill, > as what I'm trying to run is a command-line program (comskip.exe, in > fact), and I need to pass > a command-line argument to comskip, which is the filename of the file > to process. > > The windows command would be something like > > comskip.exe --ini="/path/to/file.ini" /path/to/recording.mpg > > where recording.mpg is going to vary. This script will be invoked > from a python script, which is > in turn triggered by an applescript triggered from EyeTV. > > With wineskin, there didn't seem to be a way to alter the command line > argument(s) from another script.you could set the command line flags to be what you want... but if they change all the time it would be a problem. You'd have to have your python script edit the Wineskin wrapper Info.plist on the Program Flags line to be what you wanted, then have the python script just run the app. Luckily if you needed to edit the Info.plist from another script it should work, its a simple string entry for all command line arguments... and just takes python editing a text file.