GNOME: Difference between revisions

imported>IgorM
m (Fixed syntax highlighting)
imported>Onny
(Add tips and tricks section)
Line 3: Line 3:
[[{{PAGENAME}}]] (/(ɡ)noʊm/) is a [[desktop environment]] 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. GNOME is a part of the GNU Project.
[[{{PAGENAME}}]] (/(ɡ)noʊm/) is a [[desktop environment]] 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. GNOME is a part of the GNU Project.


== Installing GNOME ==
== Setup ==


To use GNOME, add this to your configuration.nix:
To use GNOME, add this to your configuration.nix:
Line 13: Line 13:
</syntaxHighlight>
</syntaxHighlight>


== Excluding some GNOME applications from the default install ==
=== Excluding some GNOME applications from the default install ===


Not all applications that come pre-installed with the GNOME desktop environment are desirable for everyone to have on their machines. There's a way to edit {{inline Command|configuration.nix}} to exclude these kinds of packages, for example as follows:
Not all applications that come pre-installed with the GNOME desktop environment are desirable for everyone to have on their machines. There's a way to edit {{inline Command|configuration.nix}} to exclude these kinds of packages, for example as follows:
Line 38: Line 38:
</syntaxHighlight>
</syntaxHighlight>


== Running GNOME programs outside of GNOME ==
== Configuration ==
 
=== Managing extensions ===
 
GNOME extensions are managed and configured by the program "Extension" that comes with GNOME.
 
Extensions to be installed system-wide by adding them to NixOS configuration in {{ic|environment.systemPackages}} or per-user, or from the GNOME extensions website using a Web browser extension.
 
=== Dark mode ===
 
Change default color theme for all GTK4 applications to dark using [[Home Manager]]. Change <code>myuser</code> to the user you want to apply the configuration to.
 
<syntaxHighlight lang=nix>
home-manager.users.myuser = {
  dconf = {
    enable = true;
    settings."org/gnome/desktop/interface".color-scheme = "prefer-dark";
  };
};
</syntaxHighlight>
 
== Tips and tricks ==
 
=== Running GNOME programs outside of GNOME ===


While we are packaging GNOME platform-based applications to be largely [https://nixos.org/nixpkgs/manual/#sec-language-gnome self-contained], they still depend, for one reason or another, on some global configuration. The {{ic|gnome.nix}} module sets all the necessary options for you but if you are running customized set-up, you might need to replicate that yourself.
While we are packaging GNOME platform-based applications to be largely [https://nixos.org/nixpkgs/manual/#sec-language-gnome self-contained], they still depend, for one reason or another, on some global configuration. The {{ic|gnome.nix}} module sets all the necessary options for you but if you are running customized set-up, you might need to replicate that yourself.
Line 60: Line 83:
</syntaxHighlight>
</syntaxHighlight>


== Managing extensions ==
=== Systray Icons ===
 
GNOME extensions are managed and configured by the program "Extension" that comes with GNOME.
 
Extensions to be installed system-wide by adding them to NixOS configuration in {{ic|environment.systemPackages}} or per-user, or from the GNOME extensions website using a Web browser extension.
 
== Systray Icons ==


To get systray icons, install the related gnome shell extension
To get systray icons, install the related gnome shell extension
Line 80: Line 97:
</syntaxHighlight>
</syntaxHighlight>


== Running ancient applications ==
=== Running ancient applications ===


Long ago, in the GNOME 2 era, applications used GConf service to store configuration. This has been deprecated for many years but some applications were abandoned before they managed to upgrade to a newer dconf system. If you are running such application and getting an error like:
Long ago, in the GNOME 2 era, applications used GConf service to store configuration. This has been deprecated for many years but some applications were abandoned before they managed to upgrade to a newer dconf system. If you are running such application and getting an error like: