Wine, which is short for Wine is Not an Emulator, is the flagship open-source compatibility layer available within the Linux ecosystem – or generally POSIX (Portable Operating System Interface) compliant – for Windows applications. A decent open source project has been established with the primary goal of ensuring the long-term potential of Windows on Linux.
Considering the continuous development of the platform, Wine has become instrumental in helping Windows users, especially those new to Linux to transition to a Linux-based operating system as their daily driver.
However, it hasn’t had a lot of success due to the incompatibility with some Windows applications that may arise and as a result, many are often left disappointed as they usually expect a smooth experience as they had on Windows which is no further from the truth.
For what it’s worth, these apps have their unique dependencies that Wine may not be able to satisfy and this is where Bottles comes in.
Bottles is one of the main solutions that aims to change that narrative by allowing you to manually configure the dependencies your app may need with little trouble. Even better, Bottles also satisfies the often unique cases that games may require including support for some of the biggest gaming libraries like Steam.
Bottles as a new platform dependent on Wine is looking to reorient the approach of Windows application installation by providing a sandboxed environment that properly isolates your “Bottles” installation provided you go with the Flatpak route of installation.
Essentially, having such a setup means that you get to decide when Bottles accesses your personal files/home directory. With versioning manager baked in, Bottle is able to help you return to a state that worked previously.
However, in order to benefit from this feature, you have to first enable it by going to the Versioning tab. Once enabled, Bottles basically creates a brand new state with your default configuration and a new one every time you add a new dependency to your installation.
Installing Bottles in Linux
With a combination of ready-to-use settings, libraries, and dependencies, Bottles has essentially redefined the scope of Windows applications on Linux. This is, for all intents and purposes, a new way to handle Windows prefixes using environments that go beyond the ordinary.
Installing bottles is a pretty straightforward affair as the developers recommend the Flatpak route which is by far the easiest way to configure such an installation in an isolated environment that you can easily nuke when you’re done or whenever you decide you no longer need Windows on your Linux system.
For Ubuntu Systems, simply executes the commands below consecutively.
$ sudo add-apt-repository ppa:flatpak/stable $ sudo apt update $ sudo apt install flatpak
For other systems, you need to set up Flatpak and then go to Flathub to install Bottles as shown.
$ flatpak install flathub com.usebottles.bottles $ flatpak run com.usebottles.bottles
Configuring Bottles in Linux
With an integrated dependency manager, bottles don’t just assume the preconfigured dependencies to satisfy every use case you may have, instead, it does a pretty good job of enabling you to individually manage the dependencies for every windows application you may need to install.
With the creation of every Bottle, you’re establishing a unique isolated environment for the designated application.
By default in the 2022.2.14 update, Bottles has taken this a step further by enabling installers that further simplify the process of getting compatible Windows applications running on your Linux system.
Bottle installers have been developed with the help of the community which is quite inspiring considering the huge benefit of automating the entire installation process including a painless dependency configuration.
With the ability to choose between Gaming and Software environments you can rapidly optimize your Windows application deployment. But that’s not all; you can decide to configure a custom environment – reserved for advanced users – if you have a more peculiar use case. You can learn how you can better manipulate Bottles here.
For what it’s worth, the default options should work just fine without any real caveat. Even better? Bottles have cleverly integrated a system that shows the compatibility level of each application available via the installers.
This essentially gives you a quick visual overview of the compatibility level of each application. The levels are Bronze to Silver, Gold, and Platinum.
Given that the platform is highly tweakable, You can effectively choose from a variety of preconfigured options that further streamlines the setup process. These options include dxvk, vkd3d, gamemode, esync, fsync, and potentially even more.
While there are undoubtedly alternatives to the Bottles system, there’s arguably little to no real effort like Bottles that essentially dumbs down the entire process of Windows applications on Linux while offering a pretty neat UI to go along. This further maximizes the ability to convert Windows users over to Linux.