Note

The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.

Difference between revisions of "GNOME First Steps"

From Funtoo
Jump to navigation Jump to search
(correct adwaita instructions)
(fix for gnome stage3)
 
(54 intermediate revisions by 10 users not shown)
Line 1: Line 1:
== What is GNOME? ==
<languages/>
"GNOME 3 is an easy and elegant way to use your computer. It is designed to put you in control and bring freedom to everybody. GNOME 3 is developed by the GNOME community, a diverse, international group of contributors that is supported by an independent, non-profit foundation." [http://gnome.org GNOME]
<translate>
<!--T:1-->
<blockquote>
GNOME 3 is an easy and elegant way to use your computer. It is designed to put you in control and bring freedom to everybody. GNOME 3 is developed by the GNOME community, a diverse, international group of contributors that is supported by an independent, non-profit foundation. [http://gnome.org GNOME]
</blockquote>


== Prerequisites ==
=== Prerequisites ===  <!--T:2-->
Before attempting to emerge Gnome, make sure that you have installed and tested the [[X Window System]] on your computer.


Before installing GNOME, ensure that the [[X Window System]] has been installed.
=== Preparing to emerge === <!--T:3-->


{{fancywarning|1=
<!--T:4-->
Please note that Linux kernel 3.15.* may still have serious incompatibility with various graphics drivers. If you like to use <code>gentoo-sources</code> or <code>vanilla-sources</code>, please use a 3.14.* kernel. This is of particular importance if you plan to run GNOME, and want to use NVIDIA (commercial or nouveau) or ATI (ati-drivers) graphics drivers.}}
After verifying that you have installed the X Window system on your computer, change your system flavor to desktop, and enable the gnome profile mix-in. To accomplish this, run the following:
{{console|body=
###i## epro flavor desktop
###i## epro mix-ins +gnome
}}
By enabling the gnome mix-in, various settings, including the {{c|USE}} portage variable, will be optimized to provide you with a relatively painless Gnome install.


== Preparing to emerge ==
=== Optional Wayland Support === <!--T:5-->


To get your system ready to emerge gnome, it is recommended that you first set the gnome profile mix-in. To accomplish this, do the following:
<!--T:6-->
<console>
With release-1.3, it is now possible to use Wayland instead of X as your display technology. If you would like to enable this -- it is optional -- you must also run the following command:
##r### ##b## eselect profile list
##g##Currently available mix-ins profiles:
  [11]  funtoo/1.0/linux-gnu/mix-ins/audio 
  [12]  funtoo/1.0/linux-gnu/mix-ins/console-extras 
  [13]  funtoo/1.0/linux-gnu/mix-ins/dvd 
  [14]  funtoo/1.0/linux-gnu/mix-ins/gnome 
  [15]  funtoo/1.0/linux-gnu/mix-ins/kde 
  [16]  funtoo/1.0/linux-gnu/mix-ins/mate 
  [17]  funtoo/1.0/linux-gnu/mix-ins/media 
  [18]  funtoo/1.0/linux-gnu/mix-ins/print 
  [19]  funtoo/1.0/linux-gnu/mix-ins/python3-only
  [20]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
  [21]  funtoo/1.0/linux-gnu/mix-ins/server-db 
  [22]  funtoo/1.0/linux-gnu/mix-ins/server-mail
  [23]  funtoo/1.0/linux-gnu/mix-ins/server-web
  [24]  funtoo/1.0/linux-gnu/mix-ins/X  
  [25]  funtoo/1.0/linux-gnu/mix-ins/xfce
  [26]  funtoo/1.0/linux-gnu/mix-ins/vmware-guest
  [27]  funtoo/1.0/linux-gnu/mix-ins/hardened
</console>
After seeing a list of available profiles, we want to add in the appropriate number for the gnome mix-in. To do this, run the following:
<console>
##r### ##b##eselect profile add 14
</console>


By enabling the gnome mix-in, various USE and other settings will be optimized to provide you with a pain-free GNOME installation experience.
<!--T:7-->
{{console|body=
###i## epro mix-ins +wayland
}}
{{Warning|While wayland is supported in Funtoo, wayland itself is not considered to be mature and most people will experience better results using X rather than wayland.}}


== Emerging ==
<!--T:8-->
When using Wayland, if you are using nvidia-drivers, you must manually enable NVIDIA's own KMS by adding the following to your {{c|params}} in {{f|/etc/boot.conf}}: {{c|1=nvidia-drm.modeset=1}}. KMS must be enabled ''manually'' when using nvidia-drivers.


You are provided with two packages that will pull in this desktop environment:  
=== X or Wayland === <!--T:9-->


* ''gnome''
<!--T:10-->
You will want to make sure you run {{c|etc-update}} or {{c|dispatch-conf}} to update your configuration files after everything emerges. In particular, take a look at {{f|/etc/gdm/custom.conf}} and ensure that the following setting is configured to match whether or not you are running Wayland. This controls whether or not gdm runs using Wayland. If gdm starts in Wayland, then it is able to launch either X or Wayland sessions. If Wayland is disabled in gdm, then it will only be able to start X sessions.


{{fancynote|This is the "whole shabang" - pulls in a range of applications made for the gnome desktop environment including a few games, an archive manager, a system monitor, a web browser, a terminal, etc.}}
<!--T:11-->
{{file|name=/etc/gdm/custom.conf|body=
[daemon]
WaylandEnable=true
}}


* ''gnome-light''
=== Emerging === <!--T:12-->


{{fancynote|As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.}}
<!--T:13-->
The Funtoo Linux repositories include two ebuild "meta packages" that can be used to install Gnome. One of them, {{c|gnome-light}} installs a bare-bones gnome desktop with few "extra" applications and games that can be found in the {{c|gnome-extra}} and {{c|games-*}} portage categories, respectively. If you are interested in having a Gnome desktop with extra applications like a photo viewer, text editor, sound player, font viewer, etc, immediately after installing the Gnome packages, consider emerging the {{c|gnome}} package instead of {{c|gnome-light}}.
{{Note|Individual Gnome applications can be installed on top of a {{c|gnome-light}} installation, allowing you to only install the applications you need and limit unnecessary bloat.}}
Below are two lists comparing some of the different packages installed by default with a {{c|gnome-light}} and {{c|gnome}} installation:
{{TableStart}}
<tr class="info"><th>{{c|gnome-light}}</th><th>{{c|gnome}}</th></tr>
<tr><td>'''Includes:'''
* {{c|gnome-terminal}}
* {{c|nautilus}} (the default Gnome file manager)
* {{c|gnome-shell}} (can be removed using the -gnome-shell {{c|USE}} flag at installation)
* {{c|gnome-control-center}}
</td><td> '''Includes:'''
* {{c|gnome-terminal}}
* {{c|nautilus}}
* {{c|gnome-shell}}
* {{c|gnome-control-center}}
* {{c|gnome-contacts}}
* {{c|eog}} (an image viewing application)
* {{c|gnome-weather}}
* {{c|gnome-maps}}
... and many other applications.
</td></tr>
<tr><td> '''Best for:'''
* Users who want a smaller installation that uses less disk space
* Users who are comfortable installing additional packages that they require when the need arises
</td><td>'''Best for:'''
* Users who want a full-featured Gnome desktop right after installation
* Users who don't mind extra resources being used by additional applications installed on the system
</td></tr>
<tr><td>'''How to install:'''
{{c|emerge gnome-light}}
</td><td>'''How to install:'''
{{c|emerge gnome}}
</td></tr>
{{TableEnd}}


=== GNOME 3.12 from a clean install ===
<!--T:14-->
The steps that should be followed to emerge GNOME are as follows:


==== gnome ====
<!--T:15-->
{{console|body=
###i## emerge -auDN @world
###i## emerge gnome
}}


To emerge ''gnome'' run the following command


<console>
=== A few finishing touches === <!--T:16-->
# ##i## emerge gnome
</console>


==== gnome-light ====


To emerge ''gnome-light'' run the following command
==== Proprietary NVIDIA drivers ==== <!--T:17-->


<console>
<!--T:18-->
# ##i## emerge gnome-light
While many video drivers (those that are part of xorg-x11) do not require users to be part of the {{c|video}} group for hardware acceleration, the proprietary NVIDIA drivers definitely do require this. Please make sure that any non-root user is part of the {{c|video}} group, and ensure that Nouveau kernel modules are blacklisted. Setup steps for proprietary NVIDIA drivers can be found on the  [[Package:NVIDIA_Linux_Display_Drivers|the NVIDIA Linux Display Drivers page]].
</console>


=== Upgrading from GNOME 3.6 ===
==== Other Graphics Drivers ==== <!--T:29-->


==== gnome ====
<!--T:20-->
Users of other graphics drivers typically don't need to perform any steps other than ensure that the correct {{c|gfxcard-}} mix-in is enabled and the system is updated (via {{c|emerge -auDN @world}} to ensure that this support is active. See the [[Install/Profiles#Graphics Settings|Graphics Settings portion of the Installation documentation]] for more information on the different mix-ins available.


To emerge ''gnome'', remove nautilus-open-terminal if it is installed as it now bundled into gnome-terminal
==== Setting up xdm (GUI log-in) ==== <!--T:21-->
Most users of Gnome are satisfied using {{c|gdm}}, the Gnome display manager, to log in to Gnome. To clarify: a display manager provides a graphical interface during system startup that allows users to log in to a desktop environment.


<console>
<!--T:22-->
# ##i## emerge -C nautilus-open-terminal
By default, GNOME displays the {{f|/etc/motd}} file for several seconds after you log in via GDM. The best way to eliminate this delay is to remove the unnecessary {{f|/etc/motd}} file, which only contains information related to when your stage3 was built:
</console>
{{console|body=
###i## rm /etc/motd
}}
By default, after installing GNOME by hand, GDM is not enabled (it will be, however, if you used a GNOME stage3.) To enable GDM, edit {{f|/etc/conf.d/xdm}} and set the {{c|DISPLAYMANAGER}} variable to {{c|gdm}} instead of the default, {{c|xdm}}. When finished, your {{f|/etc/conf.d/xdm}} file should look like:


Then, run the following command
<!--T:23-->
{{file|name=/etc/conf.d/xdm|body=
# We always try and start X on a static VT. The various DMs normally default
# to using VT7. If you wish to use the xdm init script, then you should ensure
# that the VT checked is the same VT your DM wants to use. We do this check to
# ensure that you haven't accidentally configured something to run on the VT
# in your /etc/inittab file so that you don't get a dead keyboard.
CHECKVT=7


<console>
<!--T:24-->
# ##i## emerge -vauDN world
# What display manager do you use ?
</console>
# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
DISPLAYMANAGER="gdm"
}}


==== gnome-light ====
<!--T:25-->
Once you finish configuring that file, add the {{c|xdm}} service to the default runlevel so that GDM will start automatically when your system has finished loading other services.
{{c|xdm}} need dbus service started before. To achieve this:
{{console|body=
###i## rc-update add dbus default
###i## rc-update add elogind default
}}
Above command adds dbus to list of services to be started at boot. At this point, you are encouraged to reboot your system to get system services initialized in the proper state, and to ensure that any newly-rebuilt services are running:


To emerge ''gnome-light'' remove the following packages as there have been changes since 3.6 (you will have up reinstall any packages that have been renamed after gnome-light completes).
<!--T:26-->
{{console|body=
###i## reboot
}}


<console>
<!--T:27-->
# ##i## emerge -C gnome-fallback gnome-panel gnome-screensaver metacity gnome-games gcalctool nautilus-open-terminal
After the system reboots, log in and start the {{c|xdm}} service:
</console>


Then, run the following command
<!--T:28-->
{{console|body=
###i## /etc/init.d/xdm start
}}


<console>
<!--T:29-->
# ##i## emerge -vauDN world
Hopefully, all goes well and you see a graphical login screen. If you would like {{c|xdm}} to start automatically at boot, you can add it to your default runlevel as follows:
</console>


Finally, restore any applications that have been renamed (such as gcalctool => gnome-calculator)
<!--T:30-->
{{console|body=
###i## rc-update add xdm default
}}


<console>
==== Setting up xinitrc (text-based log-in) ==== <!--T:31-->
# ##i## emerge gnome-calculator
If, instead of using a display manager like GDM, you would rather log into the console and start Gnome with startx :
</console>


== Subsystems ==
Configure openrc to autostart dbus and elogind:
{{console|body=
###i## rc-update add dbus default
###i## rc-update add elogind default
}}


=== Bluetooth ===
Add the following to your {{f|~/.xinitrc}} file:
{{file|name=~/.xinitrc|body=
# Fix Missing Applications in Gnome
export XDG_MENU_PREFIX=gnome-


For bluetooth support, ensure that:
<!--T:32-->
# Properly Launch the Desired X Session
exec gnome-session
}}
{{Note|If you need support for different input sources, there is no longer a need to configure IBus or SCIM in your {{f|~.xinitrc}} file as GNOME uses IBus natively. Simply configure it in the Gnome Control Center under the Region & Language section.}}


# Bluetooth support is enabled in your kernel (using modules is fine).
=== Upgrading from older Gnome releases === <!--T:33-->
# Your bluetooth hardware is turned on.
To update either {{c|gnome-light}} or {{c|gnome}} to a newer version, run the following command:
# Add the <code>bluetooth</code> startup script to the default runlevel, and start it.


This can be done as follows:
<!--T:34-->
{{console|body=###i## emerge -vauDN world}}


<console>
=== Subsystems === <!--T:35-->
# ##i##rc-update add bluetooth default
==== Bluetooth ====
# ##i##rc
For bluetooth support under Gnome, ensure that:
</console>
# Bluetooth support is enabled within your kernel (using modules is fine).
# Your bluetooth hardware is turned on.
# Your user is in the {{c|plugdev}} group.


Once this is done, you should now be able to navigate to ''Settings'' -> ''Bluetooth'' and turn bluetooth on. The icon next to devices should now animate and you should be able to discover and add devices such as keyboards.
<!--T:36-->
After ensuring those two things, the {{c|bluetooth}} startup script can be added to the default runlevel and started:
{{console|body=
###i## rc-update add bluetooth default
###i## rc
}}
Once the {{c|rc}} command has been run, the {{c|bluetooth}} init file has been run, meaning that you should now be able to navigate to the Gnome Control Center's '''Bluetooth''' section to turn bluetooth on. The icon next to devices should now animate and you should be able to discover and add devices such as bluetooth keyboards and mice.


{{Note|1=
<!--T:37-->
Additional kernel drivers may need to be enabled for certain input devices. For example, for the bluetooth Apple Magic Trackpad, the following option must be enabled in your kernel:  
{{Note|Additional kernel drivers may be necessary for certain input devices. For example, for the bluetooth Apple Magic Trackpad, the following option must be enabled in your kernel:


<!--T:38-->
{{kernelop|title=Device Drivers,HID support,HID bus support,Special HID drivers|desc=
{{kernelop|title=Device Drivers,HID support,HID bus support,Special HID drivers|desc=
<M> Apple Magic Mouse/Trackpad multi-touch support
<M> Apple Magic Mouse/Trackpad multi-touch support
}}}}
}}}}


=== Printing ===
==== Printing ==== <!--T:39-->
To enable printing support, add the {{c|cupsd}} init file to the default runlevel and then start the cupsd service by running the {{c|rc}} command:


To enable printing support, add <code>cupsd</code> to the default runlevel:
<!--T:40-->
{{console|body=
###i## rc-update add cupsd default
###i## rc
}}
You should now be able to navigate to the Gnome Control Center's '''Printers''' sections and add printers to your system. After adding printers to your system, you should, hopefully, be able to print to them. If you have troubles with the default printer drivers, consider reading


<console>
==== Scanning ==== <!--T:41-->
# ##i##rc-update add cupsd default
# ##i##rc
</console>


You should now be able to navigate to ''Settings'' -> ''Printers'' and add printers to your system, and print.
<!--T:42-->
To enable scanning support, add your user account (and the accounts of any other users who may need to scan) to the {{c|lp}} group. By adding your user account to this group, you will have access to any locally attached scanner:
{{console|body=###i## gpasswd -a <username> lp}}
After adding yourself and any other desired users to the {{c|lp}} local printing group, install {{c|xsane}}, a graphical scanning frontend, by running the following command:
{{console|body=###i## emerge xsane}}
When you run {{c|xsane}}, it should be able to access your scanner.


=== Scanning ===
=== Automatically Starting Applications at Login === <!--T:43-->
When using an old-fashioned {{~/.xinitrc}}, loading applications when X starts is relatively easy, simply add different applications to launch on separate lines in the file. When using GDM, this can also be accomplished with ease by editing the {{f|~/.xprofile}} file. Here is a sample {{f|~/.xprofile}} that runs the {{c|xflux}} application to dim a computer's monitor at night:


To enable scanning support, add your user account to the <code>lp</code> group. This will allow your user to access the USB scanner.
<!--T:44-->
 
{{file|name=~/.xprofile|body=
Then, <code>emerge xsane</code>, and run it. It should be able to access your scanner.
xflux -z 87107
 
}}
== Finishing Touches ==
 
=== X ===
 
==== Setting up xdm (GUI log-in) ====
 
Typically, you will want to use <code>gdm</code>, the GNOME display manager, to log in to GNOME. This will allow you to log in graphically, rather than using the text console.
 
To enable gdm, edit <code>/etc/conf.d/xdm</code> and set <code>DISPLAYMANAGER</code> to <code>gdm</code> instead of <code>xdm</code>. Then, perform the following steps to add <code>xdm</code> to the default runlevel, and have it start automatically from now on when your system starts:
 
{{Note|Funtoo's <code>/etc/init.d/xdm</code> initscript has been modified to start the requisite services <code>dbus</code>, <code>openrc-settingsd</code> and <code>consolekit</code> prior to starting <code>gdm</code>.}}
 
<console>
# ##i## rc-update add xdm default
</console>
 
Then, if you want to start it now do:
 
<console>
# ##i##rc
</console>
 
==== Setting up xinitrc (text log-in) ====


Adding the following to your <code>~/.xinitrc</code> file is sufficient:
<!--T:45-->
{{Note|Remember to add an {{c|&}} at the end of any command that doesn't return directly to the shell prompt after running.}}


<pre>
=== Games === <!--T:46-->
# Fix Missing Applications in Gnome
Gnome has a plethora of games that can be added to your installation of either {{c|gnome-light}} or {{c|gnome}}.  By default, the majority of Gnome games are not included in the {{c|gnome}} and {{c|gnome-light}} packages. If you are interested in playing games under Gnome, or for that matter, any other desktop environment, you will want to add your user account to the {{c|games}} group. This can be accomplished easily by running the following command:
export XDG_MENU_PREFIX=gnome-
{{console|body=###i## gpasswd -a $USER games}}
The above command appends games to the list of groups that you are already a member of. Once your user account has been added to the {{c|games}} group, you should log out and log back in to apply the changes to your user at log-in. Below is a list of games that were developed by the Gnome team with the Gnome desktop environment in mind:


# Properly Launch the Desired X Session
<!--T:47-->
exec ck-launch-session gnome-session
*gnome-sudoku
</pre>
*gnome-mastermind
 
*gnome-nibbles
Additionaly, if you need support for different input sources, there is no longer a need to configure ibus or scrim in your <code>.xinitrc</code> file as GNOME uses ibus natively. Simply configure it in the Control Center under Region & Langauge.
*gnome-robots
 
*gnome-chess
=== Disable Adwaita Dark Theme ===
*gnome-hearts
 
*gnome-mahjongg
If you do not like the Adwaita Dark Theme it can be disabled by copying then modifying it like so:
*gnome-mines
 
*gnome-klotski
<console>
*gnome-tetravex
mkdir -p ~/.themes/Adwaita-NoDark
cp -r /usr/share/themes/Adwaita/gtk-* ~/.themes/Adwaita-NoDark
rm ~/.themes/Adwaita-NoDark/gtk-3.0/gtk-dark.css
ln -s gtk.css ~/.themes/Adwaita-NoDark/gtk-3.0/gtk-dark.css
</console>
 
Then, run gnome-tweak-tool and select select Theme -> GTK+ Theme -> Adwaita-NoDark.
 
{{fancynote|If you run GUI programs with the sudo command, then the above steps (excluding running gnome-tweak-tool) must be repeated for the root account.}}
 
[https://ask.fedoraproject.org/en/question/10304/how-do-i-ban-apps-from-using-gnome-3-adwaita-dark-theme/ Reference]
 
=== Verify the inode/directory MimeType Handler ===
 
In some odd instances, baobab might take priority over nautilus when handling the inode/directory MimeType. If this behavior is not desired, add the following to /home/~/.local/share/applications/mimeapps.list:
 
<pre>
[Added Associations]
inode/directory=nautilus.desktop;baobab.desktop;
</pre>
 
=== Automatically Starting Applications at Login ===
 
When using an old-fashioned <code>.xinitrc</code>, starting up applications when X starts is relatively easy. When using GDM, this can still be accomplished, by using the <code>~/.xprofile</code> file. Here's my sample <code>.xprofile</code> to start <code>xflux</code> to dim the screen at night:
 
<pre>
xflux -z 87107
</pre>


Remember to add a <code>&</code> at the end of any command that doesn't return to the shell prompt after running.
<!--T:48-->
To install any of the above games, simply run an:
{{console|body=###i## emerge <gamename>}}


<!--T:49-->
[[Category:Desktop]]
[[Category:Desktop]]
[[Category:First Steps]]
[[Category:First Steps]]
[[Category:Official Documentation]]
[[Category:Official Documentation]]
</translate>

Latest revision as of 23:10, February 10, 2022

Other languages:
English • ‎español • ‎français • ‎português do Brasil • ‎中文(中国大陆)‎ • ‎한국어

GNOME 3 is an easy and elegant way to use your computer. It is designed to put you in control and bring freedom to everybody. GNOME 3 is developed by the GNOME community, a diverse, international group of contributors that is supported by an independent, non-profit foundation. GNOME

Prerequisites

Before attempting to emerge Gnome, make sure that you have installed and tested the X Window System on your computer.

Preparing to emerge

After verifying that you have installed the X Window system on your computer, change your system flavor to desktop, and enable the gnome profile mix-in. To accomplish this, run the following:

root # epro flavor desktop
root # epro mix-ins +gnome

By enabling the gnome mix-in, various settings, including the USE portage variable, will be optimized to provide you with a relatively painless Gnome install.

Optional Wayland Support

With release-1.3, it is now possible to use Wayland instead of X as your display technology. If you would like to enable this -- it is optional -- you must also run the following command:

root # epro mix-ins +wayland
   Warning

While wayland is supported in Funtoo, wayland itself is not considered to be mature and most people will experience better results using X rather than wayland.

When using Wayland, if you are using nvidia-drivers, you must manually enable NVIDIA's own KMS by adding the following to your params in /etc/boot.conf: nvidia-drm.modeset=1. KMS must be enabled manually when using nvidia-drivers.

X or Wayland

You will want to make sure you run etc-update or dispatch-conf to update your configuration files after everything emerges. In particular, take a look at /etc/gdm/custom.conf and ensure that the following setting is configured to match whether or not you are running Wayland. This controls whether or not gdm runs using Wayland. If gdm starts in Wayland, then it is able to launch either X or Wayland sessions. If Wayland is disabled in gdm, then it will only be able to start X sessions.

   /etc/gdm/custom.conf
[daemon]
WaylandEnable=true

Emerging

The Funtoo Linux repositories include two ebuild "meta packages" that can be used to install Gnome. One of them, gnome-light installs a bare-bones gnome desktop with few "extra" applications and games that can be found in the gnome-extra and games-* portage categories, respectively. If you are interested in having a Gnome desktop with extra applications like a photo viewer, text editor, sound player, font viewer, etc, immediately after installing the Gnome packages, consider emerging the gnome package instead of gnome-light.

   Note

Individual Gnome applications can be installed on top of a gnome-light installation, allowing you to only install the applications you need and limit unnecessary bloat.

Below are two lists comparing some of the different packages installed by default with a gnome-light and gnome installation:

gnome-lightgnome
Includes:
  • gnome-terminal
  • nautilus (the default Gnome file manager)
  • gnome-shell (can be removed using the -gnome-shell USE flag at installation)
  • gnome-control-center
Includes:
  • gnome-terminal
  • nautilus
  • gnome-shell
  • gnome-control-center
  • gnome-contacts
  • eog (an image viewing application)
  • gnome-weather
  • gnome-maps

... and many other applications.

Best for:
  • Users who want a smaller installation that uses less disk space
  • Users who are comfortable installing additional packages that they require when the need arises
Best for:
  • Users who want a full-featured Gnome desktop right after installation
  • Users who don't mind extra resources being used by additional applications installed on the system
How to install:

emerge gnome-light

How to install:

emerge gnome

The steps that should be followed to emerge GNOME are as follows:

root # emerge -auDN @world
root # emerge gnome


A few finishing touches

Proprietary NVIDIA drivers

While many video drivers (those that are part of xorg-x11) do not require users to be part of the video group for hardware acceleration, the proprietary NVIDIA drivers definitely do require this. Please make sure that any non-root user is part of the video group, and ensure that Nouveau kernel modules are blacklisted. Setup steps for proprietary NVIDIA drivers can be found on the the NVIDIA Linux Display Drivers page.

Other Graphics Drivers

Users of other graphics drivers typically don't need to perform any steps other than ensure that the correct gfxcard- mix-in is enabled and the system is updated (via emerge -auDN @world to ensure that this support is active. See the Graphics Settings portion of the Installation documentation for more information on the different mix-ins available.

Setting up xdm (GUI log-in)

Most users of Gnome are satisfied using gdm, the Gnome display manager, to log in to Gnome. To clarify: a display manager provides a graphical interface during system startup that allows users to log in to a desktop environment.

By default, GNOME displays the /etc/motd file for several seconds after you log in via GDM. The best way to eliminate this delay is to remove the unnecessary /etc/motd file, which only contains information related to when your stage3 was built:

root # rm /etc/motd

By default, after installing GNOME by hand, GDM is not enabled (it will be, however, if you used a GNOME stage3.) To enable GDM, edit /etc/conf.d/xdm and set the DISPLAYMANAGER variable to gdm instead of the default, xdm. When finished, your /etc/conf.d/xdm file should look like:

   /etc/conf.d/xdm
# We always try and start X on a static VT. The various DMs normally default
# to using VT7. If you wish to use the xdm init script, then you should ensure
# that the VT checked is the same VT your DM wants to use. We do this check to
# ensure that you haven't accidentally configured something to run on the VT
# in your /etc/inittab file so that you don't get a dead keyboard.
CHECKVT=7

# What display manager do you use ?
# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
DISPLAYMANAGER="gdm"

Once you finish configuring that file, add the xdm service to the default runlevel so that GDM will start automatically when your system has finished loading other services. xdm need dbus service started before. To achieve this:

root # rc-update add dbus default
root # rc-update add elogind default

Above command adds dbus to list of services to be started at boot. At this point, you are encouraged to reboot your system to get system services initialized in the proper state, and to ensure that any newly-rebuilt services are running:

root # reboot

After the system reboots, log in and start the xdm service:

root # /etc/init.d/xdm start

Hopefully, all goes well and you see a graphical login screen. If you would like xdm to start automatically at boot, you can add it to your default runlevel as follows:

root # rc-update add xdm default

Setting up xinitrc (text-based log-in)

If, instead of using a display manager like GDM, you would rather log into the console and start Gnome with startx :

Configure openrc to autostart dbus and elogind:

root # rc-update add dbus default
root # rc-update add elogind default

Add the following to your ~/.xinitrc file:

   ~/.xinitrc
# Fix Missing Applications in Gnome
export XDG_MENU_PREFIX=gnome-

# Properly Launch the Desired X Session
exec gnome-session
   Note

If you need support for different input sources, there is no longer a need to configure IBus or SCIM in your ~.xinitrc file as GNOME uses IBus natively. Simply configure it in the Gnome Control Center under the Region & Language section.

Upgrading from older Gnome releases

To update either gnome-light or gnome to a newer version, run the following command:

root # emerge -vauDN world

Subsystems

Bluetooth

For bluetooth support under Gnome, ensure that:

  1. Bluetooth support is enabled within your kernel (using modules is fine).
  2. Your bluetooth hardware is turned on.
  3. Your user is in the plugdev group.

After ensuring those two things, the bluetooth startup script can be added to the default runlevel and started:

root # rc-update add bluetooth default
root # rc

Once the rc command has been run, the bluetooth init file has been run, meaning that you should now be able to navigate to the Gnome Control Center's Bluetooth section to turn bluetooth on. The icon next to devices should now animate and you should be able to discover and add devices such as bluetooth keyboards and mice.

   Note

Additional kernel drivers may be necessary for certain input devices. For example, for the bluetooth Apple Magic Trackpad, the following option must be enabled in your kernel:

Under Device Drivers-->HID support-->HID bus support-->Special HID drivers:

<M> Apple Magic Mouse/Trackpad multi-touch support

Printing

To enable printing support, add the cupsd init file to the default runlevel and then start the cupsd service by running the rc command:

root # rc-update add cupsd default
root # rc

You should now be able to navigate to the Gnome Control Center's Printers sections and add printers to your system. After adding printers to your system, you should, hopefully, be able to print to them. If you have troubles with the default printer drivers, consider reading

Scanning

To enable scanning support, add your user account (and the accounts of any other users who may need to scan) to the lp group. By adding your user account to this group, you will have access to any locally attached scanner:

root # gpasswd -a <username> lp

After adding yourself and any other desired users to the lp local printing group, install xsane, a graphical scanning frontend, by running the following command:

root # emerge xsane

When you run xsane, it should be able to access your scanner.

Automatically Starting Applications at Login

When using an old-fashioned Template:~/.xinitrc, loading applications when X starts is relatively easy, simply add different applications to launch on separate lines in the file. When using GDM, this can also be accomplished with ease by editing the ~/.xprofile file. Here is a sample ~/.xprofile that runs the xflux application to dim a computer's monitor at night:

   ~/.xprofile
xflux -z 87107
   Note

Remember to add an & at the end of any command that doesn't return directly to the shell prompt after running.

Games

Gnome has a plethora of games that can be added to your installation of either gnome-light or gnome. By default, the majority of Gnome games are not included in the gnome and gnome-light packages. If you are interested in playing games under Gnome, or for that matter, any other desktop environment, you will want to add your user account to the games group. This can be accomplished easily by running the following command:

root # gpasswd -a $USER games

The above command appends games to the list of groups that you are already a member of. Once your user account has been added to the games group, you should log out and log back in to apply the changes to your user at log-in. Below is a list of games that were developed by the Gnome team with the Gnome desktop environment in mind:

  • gnome-sudoku
  • gnome-mastermind
  • gnome-nibbles
  • gnome-robots
  • gnome-chess
  • gnome-hearts
  • gnome-mahjongg
  • gnome-mines
  • gnome-klotski
  • gnome-tetravex

To install any of the above games, simply run an:

root # emerge <gamename>