Release Day 2022.7.14

today is

Release Day!

It’s Release Day again!

Two more weeks of work have been done and it’s time to celebrate another release day!

This release brings many new features, performance improvements and bug fixes.

News

Ok now let’s get to the point. What’s new in this version?

Soda - For an Even More Sparkling Experience

With this release we introduce a new default runner, designed to solve compatibility issues and decrease the risk of regressions given by Wine’s fast development.

Soda - new default runner

Why?

The decision to create a new runner took a long time and was not easy, the first tests began months ago. The main reason that led us to this choice is mainly the direction that Bottles is taking and the need to offer a runner that is as compatible as possible with the type of software run by our users (mostly games) but without penalizing all others.

Caffe (the previous runner) is based on Wine and strictly follows its updates, quickly receiving all improvements but also any regressions. Although Caffe provides extra patches that fix some of these and improve software compatibility, it was not always the best choice and users were forced to choose third-party runners that might not be officially supported when used in Bottles.

We had to find a compromise, a development branch that would be kept separate from Wine but at the same time receive improvements and fixes. We therefore chose to base the new runner on Valve’s Wine, the base used for Proton. It was not very complex since we use TKG for our runner builds and this allows us to compile a variant based on this version of Wine as well as allowing us to apply a large number of patches and possible custom without too many complexities (we will never stop thanking the TKG team for the enormous and valuable work they do).

As a result was born Soda, a runner based on Valve’s Wine, with patches from Proton, TKG and GE. This runner is designed and tested for Bottles and is officially supported, giving us the freedom to fix any problems independently.

The versioning of this release will be different from Coffee and Vanilla since Valve’s Wine is based on Wine 7.0 and follows its own release cycle. Each Soda release will be based on the most up-to-date branch and will be marked with a number indicating its build (e.g. 7.0-2).

About the name.. well we think it will be a sparkling experience 👀.

Will Caffe be Deprecated?

No. Like Vaniglia, we will keep Caffe updated with latest Wine updates and patches.

Experimental Sandbox per Bottle

We announced the intent to provide a bottle sandbox several months ago, a sandbox that would allow the permissions of the environment in which the bottle lives to be restricted. With this release this is present as an experimental feature (in early development).

The sandbox uses flatpak-spawn when Bottles is installed as Flatpak and bubblewrap for all other formats.

As always, to activate the experiment, you need to access the Bottles preferences and activate the dedicated toggle in the Experiments section, then restart Bottles.

New Installers UI

Since the launch of the installers, we have collected all the reports and suggestions and redesigned the user experience according to these. We really like the result and it gives the user a clear view of what is happening and the status of the installation.

Once the desired installer is chosen, a dialog is shown asking for confirmation, any other settings follow if required, and the installation process is then displayed in a minimal, clean interface.

The progress status is no longer silent and now shows what is happening (e.g., whether it is installing dependencies, configuring bottle parameters, installing components, or something else).

Ubisoft Connect Integration

Work continues to integrate Bottles with the Windows software it runs. We are still in the gaming context, and after Steam and Epic, comes support for the Ubisoft Connect launcher.

Once the integration is enabled and Ubisoft Connect is installed in the bottle, Bottles will be able to detect the games installed through the launcher and will list them in the program list. These will be launched through the launcher so as to benefit from the cloud and all necessary implementations and controls.

Library Mode Improvements

Work continues on Library Mode, the multi-bottle library for cataloging all installed programs.

Now the library can be reached from the dedicated tab directly on the main screen of Bottles. We also started the integration with covers, added support for Steam, Epic Games Store and Ubisoft Connect integrations, fixed the icons and cleaned up the design in general to make it more uniform with the libadwaita redesign.

All other changes

There are many other changes and improvements in this release. Below are some noteworthy ones, for all others, please refer to the GitHub organization.

  • New experimental feature: sandbox per bottle
  • Soda is the default runner based on Valve’s Wine plus some TKG/GE patches
  • Installers has a new refreshed UI with more info and tracking process
  • Ubisoft Connect integration
  • Wine LoL runners are now unlocked in Flatpak
  • New “standalone” option in bottles-cli to generate a custom script for running programs in a bottle without passing though Bottles
  • Some performance improvements
  • New CLI download progress bar with speed, size and eta
  • New SteamManager which improve performances a bit
  • Improved UI for experimental library mode
  • Discovered Epic Games are now launched brought the Epic Games Store, using Cloud Sync and Anti cheat
  • Core dependencies are now checked on boot on non Flatpak packages
  • Now setting the env var DXVK_CONFIG_FILE=bottle_root will automatically point to the dxvk.conf file in the bottle root
  • Some dialogs improvements (thanks to @TheEvilSkeleton)
  • A dialog warning of the sandbox is shown by launching the first executable
  • Improved bottle template caching for smallest sizes
  • Runners now show a description of their purpose and composition
  • Minor UI improvements
  • Fix for broken templates not being re-generated
  • Fix dependencies keys not being removed on uninstall
  • Fix duplicated dependencies on re-install
  • Fix a regression in hiding auto-discovered programs
  • Fix a regression in adding entries to the library, were not supporting the new programs structure
  • Fix Wine-GE builds being detected as Proton builds (thanks to @nicobatty)
  • Fix a regression in the issues similarity check for the crash report dialog
  • Fix issue of being able to add colon to bottle name (thanks to @axtloss)
  • Fix issue of invisible checkbox in ‘launch as terminal’ dropdown (thanks to @axtloss)
  • Fix a bug in External_Programs migration when its structure was compromised
  • Fix duplicated programs when re-executing installers
  • Fix UI disappearing on two-finger swipe
  • Fix a regression in Environment Variables dialog not storing new entries on first save
  • Fix states not being displayed on first state generation
  • Fix regression in bottles-cli edit option
  • Vietnamese translations thanks to @lebao3105, @CuCai2413
  • Chinese (Simplified) translations thanks to Eric
  • Dutch translations thanks to @flipflop97
  • Norwegian translations Bokmål thanks to Stian Øverbye
  • Russian translations thanks to @Knebergish, Nikita Epifanov, @Smoque
  • Czech translations thanks to @vikdevelop
  • Polish translations thanks to @Mikutut
  • Catalan translations thanks to @rogervc
  • Swedish translations thanks to @alvarlagerlof, @Lemonmeth
  • Japanese translations thanks to @ryonakano
  • Hungarian translations thanks to @Jabybaby
  • Serbian translations thanks to Andrija Djakovic
  • Indonesian translations thanks to @engkih
  • Portuguese (Brazil) translations thanks to @vitorhcl
  • Korean translations thanks to @PolyPaul

Thanks to all users who contributed to this release!

~ Bottles’ developers

Download 2022.7.14

Do you like Bottles?

If so, please consider to support our work by directly contribute to the Source Code or buy us a Coffee.

Need support?

Reach us through the official Forums , via GitHub issues or send us a Tweet.

This website uses cookies to ensure you get the best experience on our website. Find out more