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
(Updated the beginning of the page to include a table comparing gnome and gnome-light)
(Updated more of the page)
Line 27: Line 27:
* {{c|gnome-control-center}}
* {{c|gnome-control-center}}
</td><td> '''Includes:'''
</td><td> '''Includes:'''
* {{c|gnome-termina}}
* {{c|gnome-terminal}}
* {{c|nautilus}}
* {{c|nautilus}}
* {{c|gnome-shell}}
* {{c|gnome-shell}}
Line 51: Line 51:
{{TableEnd}}
{{TableEnd}}


==== Finalizing Setup ====
=== A few finishing touches ===
 
==== OpenGL ====
===== OpenGL =====
GNOME uses OpenGL by default to help it provide nice animations and other eye candy, so you'll want to make sure that you use {{c|eselect opengl}} to ensure that the proper OpenGL implementation for your video card is selected. If this is not done, GNOME won't start, so it's important to check this. Type {{c|eselect opengl list}} as root to list OpenGL implementations, and {{c|eselect opengl set X}}, again as root, to set your OpenGL implementation to the one that you deem suitable.
 
==== Setting up xdm (GUI log-in) ====
GNOME uses OpenGL by default -- so you'll want to make sure that you use {{c|eselect opengl}} to ensure that the proper OpenGL implementation for your video card is selected. If this is not done, GNOME won't start, so it's important to check this. Type {{c|eselect opengl list}} as root to list OpenGL implementations, and {{c|eselect opengl set X}} to set your OpenGL implementation to the proper one.
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.  
 
===== Setting up xdm (GUI log-in) =====
 
====== /etc/motd ======
 
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.
 
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}} -- it contains information related to when your stage3 was built:


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|body=
{{console|body=
# ##i##rm /etc/motd
###i## rm /etc/motd
}}
}}
By default, after installing Gnome, GDM is not enabled. 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:


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:
{{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


{{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>.}}
# What display manager do you use ?
 
# NOTE: If this is set in /etc/rc.conf, that setting will override this one.
{{console|recipe=setup|desc=Enable the GNOME display manager|body=
DISPLAYMANAGER="gdm"
# ##i## rc-update add xdm default
}}
}}
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.


Then, if you want to start it now do:
{{Note|Funtoo's {{f|/etc/init.d/xdm}} initscript has been modified to start the requisite services {{c|dbus}}, {{c|openrc-settingsd}} and {{c|consolekit}} prior to starting GDM.}}


{{console|body=
{{console|body=
# ##i##rc
###i## rc-update add xdm default
}}
}}
The above command adds xdm to the list of services to be started at boot. Since your system has already started, the xdm service will be started the next time the system is started. To run the xdm service now, you can execute the following command, which runs any services in the list of services to start at boot that are currently not running:


When your system restarts, it will start GDM by default.
{{console|body=###i## rc}}
 
==== Setting up xinitrc (text-based log-in) ====
===== Setting up xinitrc (text log-in) =====
If, instead of using a display manager like GDM, you would rather log into the console and start Gnome from there, add the following to your {{f|~/.xinitrc}} file:
 
{{file|name=~/.xinitrc|body=
Adding the following to your <code>~/.xinitrc</code> file is sufficient:
 
<pre>
# Fix Missing Applications in Gnome
# Fix Missing Applications in Gnome
export XDG_MENU_PREFIX=gnome-
export XDG_MENU_PREFIX=gnome-
Line 95: Line 93:
# Properly Launch the Desired X Session
# Properly Launch the Desired X Session
exec ck-launch-session gnome-session
exec ck-launch-session gnome-session
</pre>
}}
 
{{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.}}
Additionaly, if you need support for different input sources, there is no longer a need to configure IBus or SCIM in your <code>.xinitrc</code> file as GNOME uses IBus natively. Simply configure it in the Control Center under Region & Language.
=== Upgrading from GNOME 3.12 ===
 
To update either {{c|gnome-light}} or {{c|gnome}} to a newer version, run the following command:
==== Upgrading from GNOME 3.12 ====
 
To update either ''gnome'' or ''gnome-light'' run the following command:


{{console|body=
{{console|body=###i## emerge -vauDN world}}
# ##i## emerge -vauDN world
}}
=== Subsystems ===
=== Subsystems ===
==== Bluetooth ====
==== Bluetooth ====
 
For bluetooth support under Gnome, ensure that:
For bluetooth support, ensure that:
# Bluetooth support is enabled within your kernel (using modules is fine).
 
# Bluetooth support is enabled in your kernel (using modules is fine).
# Your bluetooth hardware is turned on.
# Your bluetooth hardware is turned on.
# Add the <code>bluetooth</code> startup script to the default runlevel, and start it.


This can be done as follows:
After ensuring those two things, the {{c|bluetooth}} startup script can be added to the default runlevel and started:
 
{{console|body=
<console>
###i## rc-update add bluetooth default
# ##i##rc-update add bluetooth default
###i## rc
# ##i##rc
}}
</console>
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.
 
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.


{{Note|1=
{{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:
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:


{{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=
Line 133: Line 119:


==== Printing ====
==== Printing ====
To enable printing support, add the {{c|cupsd}} init file to the default runlevel:


To enable printing support, add <code>cupsd</code> to the default runlevel:
{{console|body=
 
###i## rc-update add cupsd default
<console>
###i## rc
# ##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.
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 ====
==== Scanning ====

Revision as of 21:17, July 18, 2015

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.

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:
root # emerge gnome-light
How to install:
root # emerge gnome

A few finishing touches

OpenGL

GNOME uses OpenGL by default to help it provide nice animations and other eye candy, so you'll want to make sure that you use eselect opengl to ensure that the proper OpenGL implementation for your video card is selected. If this is not done, GNOME won't start, so it's important to check this. Type eselect opengl list as root to list OpenGL implementations, and eselect opengl set X, again as root, to set your OpenGL implementation to the one that you deem suitable.

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, GDM is not enabled. 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.

   Note

Funtoo's /etc/init.d/xdm initscript has been modified to start the requisite services dbus, openrc-settingsd and consolekit prior to starting GDM.

root # rc-update add xdm default

The above command adds xdm to the list of services to be started at boot. Since your system has already started, the xdm service will be started the next time the system is started. To run the xdm service now, you can execute the following command, which runs any services in the list of services to start at boot that are currently not running:

root # rc

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 from there, 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 ck-launch-session 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 GNOME 3.12

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.

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:

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 to the lp group. This will allow your user to access the USB scanner.

Then, emerge xsane, and run it. It should be able to access your scanner.

Automatically Starting Applications at Login

When using an old-fashioned .xinitrc, starting up applications when X starts is relatively easy. When using GDM, this can still be accomplished, by using the ~/.xprofile file. Here's my sample .xprofile to start xflux to dim the screen at night:

xflux -z 87107
   Note

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

games

Gnome has several games that can be added on to your install. By default most games are not included in gnome's emerge.

Users wishing to play games need to be added to the games group:

root # gpasswd -a $USER games

game list:

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

game system emulators:

gnomeboyadvance
gnome-mud

Significant Known Issues (Workarounds Available)

FL-1678: Bluetooth interface gives wrong pairing key

FL-1687: Wallpaper corruption when resuming from suspend