Bottles v3 is here!
Bottles v3 has been available for a few days in the stable distribution branch.
This update mainly introduces two big news:
- the new beautiful and intuitive UI
- the new component manager as well as many (really many) bugfixes and translations.
As for the UI, our graphic designers (Noëlle and Alvar Lagerlöf) have done an immense job of study and design, placing each element in its place and creating a complete user experience.
This is not a simple dress, the new interface has led us to modify a lot of code below the hood, some sections have been completely rewritten, others have undergone drastic changes. All with the sole purpose of providing the best possible user experience.
More info about the next UI steps.
Chardonnay and other components
A great novelty of this update is certainly the management of the components (wine, proton, dxvk, dependencies, ..) specifically for the Chardonnay component.
Chardonnay is our Wine runner. Unlike others, it has it sole purpose of being a Vanilla build. With the only patches applied:
The idea is to deliver the latest Wine release as fast as possible. Chardonnay is offers 2 build:
- unstable (downloadable from Bottles by enabling the RC flag “not recommended, expect bugs”)
The download of the components in Bottles v3, takes place through ours repository, here they are cataloged together with the version, download url and checksum for checking the integrity of files.
Bottles v3 is a giant update and it’s hard for us to explain everything that’s been done, for this we invite the most nerdy to browse our repository GitHub
As mentioned, this was a very important update. To date, Bottles v3 lives with a fairly stable code, a solid foundation of functionality and a beautiful new UI.
Of course this may be enough but experience teaches me that over time projects evolve and functionalities increase with needs. Aware of this, I am sure that we cannot add many other features without weakening the code or having to rewrite it to a large extent. Therefore We decided to update the v3 only with bugfixes, translations and small improvements in order to focus all our energies on the next major release: v4.
What about v4?
With the aim of offering an easily customizable and extendable base, Bottles will be splitted into 4 main components:
- bottles-gtk (Bottles)
libwine is a library that acts as an API for Wine, this will include all the methods needed to work with a wineprefix, e.g.:
- replace dll (with automatic backup)
- dll overrides
- add/edit/remove register key
- change Windows version
- uninstall software
libbottles is the library containing the Bottles core, this contains all the methods to manage the bottles, e.g.:
- create bottles
- manage environments
- manage dependencies
- manage runners/dxvk (in short, the components)
- manage installers (i.e. installing programs via our centralized repository)
- backups (import/export)
- the download manager
it also depends on the previous one, libwine.
Bottles (bottles-gtk) is the final (Gtk) version of Bottles, with the same UI already seen in v3. This UI will then use libbottles to communicate with our bottles.
It’s not hard to imagine what’s the purpose of bottles-cli at this point.
This will also bring the following advantages:
- a library for wine integration via python (the language for the entire project), this can be exploited by other projects which currently lack this functionality
- the ability to create multiple clients for Bottles, possibly one in Qt for better integration with Desktop based on this toolkit (for example KDE Plasma)
- a solid foundation, easy to extend without the need to litter the code
- safer future support and ease for third parties to collaborate on the project
So Bottles v3 will be deprecated and not maintained? NO! Bottles v3 remains actively developed, will receive bugfixes, improvements and new translations. It will continue to be supported until the release of the first stable of v4 (we have no dates).
More info and discussion here.
~ Bottle’s Developers
Download Bottles v3!