cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
LatinCanuck
Making moves
Status: Trending idea

BACKGROUND

  • GNOME is the most popular Desktop Environment for Linux.
  • GTK4 is the toolkit used by GNOME to create graphical applications and widgets.
  • Libwaita is a GTK4 library that helps developers create responsive and mobile friendly applications.

Firefox with a GTK4 Theme among other apps.Firefox with a GTK4 Theme among other apps.

 CURRENT SITUATION

Right now, you can install Firefox and load a CSS theme to make it look like a native GNOME App.
Source: https://github.com/rafaelmardojai/firefox-gnome-theme

While it looks really nice, it would be nicer to have a native GTK4 Firefox Browser with responsive design because there's also a GNOME-based phone environment called PHOSH.

SOLUTION

I propose a new browser called: Firefox-GTK. A collaborative project between Mozilla and the GNOME Foundation. It would be the same Firefox we love and enjoy, but tailored for the GNOME Desktop. If Firefox and GNOME Web had a baby, it would be Firefox-GTK.

WIIFM

  •  A more aesthetic Firefox Browser for GNOME users (GNOME is the default DE for Fedora, Ubuntu, Debian, CentOS, RHEL, EndlessOS, SUSE, among others).
  • Firefox will take full advantage of GTK4 with a fully responsive application that could adapt to any screen, with better touchscreen and touchpad gestures.
  • Better Integration with the desktop and other GTK4 Applications, and other GNOME APIs

CONCLUSION

I am 100% positive that GNOME will become a real contender against Apple and Google in the mobile space. When Mozilla released Firefox OS, the timing wasn't right. But now we have powerful PWAs, and Mozilla doesn't have to reinvent the wheel. We already have a plethora of Linux Operating Systems that work on phones (mostly the PinePhone), We have a Graphical Environment for phones called PHOSH, We have Powerfull PWAs, and many native GNOME Apps. All we need is a powerful web browser to create the perfect privacy-focused ecosystem.

 

A preview of what PHOSH is capable of right now.

Note: There's already a request on Bugzilla about porting Firefox to GTK. Report # 1701123. Furthermore, This topic is also mainstream on Reddit.

24 Comments
Sifat06
Strollin' around

I think Mozilla really should make a gtk4 version of Firefox. It doesn't matter if they use libadwaita or not, because someone can fork it later. What really needs to be done is to port gecko to gtk4. If other DE's want native looking browser, they can use a native looking gtk4 theme. As mentioned above, this will benefit the Foss community. If it takes relatively less effort for them, they should do it.

Pixol
New member

Agreed. The Linux community respects Firefox and Firefox developers should return the favor. It’s extremely important for Firefox to maintain a healthy relationship with the Linux community and Gnome while promoting exciting innovation such as GTK4 and Libadwaita. 

Anonymous
Not applicable

Gnome has Gnome Web because Firefox would be incompatible with Gnome's philosophy. Since they don't need Firefox, there is no need for Firefox to overreach.

kepler
New member

Porting Firefox to GTK4 on Linux and BSD may or may not make sense but using libadwaita definitely doesn't make sense. libadwaita is a library for building apps specifically for GNOME that follow the GNOME Human Interface Guidelines and this can be confirmed on this blog post by Adrien Plazas, a GNOME app developer. Firefox is NOT a GNOME app.

Firefox uses GTK3 on Linux and BSD right now and I don't think it uses libhandy so I don't see why Firefox would isolate every other GUI community on Linux and BSD by using libadwaita, including KDE and people who prefer platform neutral GUI apps on window managers like i3wm and sway. Some GNOME users may be enthusiastic enough to ignore the existence of these communities but not everyone is.

If anything, I'd argue that introducing a Qt based GUI for Firefox makes more sense because Qt is more of a cross platform library than GTK and using Qt would be inclusive towards people from the KDE community on Linux as well. LibreOffice provides a Qt frontend and Chromium is working on a Qt5 frontend as well. Here's the bug tracker for Qt5 implementation on Chromium's website.

Moreover, I'm not sure if becoming a GNOME specific app make sense considering some GNOME developers have been known to call their users "clowns" and part of the "internet peanut gallery". If a KDE user wants to use the KDE file picker, there's no way to do that right now except using Firefox on Flatpak, which is yet another GNOME blessed technology which some users may not want to use and may prefer using packages from their package manager.

egiwaq
New member

> GNOME is the most popular Desktop Environment for Linux

This is difficult to say. The kde reddit has more members than the gnome reddit. It is equally difficult to figure out which distro is the most popular one. There is no good data on this.

 

> browsers these days are basically an os in themselves. i think it is perfectly justified for them to have their entirely own design.

Firefox does not do multiprocess scheduling, paging and direct hardware access, does it? I want Firefox to blend in with my other applications. I don't like browser that look foreign. Where is the connection between "Firefox is an OS" and "It should look different from all other applications on my computer"? Seriously, I don't see it

 

> It doesn't matter if they use libadwaita or not, because someone can fork it later.

So if I want it to integrate with the looks of my system, I should get Firefox from shady AUR or github projects with little to no stars, instead of using the updated secure upstream official Firefox package? No thanks.

 

> It’s extremely important for Firefox to maintain a healthy relationship with the Linux community and Gnome while promoting exciting innovation such as GTK4 and Libadwaita.

Therefore it should alienate all the KDE users, because it has the libadwaita looks?

 

Please DO NOT switch to Libadwaita. Please.

nitanmarcel
New member

So much misunderstanding here.

This idea isn't about moving Firefox to gtk4 and libadwata. It's about creating a separate Firefox package that would be based. The Firefox other systems use will be the same, just Linux especially GNOME users will have the possibility to install a Firefox package that will take full advantage of gtk4 and libadwata.

Also taken from the OP description, he wants a package that wants to take would be fully usable on mobile Linux distributions which is pretty new but it starts raising up getting closer (hopefully) to be a competitor of Google and Apple mobile OSs.

I support this idea as it would meant support from a bigger company as Firefox which might help these new fresh mobile OSs to rise.

trickypr
Strollin' around

I want to provide some input on the technical issues that may surround this.

A brief (and sort of incorrect) overview of Gecko

Gecko is an interesting mash up of technologies. Whilst there are native components (like some buttons), a vast majority of the UI is written in xhtml (legacy code is called xul, which was similar). Even parts of the UI that are intended to emulate a native "feel", like the places window, are xhtml. This is why the entire browser can be themed with css, because it is a fancy webpage (sorta). It is also a key reason why Firefox looks and runs (mostly) the same on every platform.

trickypr_0-1672920221851.png

A screenshot of devtools opened up to a native-looking dropdown menu in `chrome://browser/content/places/places.xhtml`

The browser engine is used to render the UI as well as the webpage, which would make it difficult to swap out the UI for an alternative toolkit.

GTK4 in the browser

GTK4 support in the toolkit (the components used by Firefox, Thunderbird, Seamonkey etc), is currently under "P5: Will not fix, but will accept a patch". I am not going to link the bug here to prevent people spamming it.

One of the primary issues raised in the bug is that it would lead to an enormous backwards compatibility break. The proposed solution is to do what chromium does and dynamically bind to the native GTK version, bypassing the compatibility issues.

There are other problems that would make me doubt a contributor providing a patch in the near future, notably:

FWIW this involves killing basically all the native widget drawing code, since that's not allowed in GTK 4.

Ultimately, I think that gecko will lean more on XDG portals rather than updating GTK, at least for 2-10 years.

Build your own

I propose a new browser called: Firefox-GTK

You can do that. There are people who build a KDE focused Firefox fork called Firedragon. I maintain a different Firefox fork (with a different scope than this idea), and it is fairly easy to pick up.

Open source is built on people forking and improving software because they have an idea. If you want LibAdwaita style theming with improved integration with Gnome APIs, you can fork it and add it your self. Given something so far off Firefox's current aim, I think that is the best way to implement this in a timely manner.

nose_gnome
Making moves

It would be great if it also added the ability use the built in search feature in GNOME to search Firefox as well, like how it works with GNOME's own browser

Adonnen
Strollin' around

@nose_gnomeThis is already implemented, but it has several issues, see my idea.