Jump to content

GNOME: Difference between revisions

From postmarketOS Wiki
New extension - Hide Volume Indicator
Fossdd (talk | contribs)
modernize
 
(4 intermediate revisions by 3 users not shown)
Line 1: Line 1:
GNOME is a fairly adaptive DE, but GNOME Shell and Mutter are not very comfortable to use on a phone because of their lack of touchscreen gestures. However, this is being [https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-update/ developed] (among other things). Especially Jonas Dreßler has been working on this and whose changes to GNOME Shell/Mutter you can find from his repos ([https://gitlab.gnome.org/verdre/gnome-shell/-/tree/mobile-shell GNOME Shell], [https://gitlab.gnome.org/verdre/mutter/-/tree/mobile-shell Mutter]). It's very WIP stuff, so these changes haven't been added to the official GNOME repos yet. During pmbootstrap init you can choose either "gnome" (the official GNOME release) or "gnome-mobile" (same as the previous one, but including whose WIP changes from Dreßler's repos)
{{Infobox interface
|name=GNOME
|image=File:GNOME_screenshot.png
|imagecaption=GNOME activity page
|graphics=Mutter
|toolkit=Clutter
|package = postmarketos-ui-gnome
}}


== GNOME mobile (standard packages since v23.06) ==
[[Wikipedia:GNOME|GNOME]] (/(ɡ)noʊm/) is a user Interface that aims to be simple and easy to use. It is designed by [[Wikipedia:The GNOME Project|The GNOME Project]] and is composed entirely of free and open-source software. The following variants are available in postmarketOS:


postmarketOS comes with GNOME mobile since v23.06. The user experience is more mature than described in the two sections below. But some quirks remain.
* '''GNOME''', the default, runs traditional GNOME Shell mosten used on the desktops or laptops.
* '''GNOME Mobile''' are patchsets on top of the GNOME stack, that make GNOME suitable for mobile phones and touch devicse.


=== Some unsorted fixes ===
During pmbootstrap init you can choose either <code>gnome</code> (the stock GNOME shell) or <code>gnome-mobile</code> (with mobile patches).
==== Scaling ====
The scaling is sometimes set to 200 %, which will keep Gnome in desktop mode (and not in mobile mode). There are 2 ways to set the display scale:
* Normal way: Change '''Settings''' > '''Display''' > '''Scale''' to 300%.
* Hacky way: Open '''~/.config/monitors.xml''' in editor and set '''scale''' to 3 then reboot or relogin
* Hacky way 2: Remove '''~/.config/monitors.xml''', run '''gsettings set org.gnome.desktop.interface scaling-factor 3''' then relogin.
On some devices or on newer versions of gnome there is no 300% scaling option in settings.
==== Firefox wayland issue ====
On gnome-mobile Firefox doesn't use wayland for rendering.
It causes some issues:
* Scaling issue: Firefox runs in a low-resolution mode and looks ugly.
* Input issue: Firefox doesn't trigger the gnome OSK


Solutions to these issues can be found below:
== GNOME Mobile ==
[https://wiki.postmarketos.org/wiki/Firefox#Scale_and_keyboard_on_wayland_desktop_environments here]


== GNOME with GNOME Shell/Mutter WIP mobile patches ==
{{Infobox interface
{{Infobox interface
| name = Gnome Shell Mobile (Experimental)
| name = GNOME Mobile (Experimental)
| image = File:Gnome-mobile-postmarketos-23.06.png
| image = File:Gnome-mobile-postmarketos-23.06.png
| imagecaption = Gnome Shell w/ mobile patches running on Oneplus 6
| imagecaption = Gnome Shell w/ mobile patches running on Oneplus 6
Line 31: Line 26:
}}
}}


[[File:Gnome-shell-mobile-running-on-oneplus-6.png|250px|thumb|postmarketOS with GNOME Shell/Mutter WIP mobile patches on the OnePlus 6]]
GNOME is a fairly adaptive user interface, however GNOME is not very comfortable to use on a phone because of their lack of touchscreen gestures. Many developers (especially Jonas Dreßler) have been working on this and https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-update/ developed] a prototype. The patches are very work-in-progress and not all of them are upstream yet, however it's being worked on.
 
[[File:Gnome-shell-mobile-running-on-oneplus-6.png|250px|thumb|postmarketOS with GNOME Mobile on the OnePlus 6]]


Gnome Shell/Mutter with mobile patches from fork on https://gitlab.gnome.org/verdre. Currently being upstreamed to the main Gnome Shell/Mutter. Very much WIP. More info: https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-update/
Gnome Shell/Mutter with mobile patches from fork on https://gitlab.gnome.org/verdre. Currently being upstreamed to the main Gnome Shell/Mutter. Very much WIP. More info: https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-update/


=== Troubleshooting ===


=== How to test ===
==== Scaling ====
The scaling is sometimes set to 200 %, which will keep Gnome in desktop mode (and not in mobile mode). There are 2 ways to set the display scale:
* Normal way: Change '''Settings''' > '''Display''' > '''Scale''' to 300%.
* Hacky way: Open '''~/.config/monitors.xml''' in editor and set '''scale''' to 3 then reboot or relogin
* Hacky way 2: Remove '''~/.config/monitors.xml''', run '''gsettings set org.gnome.desktop.interface scaling-factor 3''' then relogin.
On some devices or on newer versions of gnome there is no 300% scaling option in settings.
 
==== Firefox issues under Wayland ====
On gnome-mobile Firefox doesn't use wayland for rendering.
It causes some issues:
* Scaling issue: Firefox runs in a low-resolution mode and looks ugly.
* Input issue: Firefox doesn't trigger the gnome OSK
 
Solutions to these issues can be found below:
[https://wiki.postmarketos.org/wiki/Firefox#Scale_and_keyboard_on_wayland_desktop_environments here]


* Install with pmbootstrap at https://wiki.postmarketos.org/wiki/Installation_guide, selecting `edge`, and selecting `gnome-mobile: (Wayland) Gnome Shell patched to adapt better to phones (Experimental)` under "available user interfaces".
=== Bug reporting ===
* Download images from the edge channel at https://images.postmarketos.org/bpo/edge/ for devices like the Pinephone Pro or Oneplus 6.


=== How to file bugs ===
This is under active development and has many known and unknown bugs. It is packaged here in order to be a development target. '''Please report the issues to postmarketOS before filing upstream''', as at this early stage it is unknown whether potential bugs may be due to packaging or in the code upstream.
This is under active development and has many known and unknown bugs. It is packaged here in order to be a development target. '''Please report the issues to postmarketOS before filing upstream''', as at this early stage it is unknown whether potential bugs may be due to packaging or in the code upstream.


Line 47: Line 57:
* {{MR|3404|pmaports}}: initial MR
* {{MR|3404|pmaports}}: initial MR


== GNOME without GNOME Shell/Mutter WIP mobile patches ==
== Extensions ==
{{Infobox interface
| name = Gnome Shell
| image = File:Gnome_not_mobile.png
| imagecaption = Gnome Shell without mobile patches running on Redmi 2
| graphics = Mutter
| toolkit = Clutter
| package = postmarketos-ui-gnome
}}
 
[[File:Kc-gnome-postmarketos.jpg|250px|thumb|postmarketOS with GNOME without GNOME Shell/Mutter WIP mobile patches on the Redmi 2]]
 


The stock gnome experience for desktop/laptop.
* '''Force phone mode''' &mdash; Forces gnome-mobile to use phone mode. Without it, phone mode will be calculated by screen resolution and scale factor '''(gnome-mobile only)'''<br />https://github.com/vixalien/force-phone-mode
* '''Screen auto rotate button''' &mdash; GNOME supports automatic screen rotation, but on a phone it is often useful to switch between manual/automatic rotation on the fly. This adds a button to the system status area.<br/>https://github.com/shyzus/gnome-shell-extension-screen-autorotate
* '''Screen manual rotate button''' &mdash; On phones without support for the gyroscope the following extension adds just a button to manually rotate the screen instead<br/>https://gitlab.gnome.org/gnumdk/add-rotate-button
* '''Clock to the left''' &mdash; Many phones/mobile devices have a notch that makes it necessary to move the clock on the notification bar to the left side<br/>https://gitlab.gnome.org/gnumdk/move-shell-clock/
* '''Flashlight button''' &mdash; Adds a button to to turn on the device flashlight in Quick Settings (see [[LEDs|LEDs]] for more details)<br/>https://github.com/vixalien/gnome-mobile-torch
* '''Hide Volume Indicator''' &mdash; Removes the useless volume indicator in the top bar<br/>https://codeberg.org/stephaniebread/gnome-hide-volume-indicator
* '''Privacy Quick Settings''' &mdash; Add privacy settings toggles to the GNOME system menu<br/>https://extensions.gnome.org/extension/4491/privacy-settings-menu
* '''Custom Command Toggle''' &mdash; Allows to add customized buttons to quick settings<br/>https://extensions.gnome.org/extension/7012/custom-command-toggle


== See also ==
[[File:Kc-gnome-postmarketos.jpg|250px|thumb|postmarketOS with GNOME (without GNOME Mobile) on the Redmi 2]]


=== See also ===
* {{MR|990|pmaports}}: initial MR
* {{MR|990|pmaports}}: initial MR
* {{issue|94|pmaports}}: initial Issue
* {{issue|94|pmaports}}: initial Issue
== Extensions ==
=== Force phone mode ===
'''Warning''' for gnome-mobile only
This extension forces gnome-mobile to use phone mode. Without it, phone mode will be calculated by screen resolution and scale factor
https://github.com/vixalien/force-phone-mode
=== Screen auto rotate button ===
GNOME supports automatic screen rotation, but on a phone it is often useful to switch between manual/automatic rotation on the fly. This adds a button to the system status area.
https://github.com/shyzus/gnome-shell-extension-screen-autorotate
=== Screen manual rotate button ===
On phones without support for the gyroscope the following extension adds just a button to manually rotate the screen instead.
https://gitlab.gnome.org/gnumdk/add-rotate-button
=== Clock to the left ===
Many phones/mobile devices have a notch that makes it necessary to move the clock on the notification bar to the left side. This extension does just that:
https://gitlab.gnome.org/gnumdk/move-shell-clock/
=== Flashlight button ===
Extension adds a button to to turn on the device flashlight in Quick Settings: https://gitlab.com/NekoCWD/nekotorch
See [[LEDs|LEDs]] for more details.
=== Hide Volume Indicator ===
This extension removes the useless volume indicator in the top bar:
https://codeberg.org/stephaniebread/gnome-hide-volume-indicator
== How to install ==
* Install with pmbootstrap at https://wiki.postmarketos.org/wiki/Installation_guide, selecting `edge`, and selecting `gnome` under "available user interfaces".
== Relevant links ==
* [[GNOME apps]]
* [[GNOME apps]]
* [[Debugging the GNOME stack]]
* [[Debugging the GNOME stack]]


[[Category:Interface]]
[[Category:Interface]]

Latest revision as of 21:41, 15 March 2025

GNOME
GNOME activity page
GNOME activity page
Name GNOME
Graphics stack Mutter
Toolkit Clutter
In postmarketOS
Package postmarketos-ui-gnome
Status Available

GNOME (/(ɡ)noʊm/) is a user Interface that aims to be simple and easy to use. It is designed by The GNOME Project and is composed entirely of free and open-source software. The following variants are available in postmarketOS:

  • GNOME, the default, runs traditional GNOME Shell mosten used on the desktops or laptops.
  • GNOME Mobile are patchsets on top of the GNOME stack, that make GNOME suitable for mobile phones and touch devicse.

During pmbootstrap init you can choose either gnome (the stock GNOME shell) or gnome-mobile (with mobile patches).

GNOME Mobile

GNOME Mobile (Experimental)
Gnome Shell w/ mobile patches running on Oneplus 6
Gnome Shell w/ mobile patches running on Oneplus 6
Name GNOME Mobile (Experimental)
Graphics stack Mutter
Toolkit Clutter
In postmarketOS
Package postmarketos-ui-gnome-mobile
Status Available

GNOME is a fairly adaptive user interface, however GNOME is not very comfortable to use on a phone because of their lack of touchscreen gestures. Many developers (especially Jonas Dreßler) have been working on this and https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-update/ developed] a prototype. The patches are very work-in-progress and not all of them are upstream yet, however it's being worked on.

postmarketOS with GNOME Mobile on the OnePlus 6

Gnome Shell/Mutter with mobile patches from fork on https://gitlab.gnome.org/verdre. Currently being upstreamed to the main Gnome Shell/Mutter. Very much WIP. More info: https://blogs.gnome.org/shell-dev/2022/09/09/gnome-shell-on-mobile-an-update/

Troubleshooting

Scaling

The scaling is sometimes set to 200 %, which will keep Gnome in desktop mode (and not in mobile mode). There are 2 ways to set the display scale:

  • Normal way: Change Settings > Display > Scale to 300%.
  • Hacky way: Open ~/.config/monitors.xml in editor and set scale to 3 then reboot or relogin
  • Hacky way 2: Remove ~/.config/monitors.xml, run gsettings set org.gnome.desktop.interface scaling-factor 3 then relogin.

On some devices or on newer versions of gnome there is no 300% scaling option in settings.

Firefox issues under Wayland

On gnome-mobile Firefox doesn't use wayland for rendering. It causes some issues:

  • Scaling issue: Firefox runs in a low-resolution mode and looks ugly.
  • Input issue: Firefox doesn't trigger the gnome OSK

Solutions to these issues can be found below: here

Bug reporting

This is under active development and has many known and unknown bugs. It is packaged here in order to be a development target. Please report the issues to postmarketOS before filing upstream, as at this early stage it is unknown whether potential bugs may be due to packaging or in the code upstream.

See also

Extensions

See also

postmarketOS with GNOME (without GNOME Mobile) on the Redmi 2