Bottles

Easily manage prefix in a new way! (Run Windows software and games on Linux).

Bottlesv

? Features

  • Create bottles based on environments (a set of rules and dependencies)
  • Access to a customizable environment for all your experiments
  • Run every executable (.exe/.msi/.bat) in your bottles, using the context menu in your file manager
  • Integrated management and storage for executable file arguments
  • Support for custom environment variables
  • Simplified DLL overrides
  • Manage and install multiple wine/proton/dxvk versions and on-the-fly change
  • Various optimizations for better gaming performance (esync, fsync, dxvk, cache, shader compiler, offload .. and much more.)
  • Tweak different wine prefix settings, without leaving Bottles
  • Automated dxvk installation
  • System for checking runner updates for the bottle and automatic repair in case of breakage
  • Integrated Dependencies installer with compatibility check based on a community-driver repository
  • Detection of installed programs
  • Integrated Task manager for wine processes
  • Easy access to ProtonDB and WineHQ for support
  • Configurations update system across Bottles versions
  • Backup and Import bottles from older version and from other managers (Lutris, POL, ..)
  • Bottles versioning (experimental)
  • .. and much more that you can find by installing Bottles!

? Work in progress

  • Installer manager #55
  • Import backup from configuration file
  • Optional sandboxed bottles

↗️ Install

Choose your preferred installation method.

? AppImage

Bottles' AppImage is released on two channels (Stable and Unstable), the
second one is not recommended in a production environment.

Download, then:

chmod +x Bottles-devel-x86_64.AppImage
./Bottles-devel-x86_64.AppImage

And you're done!

Flatpak

Bottles can also be installed via Flatpak from the Flathub repository. Click
the button below.

Download on Flathub

Snap

Bottles can also be installed as a snap from the Snapcraft repository. Click
the button below.

Get it from the Snap Store

Platform specific packages

We also offer Bottles as platform-specific installation packages.

Distro Package Name/Link
Debian/Ubuntu com.usebottles.bottles.deb

Unofficial packages

These packages are maitained by our community but not officialy supported.

Distro Package Name/Link Maintainer Status
Arch Linux bottles-git (AUR) Talebian Active
Arch Linux bottles (AUR) francescomasala Active
Fedora bottles tim77 Active
Void linux bottles andry-dev Active
NixOS bottles bloomvdomino Active
Tumbleweed bottles WhiXard Not maintained

Notices for package maintainers

We are happy to see packaged Bottles but we ask you to respect some small rules:

  • The package must be bottles, in other distributions it is possible to use suffixes (e.g. bottles-git on Arch Linux for the git based package) while on others the RDNN format is required (e.g. com.usebottles.bottles on elementary OS and Flathub repository). All other nomenclatures are discouraged.
  • In the current development phase, the version corresponds to the formula (2.commit, e.g. 2.a005f01), where possible use this formula throughout the development phase. For stable and 'stable development' release you can use the version in the VERSION file and its release. Please don't travel into the future with releases. It might confuse users.
  • Do not package external files and do not make changes to the code, no hard script. Obviously with the exception of files essential for packaging.
    Once the package is published, you can open a Pull Request to add it to the packages table above! Thanks :heart:!

?️ Build with meson

Instead of use the Appimage you can choose to build your own Bottles from source.

Requirements

  • meson
  • ninja
  • python3
  • glib
    • glib2-devel on Fedora
    • libglib2.0-dev on Debian/Ubuntu

Build

mkdir build
meson build && cd build
ninja -j$(nproc)
sudo ninja install

Uninstall

sudo ninja uninstall

?️ Flatpak (build)

We provide an official Flatpak package.

Dependencies

  • org.gnome.Sdk
  • org.gnome.Sdk.Compat.i386
  • org.freedesktop.Sdk.Extension.toolchain-i386

Build

flatpak-builder --repo=bottles --force-clean --user build-dir com.usebottles.bottles.yml
flatpak remote-add --user bottles bottles --no-gpg-verify
flatpak install --user bottles com.usebottles.bottles

Run

flatpak run com.usebottles.bottles

?️ Snap (build)

We also provide an initial Snap support.
This is a package not fully tested.

Build

snapcraft
snap install bottles*.snap --dangerous
snap run bottles

Shortcuts

Shortcut Action
Ctrl+Q Close Bottles
Ctrl+R Reload the Bottles list
F1 Go to the documentation
Esc Go back

GitHub

https://github.com/bottlesdevs/Bottles