Refer to the Contributing page.
Use the development manifest in this repository when working on Bottles. To build a stable release locally, use the manifest maintained by Flathub.
- Install
org.flatpak.Builderfrom Flathub - Clone
https://github.com/bottlesdevs/Bottles.git(or your fork) - Run
flatpak run org.flatpak.Builder --install --install-deps-from=flathub --default-branch=master --force-clean build-dir build-aux/com.usebottles.bottles.Devel.jsonin the terminal from the root of the repository (use--userif necessary) - Run
flatpak run com.usebottles.bottles.Develto launch it
The authoritative manifest for the stable package is maintained in the Flathub repository. It defines the Bottles source, dependencies, runtime, and permissions used for each release.
-
Install
org.flatpak.Builderfrom Flathub -
Clone
https://github.com/flathub/com.usebottles.bottles.git -
Run the following command from the root of the cloned repository:
flatpak run org.flatpak.Builder \ --user \ --install \ --install-deps-from=flathub \ --default-branch=local \ --force-clean \ build-dir \ com.usebottles.bottles.yml
-
Run
flatpak run com.usebottles.bottles//localto launch it
The local branch is installed alongside the Flathub branch. Both use the same application ID and Bottles data directory, so changes made by either build affect the other. To build an older release, use git log -- com.usebottles.bottles.src.yaml to find and check out its Flathub commit before running the build command.
Since Bottles is primarily and officially distributed as a Flatpak, we only provide instructions to directly build it inside a Flatpak environment:
- Download and install the latest build of Bottles: bottles-x86_64.zip. Unzip it, and run
flatpak install bottles.flatpak(use--userif necessary) - Run
flatpak run -d --filesystem=$PWD --command=bash com.usebottles.bottles.Develfrom the root of the repository, followed by./build-aux/install.sh. This will build Bottles and install it under thebuild/directory. - Run
./build/bin/bottlesto launch Bottles
Due to GNOME Builder limitations, Builder cannot build Bottles for the time being; see GNOME/gnome-builder#2061 for more context. This is the best workaround we can provide.
This project follows the GNOME Code of Conduct. You are expected to follow it in all Bottles spaces, such as this repository, the project's social media, messenger chats and forums. Bigotry and harassment will not be tolerated.



