Introduced the open source projects “fix-it-in-wine” and “dllmgr“, offering a new approach to eliminating compatibility issues between Windows applications and Wine. fix-it-in-wine includes a set of instructions and tools for AI agents to diagnose and fix Wine errors that occur when running specific applications. The dllmgr project provides a kind of package manager for the Wine DLL, which allows you to use libraries from other versions of Wine, alternative implementations from independent developers, and home-made options with individual bug fixes. Both projects are distributed under the BSD license.
Using the developed toolkit, the user can instruct an AI agent to figure out why a specific program does not work, without waiting for the Wine developers to fix the error. The agent analyzes the application’s behavior and debug logs, looks for corresponding messages in the Wine project’s Bugzilla, identifies the problematic DLL, builds it separately from the rest of Wine and tries to fix the error. The resulting library is installed only for the selected application, without changing the system Wine, with the ability to roll back the change.
Unlike existing solutions such as PlayOnLinux, instead of installing the entire suitable version of Wine, it is possible to assemble the necessary configuration from individual DLLs and fixes for them. For example, if an application works with most of the Wine 9 libraries, but requires a newer implementation of one function from Wine 11, there is no need to replace all of Wine, but rather use the appropriate version of one library. The corrected version of the DLL can be published in a common directory so that other users can use the ready-made solution.
Since promoting AI-generated fixes in Wine is problematic due to the project rules, it is proposed to transfer not ready-made patches to upstream, but a description of identified errors, conditions for their reproduction, diagnostic results, explanations of the reasons for incorrect behavior and a description of the solution found. In the future, based on the projects under development, a decentralized ecosystem can be formed for distributing fixes to Wine, distributed independently of the main project.
At the current stage of development, the projects are in the state of early prototypes. Fix-it-in-wine already has tools for diagnostics, searching for errors in Bugzilla, building individual DLLs, installing local replacements and rolling back them, but does not yet support fixing some key Wine libraries and libraries with Unix components.
dllmgr implements the catalog format, its checking and indexing, as well as experimental scenarios for applying individual fixes, but does not have full-fledged graphical and console interfaces.