Bottles
Easily manage prefix in a new way! (Run Windows software and games on Linux).
🦾 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.
Snap
Bottles can also be installed as a snap from the Snapcraft repository. Click
the button below.
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 Fedoralibglib2.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
Source: https://pythonawesome.com/easily-manage-wineprefix-using-environments-with-python/