bottlesdevs / Bottles

Run Windows software and games on Linux
https://usebottles.com
GNU General Public License v3.0
6.2k stars 258 forks source link

Move to GTK4 and libadwaita #610

Closed mirkobrombin closed 2 years ago

mirkobrombin commented 2 years ago

GTK4 and Libadwaita is now supported by a large number of distributions.

Some distributions may not offer libadwaita out of the box (or at all) but I don't see a limitation, as we provide the flatpak, appimage and snap version for these reasons as well.

Blocking stuff

Not blocking but good to have

Todo

jannuary commented 2 years ago

WebKit 2.31+ in GNOME SDK (Flatpak)

GNOME Master SDK now includes WebKit.

mirkobrombin commented 2 years ago

WebKit 2.31+ in GNOME SDK (Flatpak)

GNOME Master SDK now includes WebKit.

Nice!

pietrodicaprio commented 2 years ago

libadwaita is now released as stable, documentation available here

joaopauloalbq commented 2 years ago

I would like to use Bottles in other interfaces besides GNOME so don't use libadwaita please.

I use Awesome btw
TheEvilSkeleton commented 2 years ago

I would like to use Bottles in other interfaces besides GNOME so don't use libadwaita please.

They want to modularize the Bottles backend so other developers can create different front-ends. The fact that it's going to be ported to libadwaita isn't really a problem because you can still change themes. Change the environment variable of GTK_THEME to the theme you want, and it should pick it up. A better solution is using this libadwaita-theme-changer.

Either way, once it's modularized, we might see TUI or Qt front-ends. Perhaps a different GTK front-end too.

joaopauloalbq commented 2 years ago

I think it's better a GUI that adapts to all interfaces, but different front-ends also solve the problem.

jannuary commented 2 years ago

You're free to make one that "adapts to all interfaces" :)

naipotato commented 2 years ago

You can't have a GUI that can adapt to all existing HIGs: either you choose one or you choose none. Bottles had already adopted GNOME HIGs (headerbars, boxed lists, etc.), so the jump to libadwaita is natural

mirkobrombin commented 2 years ago

I think it's better a GUI that adapts to all interfaces, but different front-ends also solve the problem.

I understand what you are saying and it would be really very nice but also very complex, certainly not impossible. Unfortunately, however, we do not have the effort to accept this challenge and we prefer to focus on things that are more important to us, such as:

joaopauloalbq commented 2 years ago

You can't have a GUI that can adapt to all existing HIGs: either you choose one or you choose none

Drawing by maoschanz did a good job of adapting to different interfaces.

joaopauloalbq commented 2 years ago

I understand what you are saying and it would be really very nice but also very complex, certainly not impossible. Unfortunately, however, we do not have the effort to accept this challenge and we prefer to focus on things that are more important to us

I understand, it is understandable to choose just one HIG, certainly more complex to achieve this visual consistency with other environments.

mirkobrombin commented 2 years ago

I understand what you are saying and it would be really very nice but also very complex, certainly not impossible. Unfortunately, however, we do not have the effort to accept this challenge and we prefer to focus on things that are more important to us

I understand, it is understandable to choose just one HIG, certainly more complex to achieve this visual consistency with other environments.

This is why we are moving the backend out, so other developers can make a new frontend using qt or any other. Also other gtk client for xfce etc

GeorgesStavracas commented 2 years ago

Just found this issue, and I'd like to let you all know:

Vte doesn't support GTK4 (needed by EasyTerm)

VTE has a build flag to build against GTK4 these days. There is a lot to improve in the GTK4 version, but it works and you can already use it.