About optional Wine dependencies
About optional Wine dependencies
Wine has a lot of optional dependencies to various libraries and tools (e.g. see all the optional dependencies of the Arch Linux package, and I believe that list is not even comprehensive). It seems many recommend installing simply all of them, because without those Windows applications might crash or misbehave, without clear indication what the problem is. Furthermore, the wiki here says to report bugs only when "Your system has all the libraries that Wine needs.".
So I was wondering how "optional" these dependencies are now. Which of them can safely be skipped without fearing that apps break? Which of those are required for bug reporting? I'd rather like to not install some larger things that I wouldn't otherwise need (like samba).
So I was wondering how "optional" these dependencies are now. Which of them can safely be skipped without fearing that apps break? Which of those are required for bug reporting? I'd rather like to not install some larger things that I wouldn't otherwise need (like samba).
Re: About optional Wine dependencies
A quick look over the wine-staging-4.9 package leads to my cherry-picking the following very optional dependencies:z-s-e wrote:...
So I was wondering how "optional" these dependencies are now. Which of them can safely be skipped without fearing that apps break? Which of those are required for bug reporting? I'd rather like to not install some larger things that I wouldn't otherwise need (like samba).
Code: Select all
optdepends=(
...
v4l-utils lib32-v4l-utils # Can omit - webcam, digital camera capture support (recently was bumped to V4L2 - so might be more useful now!)
...
gtk3 lib32-gtk3 # Can omit - only required for broken Gtk3 widgets option (wine-staging only)
...
libldap lib32-libldap # Can omit - allows Windows applications access to directory services LDAP.
...
sdl2 lib32-sdl2 # Can omit - currently just used to supported joysticks and controllers via SDL2
vkd3d lib32-vkd3d # Can omit - D3D12 support via Vulkan - very poor support for most games at present
sane # can omit - only required for scanner support
libgphoto2 # can omit? - required for digital camera support
gsm # can omit? - GSM 06.10 codec support
cups # can omit - but is required for printer support
samba # can omit - typically only used directly by Microsoft products
dosbox # can omit - used to support DOS games and applications
Please ask if you have a more specific question or application in mind...
As it standards, your question is largely meaningless...
Because you haven't stated what specific applications, you are trying run with Wine.
Bob
Re: About optional Wine dependencies
Some games also use ntlm_auth for secure connections, so samba should be installed.
Re: About optional Wine dependencies
Maybe I should clarify a bit more: Obviously, functionality provided by a dependency won't work without it. So without samba, I wouldn't expect some local netplay to work for some games, or without cups an application wouldn't find any printer. That much is clear.
What I wonder is: are there optional dependencies that can cause applications to crash or bug out when they are missing? One concrete example: Suppose I run an application that in principle can use a printer. Can it happen that the application does not even start up when cups is missing, even though I don't have any printer and never plan to use the print functionality of the application?
So in other words, which of the optional dependencies can impact/stop applications from working in general, and not just reduce functionality in the obvious way. At least I think this would be good to know.
What I wonder is: are there optional dependencies that can cause applications to crash or bug out when they are missing? One concrete example: Suppose I run an application that in principle can use a printer. Can it happen that the application does not even start up when cups is missing, even though I don't have any printer and never plan to use the print functionality of the application?
So in other words, which of the optional dependencies can impact/stop applications from working in general, and not just reduce functionality in the obvious way. At least I think this would be good to know.
Re: About optional Wine dependencies
@Bob
So it might be needed.
@z-s-e
Nobody can be sure it’s very Application/game specific sometime I’ve gotten away with only providing libpng/libfreetype/libjpeg and that was all.
Sometimes I’ve needed literally everything to get something to function.
It’s not so cut and dry, if the developer didn’t anticipate printer support being broken on the system it could crash right away or crash when trying to access a printer.
A game could function without a required codec, some just plain crash or refuse to even start.
So as Bob said above the question is too broad meaning no single answer.
Code: Select all
gsm- library and tools to convert to/frm gsm audio format
@z-s-e
Nobody can be sure it’s very Application/game specific sometime I’ve gotten away with only providing libpng/libfreetype/libjpeg and that was all.
Sometimes I’ve needed literally everything to get something to function.
It’s not so cut and dry, if the developer didn’t anticipate printer support being broken on the system it could crash right away or crash when trying to access a printer.
A game could function without a required codec, some just plain crash or refuse to even start.
So as Bob said above the question is too broad meaning no single answer.
Re: About optional Wine dependencies
@Gcenx Well, but you gave me an answer, according to you every single missing optional dependency can cause applications to not work. If you are correct, that would be unfortunate...
I guess I probably should rather ask the Wine devs via Bugzilla directly or something, because this is a question about how Wine is implemented. E.g. if Wine has no cups on the host system, will it simply crash when the Windows application uses Windows printer APIs, or will it rather emulate a system that simply has no printers available (but the Windows API still technically functional).
For some dependencies, like libpng/libfreetype/libjpeg or codecs as you said, it is pretty clear that those cannot be "mocked out", so there it is obvious that not having those can cause problems for the whole application. But for example all those dependencies for special hardware or network support could in principle be handled in Wine such that it would just emulate a system without the corresponding hardware or network, and not just simply crash.
I guess I probably should rather ask the Wine devs via Bugzilla directly or something, because this is a question about how Wine is implemented. E.g. if Wine has no cups on the host system, will it simply crash when the Windows application uses Windows printer APIs, or will it rather emulate a system that simply has no printers available (but the Windows API still technically functional).
For some dependencies, like libpng/libfreetype/libjpeg or codecs as you said, it is pretty clear that those cannot be "mocked out", so there it is obvious that not having those can cause problems for the whole application. But for example all those dependencies for special hardware or network support could in principle be handled in Wine such that it would just emulate a system without the corresponding hardware or network, and not just simply crash.
- DarkShadow44
- Level 8
- Posts: 1207
- Joined: Tue Nov 22, 2016 5:39 pm
Re: About optional Wine dependencies
When it's optional, it's dynamic. Like, print an error message and act like this functionality is unsupported. At least that's why I found. You'll quickly see if your program needs that, but obviously, every missing dependency can break a program.
Re: About optional Wine dependencies
@z-s-e
When testing specific (!!) applications you can run these with:
- which will at least tell you, what Windows libraries the application is trying to load.
Bob
When testing specific (!!) applications you can run these with:
Code: Select all
export WINEDEBUG=+loaddll,+module
Bob