How To setup Wine to run Windows Programs in Linux


Wine is a Windows emulation program for *NIX OS's available as a free download
at http://www.winehq.com . It is still in "Alpha" release, so don't expect it
to run everything. I have had very mixed results running it without having
Windows installed at all.... I find it useful being a don't run Windows at all
now. In past installations with Windows actually being installed on the machine
I have actually had it run 75-85% of the programs that were installed.
As with most things, you'll mileage will vary. So let's get started!!!

*****************************************************************************

In the last year, the standard wine configuration file, wine.conf has disappeared
from the program and been replaced with the new "config" file. After finally finding
an example of the file in the source directory, the major change appears to be the
standard syntax of a mostly the same file as wine.conf. The standard (global) placement
of the file is also a little different for use "wine oldtimers" as we'll see later.
It was a little more of a trick for me this time with these changes, but it works
(after a little reading and hunting) better than ever. Let's get to installing it now!

Download Wine from one of the Mirror's off of Wine's download list. I suggest
downloading the ".tgz" files and compiling it yourself...It will work better
on your machine this way. I have had mixed results with ".deb" and ".rpm"
packages. Unpack the ".tgz" file with the command:

tar xvzf wine-xxxxxxxx.tar.gz
cd wine-xxxxxxxx
./configure

This command will run for several minutes to configure to your system. If you
need to add any packages to your machine to compile and run Wine, they will
be listed so you'll know what to get. If you need anything, get it and install
them, then go back to the "wine-xxxxxxxx" folder and re-run the "./configure"
step.
Now after a successful configure step, the next command will be listed in the
console box...the "make depend" command. Enter this command now.
After this finishes enter the final (install) command:

make

This step will also take several minutes, have a cup of coffee and relax for
a few minutes.

Now copy "confir", "generic.ppd", and "system.ini" from the
source"/wine-200xxxxx/documentation/samples" directory to your home directory's "~/.wine/"
(hidden) folder. Put these file in the home directory of every user on the computer that will
use wine.


Modify "config" to match the devices on your box and path to one of your
existing Windows user's profile. Below is a sample of my personal one:

********************SAMPLE OF /home/lynn/.wine/config**********************************
WINE REGISTRY Version 2
;;
[Drive A]
"Path" = "/mnt/fd0"
"Type" = "floppy"
"Label" = "Floppy"
"Serial" = "87654321"
"Device" = "/dev/fd0"

[Drive C]
"Path" = "/C:"
"Type" = "hd"
"Label" = "MS-DOS"
"Filesystem" = "win95"

[Drive D]
"Path" = "/cdrom"
"Type" = "cdrom"
"Label" = "CD-Rom"
"Filesystem" = "win95"
; make sure that device is correct and has proper permissions !
"Device" = "/dev/cdrom"

[Drive E]
"Path" = "/tmp"
"Type" = "hd"
"Label" = "Tmp Drive"
"Filesystem" = "win95"

[Drive F]
"Path" = "${HOME}"
"Type" = "network"
"Label" = "Home"
"Filesystem" = "win95"

[wine]
"Windows" = "c:\\windows"
"System" = "c:\\windows\\system"
"Temp" = "e:\\"
"Path" = "c:\\windows;c:\\windows\\system;e:\\;e:\\test;f:\\"
"Profile" = "c:\\windows\\Profiles\\lynn"
"GraphicsDriver" = "x11drv"
; Wine doesn't pass directory symlinks to Windows programs by default.
; Enabling this may crash some programs that do recursive lookups of a whole
; subdir tree in case of a symlink pointing back to itself.
;"ShowDirSymlinks" = "1"
"ShellLinker" = "wineshelllink"

#

; Be careful here, wrong DllOverrides settings have the potential
; to pretty much kill your setup.
[DllOverrides]
"commdlg" = "builtin, native"
"comdlg32" = "builtin, native"
"ver" = "builtin, native"
"version" = "builtin, native"
"shell" = "builtin, native"
"shell32" = "builtin, native"
"shfolder" = "builtin, native"
"shlwapi" = "builtin, native"
"lzexpand" = "builtin, native"
"lz32" = "builtin, native"
"comctl32" = "builtin, native"
"commctrl" = "builtin, native"
"advapi32" = "builtin, native"
"crtdll" = "builtin, native"
"mpr" = "builtin, native"
"winspool.drv" = "builtin, native"
"ddraw" = "builtin, native"
"dinput" = "builtin, native"
"dsound" = "builtin, native"
"opengl32" = "builtin, native"
"msvcrt" = "native, builtin"
"rpcrt4" = "native, builtin"
"msvideo" = "builtin, native"
"msvfw32" = "builtin, native"
"mcicda.drv" = "builtin, native"
"mciseq.drv" = "builtin, native"
"mciwave.drv" = "builtin, native"
"mciavi.drv" = "native, builtin"
"mcianim.drv" = "native, builtin"
"msacm.drv" = "builtin, native"
"msacm" = "builtin, native"
"msacm32" = "builtin, native"
"midimap.drv" = "builtin, native"
; default for all other dlls
"*" = "native, builtin, so"

[x11drv]
; Number of colors to allocate from the system palette
"AllocSystemColors" = "100"
; Use a private color map
"PrivateColorMap" = "N"
; Favor correctness over speed in some graphics operations
"PerfectGraphics" = "N"
; Color depth to use on multi-depth screens
;;"ScreenDepth" = "16"
; Name of X11 display to use
;;"Display" = ":0.0"
; Allow the window manager to manage created windows
"Managed" = "N"
; Use a desktop window of 640x480 for Wine
;"Desktop" = "640x480"
; Use XFree86 DGA extension if present
; (make sure /dev/mem is accessible by you !)
"UseDGA" = "Y"
; Use XShm extension if present
"UseXShm" = "Y"
; Use XVidMode extension if present
"UseXVidMode" = "Y"
; Enable DirectX mouse grab
"DXGrab" = "N"
; Create the desktop window with a double-buffered visual
; (useful to play OpenGL games)
"DesktopDoubleBuffered" = "N"
; Code page used for captions in managed mode
; 0 means default ANSI code page (CP_ACP == 0)
"TextCP" = "0"
; Use this if you have more than one port for video on your setup
; (Wine uses for now the first 'input image' it finds).
;; "XVideoPort" = "43"
; Run in synchronous mode (useful for debugging X11 problems)
;;"Synchronous" = "Y"

[fonts]
;Read documentation/fonts before adding aliases
;See a couple of examples for russian users below
"Resolution" = "96"
"Default" = "-adobe-helvetica-"
"DefaultFixed" = "fixed"
"DefaultSerif" = "-adobe-times-"
"DefaultSansSerif" = "-adobe-helvetica-"

;; default TrueType fonts with russian koi8-r encoding
;"Default" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultFixed" = "-monotype-courier new-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultSerif" = "-monotype-times new roman-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultSansSerif" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
;; default cyrillic bitmap X fonts
;"Default" = "-cronyx-helvetica-"
;"DefaultFixed" = "fixed"
;"DefaultSerif" = "-cronyx-times-"
;"DefaultSansSerif" = "-cronyx-helvetica-"

[serialports]
"Com1" = "/dev/ttyS0"
"Com2" = "/dev/ttyS1"
"Com3" = "/dev/ttyS2"
"Com4" = "/dev/modem"

[parallelports]
"Lpt1" = "/dev/lp0"

[ppdev]
;; key: io-base of the emulated port
;; value : parport-device{,timeout}
;; timeout for auto closing an open device ( not yet implemented)
;"378" = "/dev/parport0"
;"278" = "/dev/parport1"
;"3bc" = "/dev/parport2"

[spooler]
"FILE:" = "tmp.ps"
"LPT1:" = "|lpr"
"LPT2:" = "|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -"
"LPT3:" = "/dev/lp3"

[ports]
;"read" = "0x779,0x379,0x280-0x2a0"
;"write" = "0x779,0x379,0x280-0x2a0"

[spy]
"Exclude" = "WM_SIZE;WM_TIMER;"

[registry]
;These are all booleans. Y/y/T/t/1 are true, N/n/F/f/0 are false.
;Defaults are read all, write to Home
; Global registries (stored in /etc)
"LoadGlobalRegistryFiles" = "Y"
; Home registries (stored in ~user/.wine/)
"LoadHomeRegistryFiles" = "Y"
; Load Windows registries from the Windows directory
"LoadWindowsRegistryFiles" = "Y"
; TRY to write all changes to home registries
"WritetoHomeRegistryFiles" = "Y"
; Registry periodic save timeout in seconds
; "PeriodicSave" = "600"
; Save only modified keys
"SaveOnlyUpdatedKeys" = "Y"

[Tweak.Layout]
;; supported styles are 'Win31'(default), 'Win95', 'Win98'
"WineLook" = "Win98"

[Console]
;"Drivers" = "tty"
;"XtermProg" = "nxterm"
;"InitialRows" = "25"
;"InitialColumns" = "80"
;"TerminalType" = "nxterm"

[Clipboard]
"ClearAllSelections" = "0"
"PersistentSelection" = "1"

; List of all directories directly contain .AFM files
[afmdirs]
"1" = "/usr/share/ghostscript/fonts"
"2" = "/usr/share/a2ps/afm"
"3" = "/usr/share/enscript"
"4" = "/usr/X11R6/lib/X11/fonts/Type1"

[WinMM]
"Drivers" = "wineoss.drv"
"WaveMapper" = "msacm.drv"
"MidiMapper" = "midimap.drv"

#


**********************************************************************

Now enter the command "./tools/winecheck | less" from the source directory, you should
get a result that lists any problems with the installation and setup of Wine, and a
percentage of accuracy towards an ideal Wine install. If you have any problems, check with
the documentation on the Wine website. You may need to "touch" a few files so Wine can find
everything it needs.If this works, "cd to the "windows" directory on your harddrive and
enter the command "wine sol.exe". You should have the Windows Solitaire game
running. You should now be able to find and run and/or install any Windows progs
you want to use with Wine to Windows drive by running the programs setup/install
program with the "wine " command. Installing programs in this was will make it far
easier for Wine to find the necessary files to run the program. If Wine complains about
missing .dll's, the".dll's" can be found at http://solo.abac.com/dllarchive/ . You will
place this/these .dll's in your "C:/windows/system" directory. After all the dependancies are
met (ie...you have run them successfully from a console box), you should be able to run these
programs by finding them in your filemanager, right-clicking the program's icon, selecting the
"Open with..." option, and entering "wine ".

Your mileage may vary, but programs I have successfully got to work are
Solitaire, Notepad, Netscape, all of M$ Office, M$ Explorer, and CuteHTML
at this time. If you email me with other programs you have got to work, I will
list them here. One big note for all of you gamers out there~~~ DirectX is not
supported and DirectX games/programs will *not* work properly at this time.
At
Devices that are not supported in Linux will not work with Wine either (ie...unsupported
winmodem). Almost anything else is fine.


Happy emulating!!!!
Well, I guess it really isn't an emulator,
Happy natively program running!!!!



~Guitarlynn



| copyright 2000 | Contact Guitarlynn |