Raven runs Windows applications on Linux. You install them with their own installers, the same ones you would use on a PC, and they start: no virtual machine, no winetricks, no DLL overrides.

  • d-RLY?@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    1 day ago

    Is this similar to Bottles in being a front-end for WINE, a fork of WINE itself, or independent program similar to WINE? No matter which, I will have to keep it in mind for future random needs for Windows programs.

    • Blisterexe@lemmy.zip
      link
      fedilink
      arrow-up
      8
      ·
      1 day ago

      From the site:

      How does it work?

      A virtual machine boots a guest operating system. Compatibility runtimes such as Wine instead implement the Windows interfaces an application needs.

      Raven runs the .exe directly on the CPU in a supervised guest process. Some Windows functions execute inside that process, in Raven’s guest components or libraries. Requests for supervisor-managed services cross into the runtime outside it, which manages processes, handles, files and registry state and mediates access to the Linux host.

      Raven implements Windows Installer custom actions, side-by-side assemblies through WinSxS and a service manager. These are among the interfaces real installers depend on; application compatibility still needs testing.

      The official redistributables can be installed with their classic installers, like you would on Windows (Visual C++ 2005 to 2022, DirectX, .NET Framework 3.5 and 4.8, XNA and OpenAL). Raven protects its own system libraries during installation. Snapshot creation can fail, so check that a checkpoint exists before relying on rollback. Tested applications can use the vendor’s installer; other applications may still fail to install or start.

      Graphics go straight to Wayland and Vulkan, with DXVK and vkd3d-proton for Direct3D.

      • Ferk@lemmy.ml
        link
        fedilink
        arrow-up
        4
        ·
        edit-2
        15 hours ago

        It’s still unclear where the “Raven’s guest components or libraries” come from… which I think it’s the question that was being asked (given that wine is a reimplementation of the Windows components).

        EDIT: apparently they are using ReactOS implementation of the Windows kernel & system libraries to translate the system calls, and beyond that they use the official Microsoft libraries that need to be installed inside the Raven runtime, like you would install in ReactOS.

        EDIT2: Also apparently there’s some controversy going on because ReactOS is GPL but Raven is getting distributed as MIT, so there’s a bit of a mix of licenses which opened a bit of a debate.