CrossOver-logo.png

Setting the Record Straight

Wine began in 1993, originally designed to enable Microsoft Windows applications to run on GNU/Linux through translation, rather than emulation, but has since expanded to a variety of platforms, from macOS to FreeBSD. This is possible in large part because these operating systems share a common ancestor (whether by blood or by imitation); UNIX. Wine is free software currently licensed under the LGPL, which allows for incorporation within a proprietary application.

CodeWeavers was founded in 1996 for the purpose of selling a commercial version of Wine with a graphical user interface and other proprietary components. It employs dozens of contributors for the Wine project, and is responsible for over 50,000 commits, or two-thirds or so of total commits for Wine. They host Wine's websites, winehq and appdb, are the main sponsors of WineConf (which has been absent for the past 2 years amidst a worldwide pandemic), and actively hire more people to work on Wine, and people who are actively working on Wine to keep them around. Alexandre Julliard, the leader of the Wine project, is employed by CodeWeavers as CTO. While it would be an exaggeration to say that Wine is CodeWeavers (there's still a third of Wine's commits from members of the Wine community), Wine is undoubtedly a CodeWeavers project at present.

There have been other companies that have tried to sell proprietary applications that include Wine in the past 25 years or so, but CodeWeavers has been around since almost the start, and they're still going strong. Perhaps most importantly, the vast majority of the patches CodeWeavers make for CrossOver make it back upstream. TransGaming was another notable company that forked the last permissively-licensed version of Wine and developed the proprietary Cedega software, focused on gaming, and notably did not contribute much back. It was discontinued a decade ago in 2011.

CrossOver is CodeWeavers' commercial implementation of Wine and a dozen other components. It's a stable version of Wine with a proprietary graphical interface and a variety of "hacks" for getting specific programs working. These so-called "hacks" wouldn't make it into Wine proper as they aren't long-term solutions; they're short-term workarounds. This is good for a user that just wants to get something working, but it doesn't move Wine forward as a whole. It aims to make installing, managing, and running applications easy. I have some issues with the user interface that I'll touch on later in this article.

 More About Crossover

CrossOver is Proprietary...Kind of.

The first thing you'll notice when you visit https://www.codeweavers.com, aside from how much more polished it is than winehq and appdb, is the bluntness of the copywriting. I don't like all of it, but it's certainly honest, though somewhat confusing when it talks so much about open source. So, let's be clear about how much of CrossOver is open source.

The proprietary code in CrossOver is responsible for the user interface and some of its tools for managing Wine. All the modifications Codeweavers makes to Wine are released under the terms of the LGPL, which is an open source license. "Over 95%" of these changes make it back to Wine proper. They also make changes to DXVK, VKD3D, and other projects often used with Wine. You can see the long list of other open source projects CrossOver uses here: https://www.codeweavers.com/crossover/source

Great Value

I really like that Codeweavers doesn't overpromise. They make the compatibility database very prominent and encourage you to look to see whether the applications you want to run are supported. They even offer a full-featured 14-day trial to see whether it's really for you.

CrossOver is USD$59.95 for a year, and you get access to those Linux, ChromeOS, and macOS builds.

CrossOver has regular discounts, so to renew, it usually only costs USD$29.95, and with other discounts, could be as low as USD$14.95. The lifetime subscription, for USD$499.95, would be worth about 1 year of Crossover + 14 years of renewals. You get to use CrossOver on 3 computers.

CrossOver also offers a 14-day free trial that contains the full version of the software. After the 14 days end, you can still use all of the applications you've created, but you can't create any more and you are not eligible for upgrades unless you purchase a license. This is about as generous as it gets.

 More About Crossover

Crossover's Real Merits—What Can You Actually do With it?

Going back in history a decade or so, CrossOver was compatible with some Adobe software, including Photoshop, of course. The versions it supported were old, but it did have support for it. But that hasn't been true for some time. Early in the 2010s, Adobe pivoted to a Software-as-a-Service model. It pulled the old CS versions off the shelves and gave customers two options: pay for a Creative Cloud subscription, or pay for a subscription for each app individually, and if you need more than two apps, this is more expensive than the Creative Cloud susbcription. The software is continually growing in complexity, and its DRM is similarly complex, so it's no surprise that CrossOver is no longer compatible with Adobe software. It also isn't compatible with any of the Affinity Creative Suite, though support for it is more highly-requested than Adobe currently.

CrossOver, at the time of writing, supports 3,062 applications with 5/5 stars. I looked through all of them. Most of these applications are games, some of them are applications that have been completely deprecated and abandoned by this point, some of them that have fully-featured native Linux versions or alternatives, and a choice few of them are popular Windows-only software in use today:

  • Microsoft Office—I would hazard a guess that the vast majority of people who use CrossOver use it for Microsoft Office. I am no exception. It's only on a rare occasion that I find myself in need of it, but it's nice to have when LibreOffice doesn't suffice. While buggy and sometimes unstable, I find it quite usable. The installation process was very unstable, though. I use Office 365, but apparently specific Office releases such as Office 2019 do not install. On Office 365, though, I run 2021 versions of the applications.
  • Amazon Kindle For PC—I tried to get this working with Wine-Staging, but had no luck. CrossOver, however, handled it admirably. I've since uninstalled it, however...I like DRM-Free ebooks and paperback books more.
  • Kobo—Kobo's ebook reader. Seems to have a 5 star rating, but no one has tested it since 2017.
  • Quicken—For those that use Intuit's Quicken instead of the (now) web-based and more comprehensive Quickbooks.
  • GOG Galaxy, Epic Store Client, Ubisoft Connect, Battle.net, Origin—Game launchers and clients outside of Steam that have at least some support, mostly good support, but I wouldn't recommend using all of these, as I'll get to in the next section.
  • Notepad++—For those who don't want to use notepadqq.
  • Scrivener—Many writers' canvas of choice. It offers many features that make outlining, drafting, and editing easier. The developers were working on a Linux port for some years, but eventually dropped it.

Depending on your needs, this might well be worth it. The lack of compatibility with Adobe, however, is disappointing, no matter how understandable. For many people, Adobe is the dealbreaker for GNU/Linux, myself included. If you play games, though, especially on macOS, CrossOver is worth a look—with a caveat for GNU/Linux users.

Can You, or Should You Really Use CrossOver For Games?

Wine and its derivatives'—CrossOver and Proton—greatest success has been compatibility for games. If you look at the compatibility database in CrossOver, the vast majority of applications rated 5 stars are games (or antique productivity software like Microsoft Office 2003/2007). The problem with this is, Proton competes with CrossOver for a good portion of CodeWeavers' market. But it's probably better business than CrossOver if Valve is paying for it.

Proton, in case you weren't aware, is another CodeWeavers project developed in concert with Valve and the community. It's an open source fork of Wine that wraps up several other projects into a cohesive whole. Or, put simply, it allows users running GNU/Linux to play games developed for Windows with almost no effort. To enable it today, open the Steam client, go to Steam > Settings, click on Steam Play, and ensure "Enable Steam Play for all other titles" is enabled. Now, you can play ~80% of the games on Steam just by clicking "Play". You don't need to know much of anything to use it, you don't have to pay for anything or even progress through an installer; most of the time, you hit Play, and it just works.

CrossOver, by contrast, requires more setup and can be quite flaky with installing software like Microsoft Office. The first time you install unlisted software, it can be confusing. It's also not as up-to-date as Wine-Staging and isn't getting the latest fixes for games. The compatibility database also seems to be stuck in the past, to a degree. It should say something that Steam is the most popular application on CrossOver's compatibility database by almost 5 times as many ranks as the second most popular application, World of Warcraft...in a world with a native Linux Steam client that has the most reliable incarnation of Wine—at least for this niche purpose—to date.

CrossOver still has a purpose in supporting games outside of Steam. In fact, if you look at their compatiblity database, you'll find that most customers seem to use CrossOver for games! The Top 10 most voted-for applications—customers are granted 5 votes that they can use to help convince CodeWeavers that an application is worthy of support—are all game-related. GOG Galaxy, the Epic Store client, Origin, and a slew of games.

CrossOver has good support for GOG Galaxy, the Epic Store client, Battle.net, and Origin, as they all install and are at least somewhat reliable. However, you don't need GOG Galaxy for GOG games. You can just download the games and play them without a client. You can get some of the same functionality with MiniGalaxy, a native Linux GOG client, but I use Lutris instead.

Likewise, you can use the Heroic Games Launcher instead of the Epic Store client, the latter of which won't even let you attempt to install Windows-only games, while Heroic does with a sleek interface for managing Wine, and it also has an impressive start-up time. Honestly, I think it's a better experience than the native Steam client. However, CrossOver can still worthwhile for Origin, Battle.net, and Ubisoft Connect, if you use those clients. You can also use CrossOver to manage GOG games, though I found I liked Lutris more for this, because it has a more suitable interface with easier-to-access options.

For GNU/Linux users, then, the main benefit of using CrossOver is being able to use Microsoft Office, a few ebook readers, and you could potentially use it for games outside of Steam if you don't like Lutris. But despite being a strong selling point for using CrossOver, there's definitely a long way to go with support for Office.

However, for macOS users, CrossOver makes perfect sense. For a platform with native support for Adobe Creative Suite and Microsoft Office, users don't want for much. Except gaming. CrossOver means users don't have to wrestle with Wine to get games working. Steam doesn't support Proton for macOS, a void that CrossOver seems to be filling well. Their other options are PlayOnMac which, while free software, is in the midst of a long transitional process between its current incarnation and a new major version, and Parallels, virtualisation software which has inferior performance to Wine. CrossOver is probably the best option for macOS users, and in fact, they are the most active segment of CodeWeavers' market currently (just judging by the forum posts). GNU/Linux users, on the other hand, are mostly served by Proton.

But, as a dedicated visual novel player on GNU/Linux, I've faced some disappointment with CrossOver on the gaming side.

CrossOver is a Poor Choice For Playing Visual Novels

CrossOver doesn't handle Japanese visual novels well. Outside of CrossOver, I've setup a wine-staging prefix with several Winetricks packages, including quartz, a lot of Visual C++ Runtimes, ffdshow, and dotnet35 for visual novels, and it runs most VNs very well. On the other hand, CrossOver couldn't even open その花びらにくちづけをわたしの王子さま (even after applying fjfix) but Lutris can, and while it did "install" 「アキウソ -The only neat thing to do- 」(there's nothing to install, really), it didn't create a .desktop file for me, and I had no idea how to launch the game again, except by calling it from bash using that prefix.

I learned, by reading this help article, that I'm supposed to use "Run Command" to create a launcher for it. For some reason, which I'm assuming is because the filename had two "." extensions ("malie.0.png" instead of "malie.png"), it didn't properly link the icon file for the .desktop file (it was linking to "malie.0" instead of "malie.0.png"). I had to edit the .desktop file manually and run this to update it:

update-desktop-database ~/.local/share/applications

Another issue is that it does not appear to be possible to manipulate environment variables for a specific bottle in the user interface; you need to edit the cxbottle.conf file for that. That's not very user-friendly! Especially when you need to launch a visual novel with the ja_JP.utf-8 locale, or the characters won't display. And there's also no way to create a bottle with these environment variables unless you change your locale for all bottles. The way Lutris does this is far, far easier, by just giving you the option to set environment variables in the interface for each application.

But more than the experience, is the limited number of VNs you can play with CrossOver. This isn't because CrossOver hasn't implemented some of the gameplay features that VNs rely on; it's because of DRM. DMM (aka FANZA GAMES) has the largest library of digital Japanese visual novels. Most of them are protected with Soft-Denchi, which is a pretty old DRM scheme at this point (it was first released circa 2002, saw its last major release in 2011, and was last updated in 2018). Soft-Denchi is a separate runtime you need to install to launch the game.

CrossOver doesn't support Soft-Denchi, which means these visual novels just won't work. Your other choices are DLSite, which typically ships games with PlayDRM (though occasionally uses Soft-Denchi), which does work with CrossOver, or GOG, which has a small library of VNs and an even smaller number with Japanese text. Steam also has some viual novels that are playable in Proton if you're on GNU/Linux. You can buy them physically, too, as these editions don't often come with DRM, and so most will work fine in CrossOver. You're best off checking VNDB or Seiya-Saiga.com to see if the game is encumbered by DRM first.

CrossOver doesn't do any better than Wine in this regard.

Is CrossOver Worth it?

If you're a macOS user, CrossOver is a great option. You'll have access to a much larger library of games, and are able to manage it with a nice interface instead of a command line. If you play visual novels in Japanese...it's okay, but Lutris is a far better option As macOS users don't have access to Lutris, users will have to settle for CrossOver or PlayOnMac.

GNU/Linux users can stick to Steam games and use Proton, or branch out to GOG and Epic and use Lutris and Heroic Games Launcher, respectively. If you want to run Battle.Net, Origin, or Ubisoft Connect, it could be a good idea to get CrossOver to make sure the clients are stable. However, both types of users should keep in mind that CrossOver uses a stable version of Wine that isn't as up-to-date with the latest fixes for games that Wine-Staging has, and only catches up after almost a year, so you might still be better off with Lutris or plain Wine.

One thing that CrossOver does better than Wine is easily creating .desktop files so that you can launch the game from your desktop's app launcher, though Lutris also does this. It's quite a nice feature. ChromeOS users could certainly benefit from CrossOver as well, as while Steam has expressed a desire to officially unofficially support these users with Proton, that has yet to happen.

CrossOver seems to target productivity applications—or, really, just Microsoft Office, Quicken, Scrivener, and Kindle—so if you want to use these applications on GNU/Linux, I recommend it. I use CrossOver for Microsoft Office, but never found myself trying to use it for games (I much prefer Lutris and plain wine-staging) until writing this article. But if you want Adobe applications on GNU/Linux, keep dreaming.

You might consider paying for a CrossOver subscription just to support active Wine development, or as an opportunity to influence the company and its developers by voting for an application you want support for. Note, of course, that this is an opportunity, not a guarantee. I would speculate that CodeWeavers are more focused on Proton development at this juncture, as I suspect that this is currently their greatest source of revenue, as well as most of their CrossOver customers apparently being gamers, but who knows?

I feel that CrossOver's biggest weakness is the scarce few applications it seems to implement "hacks" for to improve compatibility compared to Wine. It would be great if there were a way to search for apps that CrossOver specifically improves compatibility at all costs for so I could verify this. CrossOver is a great opportunity to try things that wouldn't be possible with wine-staging, and I'd like to see a lot more of that. As most popular software like Adobe Creative Cloud implements complex and pervasive DRM, it's not hard to see why CrossOver only supports a very small number of popular Windows applications. Unfortunately, this may be largely out of their hands.

You can read more about CrossOver over at CodeWeavers and trial the full application for 14 days to decide whether it's for you or not:

 More About Crossover

Alternatives

There are a lot of implementations of Wine out there beyond CrossOver, each with their own distinct advantages. I'm only going to focus on GNU/Linux, but macOS users can look into PlayOnMac in their own time.

Wine Staging & Winetricks

The Wine Staging branch is what many would consider the main branch of Wine. It's the latest release of Wine with the newest fixes, but doesn't guarantee stability. It has no graphical user interface; you need to interact with it through a terminal. You'll be building and managing your own wineprefixes. Winetricks offers installation of closed-source libraries, dlls, etc. that are necessary for some software to work properly.

Wine-Stable is much the same as Wine-Staging, except it doesn't have the latest updates and fixes. But it'll be more reliable for applications that currently work.

It's not hard to see why many people don't want to use Wine-staging or stable without a wrapper. Once you understand it, it's fairly easy to use, but there is a learning curve.

 More About Wine


Lutris

Lutris is an application launcher and library manager for GNU/Linux. It's also a frontend for Wine. It allows you to easily configure Wine settings, including environment variables, per game without having to think about things too hard. It can use the version of Wine installed through your package manager, or it can use any Wine builds you drop into the ~/.local/share/lutris directory. You can also install Wine builds inside the Lutris interface You can also use Lutris purely as a library and launcher for native Linux games without the need for Wine. It deals with emulation, as well.

It's the most complete and mature Wine and game launcher available.

The user interface could use some improvements (like being able to set the cover at the same time you're adding a new game), but once you get it, it's very convenient and pleasant to use. I recommend installing this regardless if you have an interest in playing games. I find it better at managing games than CrossOver. To have a game appear in your app launcher, right click the game in Lutris and click "Create Application Menu Shortcut".

 More About Lutris


Bottles

Bottles sprung up more recently than the other applications mentioned in this article, but it has an impressive set of features. I've used it for about a week. It has a much more polished user interface than Lutris or even CrossOver. It's easy to use and has a lot of options for managing bottles. You can only use it for playing games in Wine; not native games.

I think Bottles is really cool. It's really easy to use, looks pretty, and I had a great experience with it. Unlike Lutris, you can easily install third-party components you'd usually manage with Winetricks, like fakejapanese, directshow, or media foundation.

Notably, it supports versioning, so you can restore your bottle to a point where it was stable and working if an update or configuration change goes wrong. It has some really nifty features.

You can install it via Flatpak:

flatpak install com.usebottles.bottles

Then, install Flatseal and enable filesystem=home for Bottles so it can access your game files. Restart Bottles. Everything should work fine then!

 More About Bottles


VFIO GPU Passthrough

If you are running GNU/Linux, while this isn't a Wine implementation, this is an interesting option for taking full advantage of your hardware and running every Windows application you want (except Rainbow Six Siege, I suppose), and you'll be able to run two operating systems at once. You'll need a second GPU (but they both need to support IOMMU), a second mouse and keyboard, at least a second HDMI port but you'll probably want a second monitor instead, and some grit. I've not done this myself, as I don't need Adobe/Affinity Creative Suite on my personal computers. And I also don't want to buy a second GPU in this climate.

You'll need virt-manager, libvirt, and other software to get this going. If you just want to learn about KVM/QEMU virtualisation, I've written a guide about it.

For more information, start here:

 More About PCI Passthrough

Comments are closed