1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

What doubts or questions do you have about WINE?

Discussion in 'WINE' started by allenskd, Mar 5, 2015.

  1. allenskd

    allenskd Active Member

    Joined:
    Feb 5, 2014
    Messages:
    510
    Likes Received:
    51
    Trophy Points:
    28
    As I was exercising today I've come to wonder what do new linux users think WINE is and what sort of doubts do they have.

    This is mostly related to a request by booman to create a basic introduction to WINE.

    I should start by saying that in no way GNU/Linux is Windows in the sense that users should not expect a "better Windows out of Linux" just because WINE is able to run Windows applications. You will inevitable neglect all the wonderful things that makes linux an incredible operative system.

    I say this because there are a lot of gamers on the fence to jump to linux without little knowledge on what he/she might be getting into, and yet ends up frustrated because he/she can't run a Windows application as WINE has been touted to.

    And with this in mind I open this thread. I think that if I were to cover the basics of WINE I should also throw in a more realistic overview of what users are getting into and how to manage. Note that I'm mostly aiming the questions to gamers in general. I know other people (lets say developers) have other uses to GNU/Linux. Of course, I'd like to think that not all linux users all developers, engineers, sysadmins, etc.

    Cheers, post your questions!

    P.S I'm not a WINE developer or participate deeply in their community. I've dabbled in WINE for too long, and I feel capable of answering many non-critical questions regarding WINE.
  2. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    7,488
    Likes Received:
    542
    Trophy Points:
    113
    Location:
    Linux, Arizona
    Home page:
    I think an important question/doubt is:

    Can I install and play all of my games with a single version of WINE?

    Kinda like installing all of my games in Windows XP on the C:\ drive
    Is there a day when Wine could handle all the requirements for most games without having to setup wineprefixes, use Winetricks, PlayOnLinux and all the patched versions?

    Since Wine is not an emulator, will it ever be optimized enough to not use extra CPU/Memory usage when playing PC games?

    Final and most important:

    Will WINE ever develop their own graphical interface to install all games without the command line?

    I never would have looked for another service like PlayOnLinux if Wine worked easily out-of-the-box like Windows. LinuxSteam seems to handle this very nicely, but obviously it won't have 50,000 games available for Linux.
    But that is the kind of experience Windows users are looking for. Download game, double-click to install, play
    vashin likes this.
  3. Daerandin

    Daerandin Active Member

    Joined:
    Oct 18, 2013
    Messages:
    933
    Likes Received:
    149
    Trophy Points:
    43
    Location:
    Northern Norway
    Home page:
    Great idea for a new thread!

    The goal of the Wine project is to be able to run all windows applications on Linux, however it is something that I don't think you can ever realistically expect to achieve. On the bright side, we seem to be able to get more and more games running as Wine seem to get better and better with every new version.

    I think one thing that a lot of people don't understand is that what Wine really tries to do is translate system calls from applications to something that Linux can understand. But since Windows is closed source, the Wine developers are mostly left guessing what exactly a system call is supposed to do and get in return. Personally I think it is truly amazing that it works as well is it does.
  4. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    7,488
    Likes Received:
    542
    Trophy Points:
    113
    Location:
    Linux, Arizona
    Home page:
    Agreed! WINE is the main reason I switched to Linux. Its amazing what they have achieved with guessing and reverse engineering.

    I have always wondered how to explain what WINE does when translating those calls from applications. Is there a simple way to explain it to noobs?
    I don't fully understand it myself...
    mrdeathjr28 likes this.
  5. Daerandin

    Daerandin Active Member

    Joined:
    Oct 18, 2013
    Messages:
    933
    Likes Received:
    149
    Trophy Points:
    43
    Location:
    Northern Norway
    Home page:
    I can try to explain it somewhat easier. Basically, and program needs to interact with the hardware in order to actually do something. It is the CPU that executes stuff, your memory store temporary values that a program use while running. But the software does not interact directly with the hardware, it interacts with your operating system. So the program makes system calls, which really is just some form of request to the operating system. The operating system then responds by doing what is requested. It is your operating system that handles everything you see, like the actual graphics being drawn on your screen. The program just makes system calls, asking for these things to happen.

    Obviously, system calls for Windows are nothing like system calls for Linux. Wine simply accepts system calls from Windows programs, and then translates these system calls into something the Linux operating system can understand. Like I said in my last post, the Wine developers are pretty much left to guessing what exactly a system call is supposed to do on Windows. Some effects could be fairly obvious, but there is always the chance that a system call does something else that is not so obvious, and lacking a few small less obvious things could be what makes some games run well and other games not run at all.

    I hope this was a slightly more understandable explanation.
  6. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    7,488
    Likes Received:
    542
    Trophy Points:
    113
    Location:
    Linux, Arizona
    Home page:
    That opens up another Noob question:
    Why doesn't Linux have this translation built in already?
  7. Daerandin

    Daerandin Active Member

    Joined:
    Oct 18, 2013
    Messages:
    933
    Likes Received:
    149
    Trophy Points:
    43
    Location:
    Northern Norway
    Home page:
    To my knowledge, no developer of any Linux distribution is attempting to create "open source Windows". Compatibility with binary files compiled for a different operating system is probably not something anyone even cared to think about because the amount of work required is quite immense. And FYI, there is already someone attempting to make an open source Windows, it is called ReactOS.

    Another thing to keep in mind is that certain Windows applications require specific Windows system libraries (the stuff we sometimes need to install in PoL to get games working) which in turn would lead to a very bloated system if you wanted built in compatibility that actually worked for just about any program.

    And then there is the fact that it is virtually impossible to get this compatibility layer working perfectly. Since Windows is closed source, it is extremely difficult for developers to figure out what a system call is supposed to do. You might get some of it right, but you can never know for sure how much got "lost in translation".

    I think it is important to stress the amount of work required of the Wine developers. Wine began in 1993. It is now 2015 and we are still far from being able to run all Windows software. The Linux kernel was originally released in 1991, just two years earlier. So having it "built in" is far from an easy task.

    And as I said first, I doubt any of the kernel or distro developers care much for compatibility with software for a completely different operating system. This is after all why we have the Wine project, some people wanted this compatibility and decided to make it reality.
  8. Kladiator

    Kladiator Member

    Joined:
    Oct 22, 2013
    Messages:
    150
    Likes Received:
    10
    Trophy Points:
    18
    Hi allenskd,

    I know I am late joining this thread but I recently stumbled upon Wine-Staging so I wanted to ask you (or anybody else for that matter) if you have any opinion about this project.

    On a recent Reddit post someone asked if this could work with POL, but there was no definitive answer.

    Any thoughts?
  9. mrdeathjr28

    mrdeathjr28 Active Member

    Joined:
    Mar 9, 2014
    Messages:
    589
    Likes Received:
    38
    Trophy Points:
    28
    Before namely wine compholio (begins run netflix on linux some time ago), them have sebastian lackner and him send patches and other things to wine.git (but directx hardcoders are henri verbeet and stefan dosinger)

    However many of him contributions dont released in regular wine and as him said many features in wine stagging maybe dont be accepted in regular wine

    But in middle of this them have interesting features like as Pixel format revert (this correct flickering in various games like as metal gear revengeance) NVAPI support (apparently correct some issues in farcry 3), PhysX GPU Support and other things

    :)
    Last edited: Mar 10, 2015
  10. Kladiator

    Kladiator Member

    Joined:
    Oct 22, 2013
    Messages:
    150
    Likes Received:
    10
    Trophy Points:
    18
    @ mrdeathjr28

    I guess that you stick with regular Wine.

    Reading more carefully their home page, I found interesting that Fedora
    On this page they say that their version can coexist with vanilla Wine; I think I'll try it.
  11. mrdeathjr28

    mrdeathjr28 Active Member

    Joined:
    Mar 9, 2014
    Messages:
    589
    Likes Received:
    38
    Trophy Points:
    28
    In my case supports vanilla wine only if all stay good this year must be appear wine 1.8

    :)
  12. allenskd

    allenskd Active Member

    Joined:
    Feb 5, 2014
    Messages:
    510
    Likes Received:
    51
    Trophy Points:
    28
    Hey guys, I haven't forgotten about this thread. I've been fairly busy these days, my semester is almost over and finals are but a few days from now.

    I'll be mentioning a few topics.

    Linux is a kernel, a piece of software that interacts with the hardware and providing the resources (userspace, etc etc). The introduction of win32 API in the kernel doesn't make sense mostly because it's not the job of the kernel to run windows applications.

    WINE itself is a conglomerate of libraries, some forming the win32 API and others implementing Direct3D API in WINE. (along with audio).

    Now as for WINE Staging. WINE Staging is where all patches are integrated for testing. Imho, I would recommend people playing blizzard games to use WINE Staging because it provides a lot of helpful patches that will make the game run smoothly. Sadly these patches take a long long time to get integrated to mainstream code so... sit tight.

    I'll see if I can do something this weekend.
  13. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    7,488
    Likes Received:
    542
    Trophy Points:
    113
    Location:
    Linux, Arizona
    Home page:
    Very interesting...
    WineStaging is yet another fork of Wine.
    I'm sticking with PlayOnLinux because I've invested so much time in it and have had so much success.
    Let me know what you guys fine in WineStaging. I'll try anything once.
  14. allenskd

    allenskd Active Member

    Joined:
    Feb 5, 2014
    Messages:
    510
    Likes Received:
    51
    Trophy Points:
    28
    Wine Staging is not a fork of WINE. It's just a project with patches integrated in it....

    A fork (in real terms) is when an individual or group decides to copy the project source code and work on their own thing because they no longer accept the state of the original project or because they want to do their own product based off it. Like if I develop a music player, you don't agree with the design decisions so you fork it and do your own spin.

    People fork all the time in github but it doesn't mean they are doing anything. Forking is also a way for contributors to contribute patches too.

    PlayOnLinux isn't a WINE fork. It's just a bunch of WINE patches integrated in each WINE Build they do. If you like PoL you are going to love CrossOver which brings actual improvements as in CrossOver actually put efforts for certain games to run.

    I'm actually waiting for their 50% off sale so I can finally get my copy.
  15. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    7,488
    Likes Received:
    542
    Trophy Points:
    113
    Location:
    Linux, Arizona
    Home page:
    I didn't know what else to call it.
    I guess a 3rd Party for WINE?
    Yeah PlayOnLinux is another 3rd Party for WINE as well.
    So many people using WINE to do the same thing..
    Imagine if they all worked on WINE, it would probably be even better.

    I'm glad people are patching WINE, its one of the reasons a lot of games run in WINE even though AppData shows "garbage"
    But we all know WINE won't support the patched versions. Hopefully they learn from the success of the patched versions and eventually test then apply it to their stable WINE.
  16. allenskd

    allenskd Active Member

    Joined:
    Feb 5, 2014
    Messages:
    510
    Likes Received:
    51
    Trophy Points:
    28
    My bad, I didn't mean to sound aggressive or anything.

    Well, biggest problem is that WINE site sucks... and WINE doesn't have any SANE introduction.... and I'm not talking about scanners here! A lot of people get lost in transition since WINE is pretty convoluted itself.
  17. booman

    booman Grand High Exalted Mystic Emperor of Linux Gaming Staff Member

    Joined:
    Dec 17, 2012
    Messages:
    7,488
    Likes Received:
    542
    Trophy Points:
    113
    Location:
    Linux, Arizona
    Home page:
    I'm glad you explained Forks. Totally understood.
    Sometimes they seem like a "fork" to noobs because they have all of these options to do the same thing with Wine.

    Agreed with Wine website. Hence why I originally drifted towards PlayOnLinux. WINE alone was just too complicated to test all of my games.
    I am very thankful for all of their hard work of course!
    PlayOnLinux just seems to do more than even Crossover does. At least with patched versions of Wine.
    If I had gone with Crossover, then all of my guides would be for it alone.
    How ironic

Share This Page