Monday, May 20, 2013

Winning With WINE


Gaming is becoming more and more common in the linux world thanks to the efforts of modern gaming companies like Valve. Because of this, more and more games have native linux clients available. For those games, Windows emulation is clearly not the best option, but for other games that have not yet been ported to linux, such as Guild Wars 2, windows emulation might be a good option. In those cases, search for the games or related software at WineHQ's application database. Their organization scheme system has five levels: Platinum, Gold, Silver, Bronze, and Garbage. Each one designates the level of usability of the software. If you check out specific pages, you can see why certain software has been given certain ranks and figure out how to make your Wine experience worthwhile. For some users, this is as far as they need to go. If a program is well-supported, they buy it. If not, the don't. Still, there is a lot more to Wine than meets the eye.

First of all, though I have been calling Wine a "Windows emulator," the acronym "WINE" stands for "Wine Is Not an Emulator." In fact, it is not. It is closer to a compatability layer. There are also many tricks you can use to ensure your game is running as effectively as possible. Remember that the generic Wine build is not the only one available, and as a user of open-source software, it is your right and privilege to modify or patch the software to fit your system.

The easiest way to modify your Wine build is to use the winecfg tool. After running the command, you should see the following GUI:


From here, you can change basic settings for your programs. Typically, the important changes to help your program along can be found in the AppDB.

The next important tool is regedit. After using this command, you will find the following filesystem appear:


The most common edit here is to add specifications such as video memory size. This can be done by navigating to the HKEY_CURRENT_USER/Software/Wine/Direcd3D folder, and adding in the string "VideoMemorySize" with a value appropriate for your graphics card. This can be done by right clicking and adding the folder Direct3D, and then adding and editing the string in the same fashion.

In addition to these two editors, you could also try Q4Wine for Qt systems, but the documentation is much more difficult to find.

If you wish to have different Wine builds for each different program, along with an easy install, you could install PlayOnLinux. Most Wine users will use PlayOnLinux to manage their Wine builds.

There is, of course, the option of compiling your own version of Wine for your system and applications using Wine-git using a tutorial found here. To do this, you must first use the mkdir command to create a wine-git directory, and then download the latest wine version to it, like so:


git clone git://source.winehq.org/git/wine.git ~/wine-git
cd ~/wine-git


Once done, you should be able to run


$ git config remote.origin.url


and receive the following result:


git://source.winehq.org/git/wine.git


In addition, if you plan on ever submitting a patch to WineHQ, you might want to set your name and e-mail address like so:


git config --global user.name "Your Name"
git config --global user.email "me@example.com"


You might want to also run:


git config --global color.ui auto


for some colored commands and:


git config --global format.suffix .txt


to make sure all of the patches you receive are converted into .txt files.

Once all that is done, we can begin working with Wine-git--however, that is a lot for a single blog post. I will save off on this until tomorrow and revise the schedule accordingly.

As always, thanks for reading.
-Leios

No comments:

Post a Comment