Difference between pages "GNOME First Steps" and "Hostname"

From Funtoo
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
== What is GNOME? ==
==Introduction==
"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]
A hostname is a unique name created to identify a machine on a network. In computer networking, a hostname  is a label that is assigned to a device connected to a computer network and that is used to identify the device in various forms of electronic communication such as the World Wide Web, e-mail or Usenet. Hostnames may be simple names consisting of a single word or phrase, or they may be structured.
 
==Configuration==
== Prerequisites ==
In Funtoo Linux <code>/etc/conf.d/hostname</code> is the only configuration file for setting a hostname. In OpenRC framework <code>/etc/conf.d/foo</code> is the configuration file for a corresponding Init script <code>/etc/init.d/foo</code>.  With the case of hostname, default value in <code>/etc/conf.d/hostname</code> is set to ''localhost'', means when system boots and OpenRC's <code>/etc/init.d/hostname</code> script started a hostname getting only ''localhost'' name. How it looks?  In your shell promt this will look in following way, an example for root:
 
Before installing GNOME, ensure that the [[X Window System]] has been installed.
 
{{fancywarning|1=
Please note that Linux kernel 3.15.* may still have serious incompatibility with various graphics drivers. If you like to use <tt>gentoo-sources</tt> or <tt>vanilla-sources</tt>, 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 ==
 
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
localhost ~ # ##i## Hello :)
##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>
</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:
Let's play a bit with a configuration. Open <code>/etc/conf.d/hostname</code> with your favorite editor and set a hostname of your choice.  Below, I will use a real examples  from one of my working test boxes.
<console>
<console>
##r### ##b##eselect profile add 14
localhost ~ # ##i## nano /etc/conf.d/hostname
</console>
</console>
 
Let's set it to hostname="oleg-stable.host.funtoo.org". Save the file and restart  a hostname service:
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''
 
{{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.}}
 
* ''gnome-light''
 
{{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 ====
 
To emerge ''gnome'' run the following command
 
<console>
<console>
# ##i## emerge -va gnome
localhost ~ # ##i## service hostname restart
</console>
</console>
 
Now, let's examine our changes, after a restarting a hostname
==== gnome-light ====
 
To emerge ''gnome-light'' run the following command
 
<console>
# ##i## emerge -va gnome-light
</console>
 
=== Upgrading from GNOME 3.6 ===
 
==== gnome ====
 
To emerge ''gnome'', remove nautilus-open-terminal if it is installed as it now bundled into gnome-terminal
 
<console>
# ##i## emerge -vaC nautilus-open-terminal
</console>
 
Then, run the following command
 
<console>
# ##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 -vaC gnome-fallback gnome-panel gnome-screensaver metacity gnome-games gcalctool nautilus-open-terminal
</console>
 
Then, run the following command
 
<console>
<console>
# ##i## emerge -vauDN world
oleg-stable ~ # ##i## Hello :)
</console>
</console>
 
== Diving deeper==
Finally, restore any applications that have been renamed (such as gcalctool => gnome-calculator)
Notice, that in above output we seeing a shortened hostname and not a FQDN (Fully Qualified Domain Name). Don't be frustrated. This is  how  default bash promt <code>PS1</code> set. To get nice promts, please, follow http://www.funtoo.org/Prompt_Magic
 
Another way to test our settings is using a '''hostname''' command. Here we will show only  some of it's features. Let's try to execute '''hostname''' command:
<console>
<console>
# ##i## emerge -va gnome-calculator
oleg-stable ~ # ##i## hostname
oleg-stable.host.funtoo.org
</console>
</console>
 
Now we see our fully qualified domain name hostname just how we configured it in <code>/etc/conf.d/hostname</code> in above paragraph. To get a short hostname we need to set '''-s ''' (short) argument to hostname command.  
== Subsystems ==
 
=== Bluetooth ===
 
For bluetooth support, ensure that:
 
# Bluetooth support is enabled in your kernel (using modules is fine).
# 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:
 
<console>
<console>
# ##i##rc-update add bluetooth default
oleg-stable ~ # ##i## hostname -s
# ##i##rc
oleg-stable
</console>
</console>
 
Good! Hostname offers more then just displaying a system host name but can also set one. Let's try:
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.
 
=== Printing ===
 
To enable printing support, add <code>cupsd</code> to the default runlevel:
 
<console>
<console>
# ##i##rc-update add cupsd default
oleg-stable ~ # ##i## hostname foo.bar.baz
# ##i##rc
oleg-stable ~ # ##i## hostname
foo.bar.baz
</console>
</console>
As you can see, we changed a hostname on-the-fly. This is not recommended way.
{{fancywarning|Please, notice that using '''hostname''' command to configure will work temporary for a current session and will be reverted back to a value set in <code>/etc/conf.d/hostname</code> file with next system restart.}}


You should now be able to navigate to ''Settings'' -> ''Printers'' and add printers to your system, and print.
Now that we got a brief description of a hostname and basic configuration steps, its time to reflect another important case which is directly related to a Funtoo Linux hostname generation, a hosts.


=== Scanning ===
==Hosts case==
As per man page <code>hosts</code> stands for static table lookup for hostnames and it's configuration file is <code>/etc/hosts</code>. Here is how it looks
{{file|name=/etc/hosts|body=
# Auto-generated hostname. Please do not remove this comment.
127.0.0.1      oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain
::1            oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain
}}
As you can see it has entries from our <code>/etc/conf.d/hostname</code>. As you may have guessed, in Funtoo Linux <code>/etc/hosts</code> file entries are auto-generated, when OpenRC hostname service starts. Previously, it is used to edit <code>/etc/hosts</code> manually. In Funtoo Linux there is no such need.


To enable scanning support, add your user account to the <code>lp</code> group. This will allow your user to access the USB scanner.
What about custom hosts entries? This can be easily configured with 'aliases'. For example you want to have a hosts for your remote router or a computer in home LAN. Let's try to modify <code>/etc/conf.d/hostname</code> with adding following - my remote computer oleg.distant.home has an IP 10.1.1.2:
 
<console>
Then, <code>emerge xsane</code>, and run it. It should be able to access your scanner.
oleg-stable ~ # ##i## echo 'aliases="10.1.12 oleg.distant.home"' >> /etc/conf.d/hostname
 
oleg-stable ~ # ##i## service hostname restart
== Finishing Touches ==
 
=== X ===
 
==== Setting up xdm (GUI log-in) ====
 
Typically, you will want to use <tt>gdm</tt>, 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 <tt>/etc/conf.d/xdm</tt> and set <tt>DISPLAYMANAGER</tt> to <tt>gdm</tt> instead of <tt>xdm</tt>. Then, perform the following steps to add <tt>xdm</tt> to the default runlevel, and have it start automatically from now on when your system starts:
 
<console>
# ##i##rc-update add xdm default
</console>
</console>
 
Examine our changes:
Then, if you want to start it now do
 
<console>
<console>
# ##i##rc
oleg-stable ~ # ##i## cat /etc/hosts
</console>
</console>
 
{{file|name=/etc/hosts|body=
But you should reboot to avoid having an open login terminal
# Auto-generated hostname. Please do not remove this comment.
 
10.1.1.2        oleg.distant.home
==== Setting up xinitrc (text log-in) ====
127.0.0.1      oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain
 
::1            oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain
Adding the following to your <tt>~/.xinitrc</tt> file is sufficient:
}}
 
<pre>
# Fix Missing Applications in Gnome
export XDG_MENU_PREFIX=gnome-
 
# Properly Launch the Desired X Session
exec ck-launch-session gnome-session
</pre>
 
Additionaly, if you need support for different input sources, there is no longer a need to configure ibus or scrim in your <tt>.xinitrc</tt> file as GNOME uses ibus natively. Simply configure it in the Control Center under Region & Langauge.
 
=== 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 <tt>.xinitrc</tt>, starting up applications when X starts is relatively easy. When using GDM, this can still be accomplished, by using the <tt>~/.xprofile</tt> file. Here's my sample <tt>.xprofile</tt> to start <tt>xflux</tt> to dim the screen at night:
 
<pre>
xflux -z 87107
</pre>
 
Remember to add a <tt>&</tt> at the end of any command that doesn't return to the shell prompt after running.
 
[[Category:Desktop Environments]]
[[Category:First Steps]]
[[Category:Official Documentation]]

Revision as of 16:06, February 24, 2015

Introduction

A hostname is a unique name created to identify a machine on a network. In computer networking, a hostname is a label that is assigned to a device connected to a computer network and that is used to identify the device in various forms of electronic communication such as the World Wide Web, e-mail or Usenet. Hostnames may be simple names consisting of a single word or phrase, or they may be structured.

Configuration

In Funtoo Linux /etc/conf.d/hostname is the only configuration file for setting a hostname. In OpenRC framework /etc/conf.d/foo is the configuration file for a corresponding Init script /etc/init.d/foo. With the case of hostname, default value in /etc/conf.d/hostname is set to localhost, means when system boots and OpenRC's /etc/init.d/hostname script started a hostname getting only localhost name. How it looks? In your shell promt this will look in following way, an example for root:

localhost ~ #  Hello :)

Let's play a bit with a configuration. Open /etc/conf.d/hostname with your favorite editor and set a hostname of your choice. Below, I will use a real examples from one of my working test boxes.

localhost ~ #  nano /etc/conf.d/hostname

Let's set it to hostname="oleg-stable.host.funtoo.org". Save the file and restart a hostname service:

localhost ~ #  service hostname restart

Now, let's examine our changes, after a restarting a hostname

oleg-stable ~ #  Hello :)

Diving deeper

Notice, that in above output we seeing a shortened hostname and not a FQDN (Fully Qualified Domain Name). Don't be frustrated. This is how default bash promt PS1 set. To get nice promts, please, follow http://www.funtoo.org/Prompt_Magic Another way to test our settings is using a hostname command. Here we will show only some of it's features. Let's try to execute hostname command:

oleg-stable ~ #  hostname
oleg-stable.host.funtoo.org

Now we see our fully qualified domain name hostname just how we configured it in /etc/conf.d/hostname in above paragraph. To get a short hostname we need to set -s (short) argument to hostname command.

oleg-stable ~ #  hostname -s
oleg-stable

Good! Hostname offers more then just displaying a system host name but can also set one. Let's try:

oleg-stable ~ #  hostname foo.bar.baz
oleg-stable ~ #  hostname 
foo.bar.baz

As you can see, we changed a hostname on-the-fly. This is not recommended way.

   Warning

Please, notice that using hostname command to configure will work temporary for a current session and will be reverted back to a value set in /etc/conf.d/hostname file with next system restart.

Now that we got a brief description of a hostname and basic configuration steps, its time to reflect another important case which is directly related to a Funtoo Linux hostname generation, a hosts.

Hosts case

As per man page hosts stands for static table lookup for hostnames and it's configuration file is /etc/hosts. Here is how it looks

   /etc/hosts
# Auto-generated hostname. Please do not remove this comment.
127.0.0.1       oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain
::1             oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain

As you can see it has entries from our /etc/conf.d/hostname. As you may have guessed, in Funtoo Linux /etc/hosts file entries are auto-generated, when OpenRC hostname service starts. Previously, it is used to edit /etc/hosts manually. In Funtoo Linux there is no such need.

What about custom hosts entries? This can be easily configured with 'aliases'. For example you want to have a hosts for your remote router or a computer in home LAN. Let's try to modify /etc/conf.d/hostname with adding following - my remote computer oleg.distant.home has an IP 10.1.1.2:

oleg-stable ~ #  echo 'aliases="10.1.12 oleg.distant.home"' >> /etc/conf.d/hostname
oleg-stable ~ #  service hostname restart
Examine our changes:
oleg-stable ~ #  cat /etc/hosts
   /etc/hosts
# Auto-generated hostname. Please do not remove this comment.
10.1.1.2        oleg.distant.home
127.0.0.1       oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain
::1             oleg-stable.host.funtoo.org oleg-stable localhost localhost.localdomain