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)
(Update to reflect the transition to GNOME 3.14)
Line 1: Line 1:
== What is GNOME? ==
= What is GNOME? =
"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]
 
"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]


== Prerequisites ==
== Prerequisites ==


Before installing GNOME, ensure that the [[X Window System]] has been installed.
=== From a Clean Install ===
 
Ensure that the [[X Window System]] is installed.
 
=== From [[Testing GNOME 3.14]] ===
 
Remove the GNOME 3.14 unmask by deleting <code>/usr/portage/profiles/package.mask/funtoo-gnome</code> and/or by removing the relevant lines from <code>/etc/portage/package.unmask</code>.


{{fancywarning|1=
Also, if you are not going to use the gnome mix-in, undo any GNOME 3.14 related <code>package.use</code> and <code>package.keyword</code> additions.
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.}}


== Preparing to emerge ==
== Preparing to emerge ==


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:
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:
<console>
<console>
##r### ##b## eselect profile list
##r### ##b## eselect profile list
##g##Currently available mix-ins profiles:
##g##Currently available mix-ins profiles:
   [11]  funtoo/1.0/linux-gnu/mix-ins/audio   
   [11]  funtoo/1.0/linux-gnu/mix-ins/audio
   [12]  funtoo/1.0/linux-gnu/mix-ins/console-extras
  [12] funtoo/1.0/linux-gnu/mix-ins/cinnamon
   [13]  funtoo/1.0/linux-gnu/mix-ins/dvd
   [13]  funtoo/1.0/linux-gnu/mix-ins/console-extras
   [14]  funtoo/1.0/linux-gnu/mix-ins/gnome
   [14]  funtoo/1.0/linux-gnu/mix-ins/dvd
   [15]  funtoo/1.0/linux-gnu/mix-ins/kde
   [15]  funtoo/1.0/linux-gnu/mix-ins/gnome
   [16]  funtoo/1.0/linux-gnu/mix-ins/mate
   [16]  funtoo/1.0/linux-gnu/mix-ins/kde
   [17]  funtoo/1.0/linux-gnu/mix-ins/media
   [17]  funtoo/1.0/linux-gnu/mix-ins/mate
   [18]  funtoo/1.0/linux-gnu/mix-ins/print
   [18]  funtoo/1.0/linux-gnu/mix-ins/media
   [19]  funtoo/1.0/linux-gnu/mix-ins/python3-only  
   [19]  funtoo/1.0/linux-gnu/mix-ins/print
   [20]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat  
   [20]  funtoo/1.0/linux-gnu/mix-ins/python3-only
   [21]  funtoo/1.0/linux-gnu/mix-ins/server-db
   [21]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
   [22]  funtoo/1.0/linux-gnu/mix-ins/server-mail  
   [22]  funtoo/1.0/linux-gnu/mix-ins/server-db
   [23]  funtoo/1.0/linux-gnu/mix-ins/server-web
   [23]  funtoo/1.0/linux-gnu/mix-ins/server-mail
   [24]  funtoo/1.0/linux-gnu/mix-ins/X  
   [24]  funtoo/1.0/linux-gnu/mix-ins/server-web
   [25]  funtoo/1.0/linux-gnu/mix-ins/xfce  
   [25]  funtoo/1.0/linux-gnu/mix-ins/X
   [26]  funtoo/1.0/linux-gnu/mix-ins/vmware-guest  
   [26]  funtoo/1.0/linux-gnu/mix-ins/xfce
   [27]  funtoo/1.0/linux-gnu/mix-ins/hardened
   [27]  funtoo/1.0/linux-gnu/mix-ins/vmware-guest
   [28]  funtoo/1.0/linux-gnu/mix-ins/hardened
</console>
</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:
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>
<console>
##r### ##b##eselect profile add 14
##r### ##b##eselect profile add 15
</console>
</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.
By enabling the gnome mix-in, various USE and other settings will be optimized to provide you with a pain-free GNOME installation experience.


== Emerging ==  
== Emerging ==


You are provided with two packages that will pull in this desktop environment:  
You are provided with two packages that will pull in this desktop environment:


* ''gnome''
* ''gnome''
Line 52: Line 62:
{{fancynote|As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.}}
{{fancynote|As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.}}


=== GNOME 3.12 from a clean install ===
=== GNOME 3.14 from a clean install ===


==== gnome ====
==== gnome ====
Line 70: Line 80:
</console>
</console>


=== Upgrading from GNOME 3.6 ===
=== Upgrading from GNOME 3.12 ===
 
==== gnome ====


To emerge ''gnome'', remove nautilus-open-terminal if it is installed as it now bundled into gnome-terminal
To update either ''gnome'' or ''gnome-light'' run the following command:
 
<console>
# ##i## emerge -C nautilus-open-terminal
</console>
 
Then, run the following command


<console>
<console>
# ##i## emerge -vauDN world
# ##i## emerge -vauDN world
</console>
==== gnome-light ====
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).
<console>
# ##i## emerge -C gnome-fallback gnome-panel gnome-screensaver metacity gnome-games gcalctool nautilus-open-terminal
</console>
Then, run the following command
<console>
# ##i## emerge -vauDN world
</console>
Finally, restore any applications that have been renamed (such as gcalctool => gnome-calculator)
<console>
# ##i## emerge gnome-calculator
</console>
</console>


Line 126: Line 108:


{{Note|1=
{{Note|1=
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:  
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 170: Line 152:
# ##i##rc
# ##i##rc
</console>
</console>
But you should reboot to avoid having an open login terminal.


==== Setting up xinitrc (text log-in) ====
==== Setting up xinitrc (text log-in) ====
Line 183: Line 167:
</pre>
</pre>


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


=== Disable Adwaita Dark Theme ===
=== Automatically Starting Applications at Login ===


If you do not like the Adwaita Dark Theme it can be disabled by copying then modifying it like so:
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:
 
<console>
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>
<pre>
[Added Associations]
xflux -z 87107
inode/directory=nautilus.desktop;baobab.desktop;
</pre>
</pre>


=== Automatically Starting Applications at Login ===
{{Note|Remember to add a <code>&</code> at the end of any command that doesn't return to the shell prompt after running.}}


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:
== Significant Known Issues (Workarounds Available) ==


<pre>
[https://bugs.funtoo.org/browse/FL-1678 FL-1678]: Bluetooth interface gives wrong pairing key
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.
[https://bugs.funtoo.org/browse/FL-1687 FL-1687]: Wallpaper corruption when resuming from suspend


[[Category:Desktop]]
[[Category:Desktop]]
[[Category:First Steps]]
[[Category:First Steps]]
[[Category:Official Documentation]]
[[Category:Official Documentation]]

Revision as of 12:08, November 4, 2014

What is GNOME?

"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

From a Clean Install

Ensure that the X Window System is installed.

From Testing GNOME 3.14

Remove the GNOME 3.14 unmask by deleting /usr/portage/profiles/package.mask/funtoo-gnome and/or by removing the relevant lines from /etc/portage/package.unmask.

Also, if you are not going to use the gnome mix-in, undo any GNOME 3.14 related package.use and package.keyword additions.

Preparing to emerge

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:

root ##r###  eselect profile list
root ##g##Currently available mix-ins profiles:
  [11]  funtoo/1.0/linux-gnu/mix-ins/audio
  [12]  funtoo/1.0/linux-gnu/mix-ins/cinnamon
  [13]  funtoo/1.0/linux-gnu/mix-ins/console-extras
  [14]  funtoo/1.0/linux-gnu/mix-ins/dvd
  [15]  funtoo/1.0/linux-gnu/mix-ins/gnome
  [16]  funtoo/1.0/linux-gnu/mix-ins/kde
  [17]  funtoo/1.0/linux-gnu/mix-ins/mate
  [18]  funtoo/1.0/linux-gnu/mix-ins/media
  [19]  funtoo/1.0/linux-gnu/mix-ins/print
  [20]  funtoo/1.0/linux-gnu/mix-ins/python3-only
  [21]  funtoo/1.0/linux-gnu/mix-ins/rhel5-compat
  [22]  funtoo/1.0/linux-gnu/mix-ins/server-db
  [23]  funtoo/1.0/linux-gnu/mix-ins/server-mail
  [24]  funtoo/1.0/linux-gnu/mix-ins/server-web
  [25]  funtoo/1.0/linux-gnu/mix-ins/X
  [26]  funtoo/1.0/linux-gnu/mix-ins/xfce
  [27]  funtoo/1.0/linux-gnu/mix-ins/vmware-guest
  [28]  funtoo/1.0/linux-gnu/mix-ins/hardened

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:

root ##r### eselect profile add 15

By enabling the gnome mix-in, various USE and other settings will be optimized to provide you with a pain-free GNOME installation experience.

Emerging

You are provided with two packages that will pull in this desktop environment:

  • gnome
   Note

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.

  • gnome-light
   Note

As the name implies, this pulls in the base minimal you need to get a functioning GNOME Desktop Environment.

GNOME 3.14 from a clean install

gnome

To emerge gnome run the following command

root #  emerge gnome

gnome-light

To emerge gnome-light run the following command

root #  emerge gnome-light

Upgrading from GNOME 3.12

To update either gnome or gnome-light run the following command:

root #  emerge -vauDN world

Subsystems

Bluetooth

For bluetooth support, ensure that:

  1. Bluetooth support is enabled in your kernel (using modules is fine).
  2. Your bluetooth hardware is turned on.
  3. Add the bluetooth startup script to the default runlevel, and start it.

This can be done as follows:

root # rc-update add bluetooth default
root # rc

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

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:

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 cupsd to the default runlevel:

root # rc-update add cupsd default
root # rc

You should now be able to navigate to Settings -> Printers and add printers to your system, and print.

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.

Finishing Touches

X

Setting up xdm (GUI log-in)

Typically, you will want to use gdm, 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 /etc/conf.d/xdm and set DISPLAYMANAGER to gdm instead of xdm. Then, perform the following steps to add xdm to the default runlevel, and have it start automatically from now on when your system starts:

   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

Then, if you want to start it now do:

root # rc

But you should reboot to avoid having an open login terminal.

Setting up xinitrc (text log-in)

Adding the following to your ~/.xinitrc file is sufficient:

# Fix Missing Applications in Gnome
export XDG_MENU_PREFIX=gnome-

# Properly Launch the Desired X Session
exec ck-launch-session gnome-session

Additionaly, 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 Control Center under Region & Language.

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.

Significant Known Issues (Workarounds Available)

FL-1678: Bluetooth interface gives wrong pairing key

FL-1687: Wallpaper corruption when resuming from suspend