Wine Appdb Maintainer
Contents |
This area is for maintainer's notes and suggestions about testing on Wine
Comments and references helpful to application maintainers can go in this section if desired. You will need to be a registered wiki user to edit this page.
Application Tips and Suggestions
Winehq Bugzilla entry 17232 noted May 09: People tend to look for "HOWTO" and/or "NOTES" when visiting appdb entry but not study test reports. [Ed: So please dont put crucial information only in the test reports, rather add a section at the top with instructions that first time visitors can find].
Menus tricks and tips
When testing wine with an application, if you are tired of the menu's being recreated and you will merely delete them again you can do something..Winehq Bugzilla entry 17315: A. Julliard: You can disable winemenubuilder.exe using the libraries tab in winecfg.
A. English showed how to do this using the command line which would also work in a script or you could even add it to your .bashrc file:
- WINEDLLOVERRIDES="winemenubuilder.exe=d" wine <yoursoftware's name.exe>
[Update: winemenubuilder has been updated jun 09 to be able to remove menus]
G. van den Berg [feb 09 wine user]: I build the following little script below (If someone finds it useful. It is meant for my ~/.wine-* type of prefixes and ignores the Desktop and icons. It does not do the standard .wine directory, although it should be easy to add) If I have some time I might do a Perl script that can handle separate prefixes. (I would probably need to look inside the .desktop files...) This should have the advantage of not breaking edits (such as using a patched Wine-git for Warcraft...) Archived-At: <http://permalink.gmane.org/gmane.comp.emulators.wine.user/39935>
- #!/bin/sh
- find="/usr/bin/find"
- wine="wine"
- rm="/bin/rm"
- # Clears menus - leaves desktop and icons alone "$rm" -f
- $HOME/.config/menus/applications-merged/wine* "$rm" -rf
- $HOME/.local/share/applications/wine
- # Rebuild Start Menu for all prefixes starting with ".wine-" for prefix in
- "$HOME/".wine-*; do
- WINEPREFIX="$prefix"
- export WINEPREFIX
- "$find" "$WINEPREFIX/drive_c/" -wholename '*/Start Menu/*.lnk' -exec "$wine" winemenubuilder '{}' \; 2> /dev/null done
He then posted a correction: [$find Should with the argument] -wholename, which probably means that it requires GNU find, which might be hard to find on non-Linux operating systems...[update feb 09 amended the example with correction] However he noted: Solaris version of find does not support -wholename / -iregexp. The best method to emulate the behaviour probably involves grep and xargs / a loop. It will break on filenames containing certain special characters, such as newlines though...
Custom settings
A user wrote feb09: I have to click-click through my winecfg to make them right every time I install new game or software. Most notable edits are Sound, Drives and Desktop integration (where the personal folders are configured). How I can change these defaults into something different?
Vitamin: What you can do is create a script that edits all what you want to edit.
- Some things are in registry - sound.
- Some things are symlinks - drives, Drives are symlinks in $WINEPREFIX/dosdevices where "x:" points to a mount point and "x::" points to device.
- location of "My Documents", "Desktop", etc - shell-folders. Shell-folders are bit more complicated. They are symlinks or real directories here: WINEPREFIX/dosdevices/c:/windows/profiles/$USER/
A. English:You can also edit tools/wine.inf, but that would get overwritten each time wine is upgraded.
Testing Software
Tlarhices [Nov 08 wine user] There is no recipe or standardised procedure [for games], but a few things :
The trial part
- install in a clean wine prefix
- if you can try to have the latest GIT version of wine installed - right after the installation, make a copy of your wine prefix folder (~/.wine by default) folder, so you can go back to a clean install just by copying the folder back (saves you the installation procedure)
- start with a wine configuration without sound
- try with and without the "virtual desktop" option from wine configuration
- remove pulseaudio (or any strange sound server)
- remove compiz (or any strange manager of this kind)
- make sure you have the latest drivers for your graphic card and they are working perfectly (try with the most recent 3D game you know works in wine, this is the best test you can do about this)
- check that the command Code:
xrandr
gives you the screen resolution you want to use your game with, if not you have a problem with your linux configuration
- run the game from it's own folder. In the terminal run with
Code: wine game.exe
- if the terminal output is too long and you can't see the start of the error run with Code:
wine game.exe > mylogfile.txt 2>&1
You need to replace "game.exe" by the exe name of the game and "mylogfile.txt" by any filename you want the terminal output to be saved in
- At first try, start the game with the lowest screen capabilities possible and add more details / filters / shaders / effects / biggest screen resolutions when lower ones are known to work
- Try to find a game using the same graphical engine [in the official application database], the appdb may contain workarounds working for this one
- If the game doesn't start and complain about a missing DLL, check with winetricks
- If the game doesn't start and complain a lot about missing feature in directX, check with winetricks (lots of guide on how to install directX in wine will make things [worse], only trust this [wineuser] forum, the user vitamin and winetricks)
- If the game doesn't start and complain about missing DLL's or features and winetricks can't do anything for you, try to find the redistributable package [that does contain the missing dll] and if it helps [mention this in the wineuser forum] so it may be included in further release of winetricks
- If the game doesn't start and complains about missing DLL's or features and winetricks can't do anything for you and there is no redistributable, take it from a real Windows installation
- Search every error message in google, wine bugzilla and this forum for guidance and ideas - Report what you are doing [..], some other people may have an idea
- Search the bug tracking system of the game, the game you may see might exist also under Windows
- If the game has patches, try without them first, then try with them.
The reporting part
- If this game has no entry in the appDB, create one - Every time you cross a known bug in wine influencing this application, link the bug report to the appDB entry and post a note on the bug report with the terminal output attached (not copied in the message)
- Every time you are able to go around a bug and have found an open thread on the forum about it, write there your workaround for future reference - And if you find a way to make it work, restart from a clean wine prefix and try to find the minimal required workarounds to make the game work, report it on the appDB with a small how-to,
- if possible try to make the same thing with the latest stable version of Wine to date (1.0 right now I think) so users who want the security of the stable version knows that they can play this game [...]
Scripting the testing
It can save a heap of time by running a script that installs the software on the latest wine.
Winehq Bugzilla entry 18237 You can use Autohotkey to script up something: http://www.autohotkey.com/ very simple scripting language, works great with Wine.
Approving Test Results
One Job of a Maintainer is approving new tests. Users can also submit their test results for wine and are a resource for maintainers. If you cultivate these ones, they can help with the load. However, check these at least twice a week because idle maintainers who do not approve test results after 8 days can be removed. If you are away for an extended period, drop a note so that something can be done.
Forgotten settings
If your software forgets it's settings each time you open it Winehq Bugzilla entry 18083 may 09 suggests: Try to figure out where it stores this data at least: is it registry or some internal configs. Then you could compare this data after closing app with the same layout on native and wine. Then it'll possible to localize a problem: if data differs then bug is in saving configs, else - in restoring layout. Here's a hint: http://bugs.winehq.org/show_bug.cgi?id=9314