Software 44712 Published by

Bottles 66.2 dropped less than 24 hours after version 66.1, patching six critical regressions and tightening network calls for the popular Linux Wine and Proton manager. The hotfix resolves a bottle-deletion crash for multi-drive setups, restores custom Steam Runtime launch flags, and finally handles case-sensitive DLL conflicts for the XACT audio dependency. Lead maintainer Mirko Brombin also merged patches that properly detect NVIDIA's open-source NVK Vulkan driver, move heavy network requests off the main UI thread, and revive the external executable launch workflow. The update is available now via Flatpak and cpak, keeping the 143,000-download-strong community on stable ground before the next major feature push lands.



Bottles 66.2 drops hours after 66.1, slapping six regressions and tightening network calls

The Linux gaming wrapper gets a swift hotfix for Steam Runtime flags, NVK Vulkan detection, and a bottle-deletion crash.

Bottles 66.2 is out, and it shipped less than 24 hours after version 66.1. For a project that regularly handles Windows games and applications on Linux, that kind of turnaround speaks to a remarkably tight maintainer-contributor loop. The release is strictly a maintenance push, but the bugs it patches are exactly the kind that leave users staring at black screens and crash dialogs.

If you aren't familiar with Bottles, it is the de facto open-source tool for managing Wine and Proton prefixes on Linux. You organize apps and games into isolated containers, grab dependencies with a click, and push performance tweaks without touching the terminal. It currently sits at over 143,000 monthly downloads on Flathub, which means whatever breaks in a stable release ripples fast. Version 66.1 shipped yesterday with a handful of new features, and four major regressions were filed within hours of installers starting to populate.

Screenshot_from_2026_02_16_13_28_27

The fixes, in order of pain

The headline issue was bottle deletion. Version 66.1 introduced a crash in manager.py that would segfault whenever you tried to wipe a bottle with mixed library entries. It took a single .get() call on a None object to take out the whole manager. The patch wraps those lookups in null checks, so the deletion actually completes now. Keep in mind that this one only triggered when bottles were stored outside the default Flatpak .var directory. It is a setup many power users rely on for multi-drive rigs, though it did mean the Flatpak sandbox boundaries were already being tested.

Next up is a long-standing dependency headache. Installing the XACT audio library would silently fall back to Wine's builtin xaudio2_0.dll because the extracted files used different casing. Linux file systems are case-sensitive, so both variants ended up sitting side-by-side, and Wine grabbed the wrong one. The new resolver now catches case-insensitive duplicates and properly prioritizes the native build.

Then there is the Steam Runtime fix. If you launch a Proton game through Bottles and pass custom launch flags like -d3d10 or +set, version 66.1 choked on them. The patch makes the launcher mimic how Steam itself passes arguments through the %command% string. Lead maintainer Mirko Brombin notes the change restores native behavior for power users who rely on dash flags.

NVIDIA Vulkan users on distros like Bazzite also got a win. Bottles was failing to detect NVK, the open-source reverse-engineered Vulkan driver, by default. The missing detection caused poor framerate and broke MangoHud stats entirely. The new ICD fallback ensures the driver gets properly recognized before anything else loads.

A couple of smaller but meaningful tweaks round it out. External executables stored outside the bottle's drive_c folder now actually run through Wine again. Scout runtime sessions will not terminate prematurely anymore. The in-app funding flow also received a UI polish pass, which is always welcome for a project running on community donations.

Code health and contributor turnarounds

The most technical change in this release is also the most important for perceived performance. Two urllib.request.urlopen() calls, one for fetching installer icons and another for querying GitHub crash reports, had no timeout. Run those calls on the main GTK thread, and the entire Bottles interface would freeze until the OS socket eventually gave up. Both now use timeout=10, matching the rest of the codebase. The timeouted requests were also moved off the main event loop, which cleans up the thread safety issue that caused the UI hang in the first place.

Lead maintainer Mirko Brombin authored six of the nine commits in this push, merging both external pull requests on the same day. PR #4684 came from @alairon, and the timeout patch came from @bunlongheng. It is a clean contribution cycle: report the issue, ship the patch, merge it before lunch. The project's issue tracker stays active, and the Flatpak sandbox boundaries remain the same.

Bottles 66.2 is available now via Flatpak and cpak. If you were running 66.1 and hit any of these exact regressions, it is worth updating today. The next major feature push has not been dated yet, but the repository stays busy.