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
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.