doc/en/gnome/docs/faq2.sgml
Joe Marcus Clarke 103699b183 * Be a little more clear that the Tinderbox packages are up-to-date
* Remove a section about bad thread ports that is no longer true
* Remove <tt></tt> around "X" since it made the X appear lowercase
2004-08-14 06:01:42 +00:00

957 lines
35 KiB
Text

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/faq2.sgml,v 1.73 2004/08/03 04:02:18 marcus Exp $">
<!ENTITY title "FreeBSD GNOME Project: GNOME &gnomever; FAQ">
<!ENTITY % gnomeincludes SYSTEM "../includes.sgml"> %gnomeincludes;
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
]>
<html>
&header;
<h2>Contents</h2>
<ol>
<li> <a href="#q1">How do I get GNOME &gnomever; for FreeBSD?</a>
<li> <a href="#q2">GNOME &gnomever; is failing to build from ports. What
do I do?</a>
<li> <a href="#q3">I installed GNOME &gnomever;, but I am missing
application foo. What gives?</a>
<li> <a href="#q4">What is the best way to upgrade from GNOME
1.4 to GNOME 2?</a>
<li> <a href="#q5">What is the best way to upgrade from GNOME
2.4 to GNOME &gnomever;?</a>
<li> <a href="#q6">How do I keep my GNOME &gnomever; components
and applications up-to-date?</a>
<li> <a href="#q7">Can I install GNOME 1.4 applications under
GNOME &gnomever;?</a>
<li> <a href="#q8">Where can I get more themes for GNOME
&gnomever;?</a>
<li> <a href="#q9">What window managers work well with GNOME
&gnomever;? </a>
<li> <a href="#q10">Does GNOME &gnomever; support anti-aliased
fonts?</a>
<li> <a href="#q11">How can I control what fonts are anti-aliased?
</a>
<li> <a href="#q12">How do I edit my GNOME 2 menus?</a>
<li> <a href="#q13">How do I use GTK+ 2 resource settings for
GTK+ 2 applications when not in a GNOME environment?</a>
<li> <a href="#q14">How do I configure settings for GNOME 1.4
applications under GNOME &gnomever;?</a>
<li> <a href="#q15">Nautilus-cd-burner does not let me burn CDs.
How can I fix this?</a>
<li> <a href="#q16">How do I add new GDM sessions?</a>
<li> <a href="#q17">How do I disable spatial Nautilus?</a>
<li> <a href="#q18">How do I disable desktop icons for
"Computer," "Home," and "Trash?"</a>
<li> <a href="#q19">How do I mount my removable media in
Nautilus?</a>
<li> <a href="#q20">Why is GNOME so slow to start up?</a>
<li> <a href="#q21">How do I install GNOME packages from
the GNOME Tinderbox?</a>
<li> <a href="#q22">How do I add new MIME types to
GNOME?</a>
<li> <a href="#q23">How do I configure GDM for
automatic logins?</a>
</ol>
<h2>Full Text </h2>
<ol>
<!-- Q1 -->
<li style="padding-bottom: 0.5em"><a name="q1"></a>
<p><b>How do I get GNOME &gnomever; for FreeBSD?</b></p>
<!-- A1 -->
<p>There are two ways to install GNOME &gnomever; on FreeBSD. One way is to use
<a href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/packages-using.html">
packages</a>, and the other way is to use
<a href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/ports-using.html">
ports</a>. Before doing either installation, you should
first familiarize yourself with the GNOME &gnomever;
<a href="http://www.gnome.org/start/&gnomever;/notes/">
release notes</a>.</p>
<p><u>Install GNOME &gnomever; from packages.</u></p>
<p>To install GNOME &gnomever; from packages, use the command:</p>
<tt># pkg_add -r gnome2</tt>
<p>This will download the latest GNOME &gnomever; packages from the
FreeBSD FTP site, and proceed to install them on your system.
</p>
<p>Up-to-date GNOME packages for i386 for all supported
versions of FreeBSD are also available from the
<a href="#q21">GNOME Tinderbox</a>.</p>
<p>To build and install GNOME &gnomever; from ports, you should first
<a href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html">
cvsup</a> the latest ports tree. Then:</p>
<pre>
# cd /usr/ports/x11/gnome2
# make clean
# make install clean
</pre>
<p><u>Add <b>LAME</b> support to your GNOME
&gnomever; desktop.</u></p>
<p>For the best GNOME &gnomever; experience, you should install
from ports, after adding the following macro to your
<tt>/etc/make.conf</tt> file:</p>
<pre>
WITH_LAME= yes
</pre>
<p><tt>WITH_LAME</tt> adds MP3 support, enabling you to play
MP3s directly in Nautilus. If you install GNOME from packages
or build it from ports without LAME support enabled, all
you need to do to enable LAME support is rebuild
<tt>multimedia/nautilus-media</tt> after adding
<tt>WITH_LAME</tt> to <tt>/etc/make.conf</tt>.</p>
<p>This option may cause build errors on certain platforms, and
thus they are not enabled by default.</p>
<p><u>Make GNOME &gnomever; start when X starts.</u></p>
<p>Once you have the GNOME &gnomever; desktop installed,
GNOME &gnomever; can be started by adding the following line
to <tt>~/.xsession</tt> or <tt>~/.xinitrc</tt>, as appropriate:</p>
<pre>
exec gnome-session
</pre>
</li>
<!-- Q2 -->
<li style="padding-bottom: 0.5em"><a name="q2"></a>
<p><b>GNOME &gnomever; is failing to build from ports. What do I do?</b></p>
<!-- A2 -->
<p>The majority of GNOME &gnomever; compilation problems can be solved
by making sure all the necessary GNOME &gnomever; components are
<a href="#q6">up-to-date</a>.</p>
<p><u>Updating solves most problems</u></p>
<p>If you haven't yet followed <a href="#q6">FAQ #6</a>, do so, as
it will most likely fix the problem you are reading this document
to solve.</p>
<p>Please follow <a href="#q6">FAQ #6</a>. If you have not done so,
and you ask for help, you will be told to follow FAQ #6.</p>
<p>In general, when a GNOME &gnomever; component is not up-to-date,
you will see an error similar to the following:</p>
<pre>
checking for libgnomeui-2.0 libbonoboui-2.0 libbonobo-2.0 >= 2.2.1
gnome-vfs-2.0 libgnomeprint-2.2 >= 2.3.0 libgnomeprintui-2.2 libglade-2.0...
configure: error: Library requirements (libgnomeui-2.0 libbonoboui-2.0
libbonobo-2.0 >= 2.2.1 gnome-vfs-2.0 libgnomeprint-2.2 >= 2.3.0 libgnomeprintui-2.2
libglade-2.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable
if your libraries are in a nonstandard prefix so pkg-config can find them.
</pre>
<p>Simply keeping your ports tree <a href="#q6">up-to-date</a> will
prevent these errors.</p>
<p>If the <tt>pkg-config</tt> program is out-of-date, you may see
a configure error similar to the following:</p>
<pre>
configure: error: *** pkg-config too old; version 0.14 or better required.
</pre>
<p>While this may be buried in some other text, the error is
very straight-forward: you need to upgrade pkg-config.
The pkg-config application is found in the
<tt>devel/pkgconfig</tt> port. By updating this port to
the latest version, this error will go away.</p>
<p>You may see compiler errors relating to pthreads
(&posix; threads), such as:</p>
<pre>
undefined reference to 'strerror_r'
</pre>
<p>To fix thread related errors, make sure you have the following
compiled into your kernel:</p>
<pre>
options _KPOSIX_PRIORITY_SCHEDULING
</pre>
<p>If you are tracking -stable or -current, make sure that you
do <b>not</b> have <tt>NOLIBC_R</tt> set in
<tt>/etc/make.conf</tt>. If you do, remove it, then rebuild world.
If you still have trouble, please send email to
<a href="mailto:&email;@FreeBSD.org">
&email;@FreeBSD.org</a> with the output of the failed compilation.
It is also helpful to include the config.log from the port's
work directory.</p>
<p><u>Prevent two versions of the same library.</u></p>
<p>A common source of build failures is the existence of multiple versions
of the same library. This can happen if you have two different versions of
a port installed, or can even happen through normal <tt>portupgrade</tt> use.
You can back up the libraries in <tt>/usr/local/lib/compat/pkg</tt> and remove
them, and then run <tt>portupgrade -u -rf pkgconfig</tt>. This will force a
rebuild of all GNOME-related apps (and a fair number of other apps) without
retaining old versions of libraries in <tt>/usr/local/lib/compat/pkg</tt>.
</p>
</li>
<!-- Q3 -->
<li style="padding-bottom: 0.5em"><a name="q3"></a>
<p><b>I installed GNOME &gnomever;, but I am missing application foo.
What gives?</b></p>
<!-- A3 -->
<p>Only the core desktop is included in the
<tt>gnome2</tt> package. Here are some other GNOME
meta-ports that offer convenient groupings of popular GNOME 2
software.</p>
<ul>
<li>The <b>GNOME 2 Fifth Toe</b> (<tt>x11/gnome2-fifth-toe</tt>)
consists of stable GNOME 2 applications that many users
expect to find in a functional desktop environment. This
includes image manipulation applications, chat and instant
messenger applications, and music and multimedia players</li>
<li>The <b>GNOME 2 Hacker Tools</b>
(<tt>devel/gnome2-hacker-tools</tt>) consists of applications
developers would need to create and maintain GNOME software
projects. This includes IDEs, interface builders, ``hacker''
editors, and code generation tools.</li>
<li>The <b>GNOME 2 Office</b> (<tt>editors/gnome2-office</tt>)
consists of applications that are commonly found in office or
productivity suites. This includes a spreadsheet application,
word processor, project management application, database
access application, groupware suite, and diagramming
application.</li>
<li>The <b>GNOME 2 Power Tools</b>
(<tt>x11/gnome2-power-tools</tt>) consists of utilities
and applets for the technically-minded GNOME user. It
also contains many useful add-on utilities for some of
the applications found in the Desktop and Fifth
Toe.</li>
</ul>
<p>To install any of these from packages:</p>
<pre>
# pkg_add -r <em>meta-port</em>
</pre>
<p>For example, to install the GNOME 2 Fifth Toe from packages:</p>
<pre>
# pkg_add -r gnome2-fifth-toe
</pre>
<p>To install any of these from ports:</p>
<pre>
# cd /usr/ports/<em>category</em>/<em>meta-port</em>
# make clean
# make install clean
</pre>
<p>For example, to install the GNOME 2 Fifth Toe from ports:</p>
<pre>
# cd /usr/ports/x11/gnome2-fifth-toe
# make clean
# make install clean
</pre>
</li>
<!-- Q4 -->
<li style="padding-bottom: 0.5em"><a name="q4"></a>
<p><b>What is the best way to upgrade from GNOME 1.4 to GNOME 2?</b></p>
<!-- A4 -->
<p>If you have
GNOME 1.4, and you want to upgrade to GNOME &gnomever;, first
familiarize yourself with the <a href="http://www.gnome.org/start/2.0/installation.html#upgrading">official</a> upgrade instructions from
the GNOME site. Make sure your GNOME 1.4 ports are
up-to-date, and then remove the following GNOME 1.4 packages from
the system:</p>
<pre>
gnomecore
sawfish
gnomeapplets
gnomemedia
gtop
libgtop
nautilus
gedit
xalf
bugbuddy
gnomeaudio
gnomegames
gnomeutils
gdm
eog
ggv
</pre>
<p>After those packages are removed, you can build GNOME &gnomever; as per
the <a href="#q1">instructions listed above</a>.</p>
</li>
<!-- Q5 -->
<li style="padding-bottom: 0.5em"><a name="q5"></a>
<p><b>What is the best way to upgrade from GNOME 2.4 to GNOME &gnomever;?</b></p>
<!-- A5 -->
<p>The 2.4 to &gnomever; process is trickier than the 2.2 to 2.4 process. You are
strongly advised to read the <a href="faq26.html">upgrade FAQ</a> for detailed
instructions.</p>
</li>
<!-- Q6 -->
<li style="padding-bottom: 0.5em"><a name="q6"></a>
<p><b>How do I keep my GNOME &gnomever; components and applications
up-to-date?</b></p>
<!-- A6 -->
<p>You are emphatically encouraged to use <tt>portupgrade</tt> --
and <em>only</em> <tt>portupgrade</tt> -- to keep your GNOME
&gnomever; components and applications up-to-date.</p>
<p><u>Update your ports with <tt>portupgrade.</tt></u></p>
<p>Once you have updated your ports tree (presumably with
<tt>cvsup</tt>), the following two simple commands will update
what needs to be updated, and will prevent inconsistencies:</p>
<pre>
# pkgdb -F
# portupgrade -a
</pre>
<p><u>Start from scratch.</u></p>
<p>Despite consistent utilization of <tt>portupgrade</tt>, if
it seems like everything is refusing to build with everything
else, you might save yourself a headache or three by removing
all your GNOME apps and reinstalling them (your data files will
remain untouched). To do this, follow these commands:</p>
<pre>
# pkgdb -F
# pkg_delete -rf pkgconfig\*
# cd /usr/ports/x11/gnome2
# make clean
# make install clean
</pre>
<p>After running the above commands, you will have to reinstall all
the GNOME applications you desire. This process sounds painful,
but it is actually a great way to clear cruft off of your system.
Just install applications as you need them, and you'll be surprised
how much disk space you have reclaimed. A full rebuild does take
a significant amount of time; fortunately, this measure is only
rarely needed.</p>
</li>
<!-- Q7 -->
<li style="padding-bottom: 0.5em"><a name="q7"></a>
<p><b>Can I install GNOME 1.4 applications under GNOME &gnomever;?</b></p>
<!-- A7 -->
<p>GNOME 1.4 ports will run well under the GNOME 2 desktop. Older
applications that were incompatible with the GNOME 2 desktop
have been removed from the ports tree, so it should be safe to
run any GNOME application in the ports tree under the GNOME 2
desktop.</p>
</li>
<!-- Q8 -->
<li style="padding-bottom: 0.5em"><a name="q8"></a>
<p><b>Where can I get more themes for GNOME &gnomever;?</b></p>
<!-- A8 -->
<p>The website <a href="http://art.gnome.org">
art.gnome.org</a> has been setup as a general GNOME theme
repository. They offer some gtk+-2, metacity, sawfish,
nautilus, icon, and gdm themes, as well as some backgrounds.</p>
<p>KDE's KDE-look.org now has a GNOME companion site,
<a href="http://www.gnome-look.org">GNOME-look.org</a>,
which sports an interface and extensive archive similar
to KDE-look.org.</p>
<p>A new theme site called <a href="http://www.themedepot.org">
The Theme Depot</a> has just been launched. This site contains
themes for GNOME 2 as well as KDE and quite a few window
managers.
</p>
<p>Freshmeat.net has a themes archive at
<a href="http://themes.freshmeat.net">themes.freshmeat.net</a>,
which contains themes and backgrounds for many window managers,
theme engines, and desktop environments. This site grew out of
the old themes.org.
</p>
<p>A good site for some cool GNOME icons (some stock, some new)
is jimmac's <a href="http://jimmac.musichall.cz/ikony.php3">
Icons</a> site.</p>
<p>Some of these themes have already been ported to
FreeBSD. Check out the <tt>x11-themes/gnome-icons</tt> and
<tt>x11-themes/metacity-themes</tt> meta-ports for a nice
sample.</p>
<p>See the instructions on the website for installing the themes.
If you feel inclined to port a few of them, you will not be
turned away ;-).</p>
</li>
<!-- Q9 -->
<li style="padding-bottom: 0.5em"><a name="q9"></a>
<p><b>What window managers work well with GNOME &gnomever;?</b></p>
<!-- A9 -->
<p>The <tt>gnome2</tt> meta-port installs the
metacity window manager by default. Another popular window
manager that works well with GNOME &gnomever; is
<a href="http://sawmill.sourceforge.net/">sawfish</a>. Sawfish
can be found in <tt>x11-wm/sawfish2</tt>.</p>
<p>To switch between metacity and sawfish in GNOME 2, you will need
to do the following:</p>
<pre>
# killall metacity; sawfish &
# gnome-session-save --gui
</pre>
<p>The <tt>gnome-session-save</tt> is important. Without it, the
window manager will revert back to the one previously configured
upon next login. To switch back, simply reverse sawfish and
metacity.</p>
<p>If you have gotten the GNOME &gnomever; desktop working under an
alternative window manager, please take a screenshot and
<a href="mailto:&email;@FreeBSD.org">send it to us</a>!
</p>
</li>
<!-- Q10 -->
<li style="padding-bottom: 0.5em"><a name="q10"></a>
<p><b>Does GNOME &gnomever; support anti-aliased fonts?</b></p>
<!-- A10 -->
<p>Yes! Anti-aliasing requires XFree86 4.x with
freetype2 support. To add freetype2 support to X, make
sure you have the following modules loaded in your
XF86Config file under the Modules section:</p>
<pre>
Load "freetype"
Load "type1"
</pre>
<p>Then, simply check out the Fonts capplet under
Applications->Desktop Preferences. If you want a good set
of TrueType starter fonts, install the
<tt>x11-fonts/webfonts</tt> port.</p>
<p>Sometimes, after adding new fonts to the system, it is
necessary to teach fontconfig about them. If you find that
newly added fonts are not made available even after
restarting GNOME 2, run the following command as root:</p>
<pre>
# fc-cache -f -v
</pre>
<p>If you have any questions, please send them to
<a href="mailto:&email;@FreeBSD.org">&email;@FreeBSD.org</a>.
</p>
</li>
<!-- Q11 -->
<li style="padding-bottom: 0.5em"><a name="q11"></a>
<p><b>How can I control what fonts are anti-aliased?</b></p>
<!-- A11 -->
<p>GNOME &gnomever; makes use of libXft and fontconfig to
handle anti-aliasing. Fontconfig is a very powerful
XML-based font configuration package. You can create a
<tt>~/.fonts.conf</tt> file that controls virtually
every aspect of fontconfig. For example, if you do not
want to anti-alias fonts smaller than 16 point, create
a <tt>~/.fonts.conf</tt> with the following contents:</p>
<pre>
&lt;?xml version="1.0"?&gt;
&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
&lt;fontconfig&gt;
&lt;match target="font"&gt;
&lt;test name="size" compare="less_eq"&gt;
&lt;double&gt;16&lt;/double&gt;
&lt;/test&gt;
&lt;edit name="antialias" mode="assign"&gt;
&lt;bool&gt;false&lt;/bool&gt;
&lt;/edit&gt;
&lt;/match&gt;
&lt;/fontconfig&gt;
</pre>
<p>Refer to fonts-conf(5) for more information.</p>
</li>
<!-- Q12 -->
<li style="padding-bottom: 0.5em"><a name="q12"></a>
<p><b>How do I edit my GNOME 2 menus?</b></p>
<!-- A12 -->
<p>You need to use Nautilus to edit your GNOME 2 menus. If you
want to edit any menu other than Favorites, you must be
root.</p>
<p>To edit the menus, launch Nautilus, and enter the URL
<b>applications:///</b>. From there you should be able to edit
your entire application menu.</p>
</li>
<!-- Q13 -->
<li style="padding-bottom: 0.5em"><a name="q13"></a>
<p><b>How do I use GTK+ 2 resource settings for GTK+ 2 applications
when not in a GNOME environment?</b></p>
<!-- A13 -->
<p> GNOME 2 applications get their GTK+ 2 resources from themes and
the corresponding theme engine. If you would rather run your
GTK+ 2 applications in a non-GNOME environment then you will
need to create a file named <tt>~/.gtkrc-2.0</tt>.</p>
<p> To use the widgets from a GTK+ 2 theme when in a non-GNOME
environment, simply <tt>include</tt> the theme's
<tt>gtk-2.0/gtkrc</tt> in your <tt>~/.gtkrc-2.0</tt>. For example:
<pre>include "/usr/X11R6/share/themes/Crux/gtk-2.0/gtkrc"</pre>
<p> If you prefer, you can use the same GTK+ 1.2 theme for both
GTK+ 1.2 and GTK+ 2 applications, which will give your GTK+
programs a consistent look. For the most part, you can transfer
your settings from your <tt>~/.gtkrc</tt> file (used for
GTK+ 1.2) with a couple of caveats.</p>
<ol>
<li> If you have any theme engine references, you will have
to make sure there is a corresponding GTK+ 2 theme engine.
Otherwise, remove the engine entries.</li>
<li> The default font specification should be outside of
any <tt>style</tt> blocks and should be specified with
the <tt>gtk-font-name</tt> keyword. For example:
<pre>gtk-font-name = "Verdana 11"</pre>
</li>
</ol>
<p> Note that while a GTK+ 1.2 <tt>gtkrc</tt> file will work
in a GTK+ 2 <tt>gtkrc-2.0</tt> file, the opposite is <i>not</i>
true: the contents of a GTK+ 2 <tt>gtkrc-2.0</tt> file will
<i>not</i> work inside a GTK+ 1.2 <tt>gtkrc</tt> file.</p>
<p>For simply switching GTK+ themes without needing to
edit your <tt>~/.gtkrc</tt> files, you can use the
<tt>x11/gtk-theme-switch</tt> and
<tt>x11/gtk2-theme-switch</tt> ports.</p>
</li>
<!-- Q14 -->
<li style="padding-bottom: 0.5em"><a name="q14"></a>
<p><b>How do I configure settings for GNOME 1.4 applications under
GNOME &gnomever;?</b></p>
<!-- A14 -->
<p>Install <tt>sysutils/gnomecontrolcenter</tt>, then invoke
<tt>gnomecc</tt> from the command line to bring up the GNOME
1.4 control center.</p>
</li>
<!-- Q15 -->
<li style="padding-bottom: 0.5em"><a name="q15"></a>
<p><b>Nautilus-cd-burner does not let me burn CDs. How can I
fix this?</b></p>
<!-- A15 -->
<p>Nautilus-cd-burner cannot write to CD/DVD burners unless support
for those devices is enabled in the kernel, and the
permissions on the device nodes allow write access.
Nautilus-cd-burner talks to CD/DVD burners through the
SCSI CAM subsystem. Therefore, you must make sure
you have the following configured in your kernel:</p>
<pre>
device scbus
device cd
device pass
</pre>
<p>You must also make sure you have the following configured in
your kernel if you are using an ATAPI CD/DVD burner:</p>
<pre>
device atapicam
</pre>
<p>To figure out which CD/DVD drive you will be using, run the
following command as root:</p>
<pre>
# camcontrol devlist
</pre>
<p>Your output will look similar to the following:</p>
<pre>
&lt;QSI CDRW/DVD SBW-242 UD22&gt; at scbus1 target 0 lun 0 (cd0,pass0)
</pre>
<p>The devices in parentheses at the end are important. You
must make sure the <tt>/dev</tt> entries for those devices
are writable by the users that will be using
nautilus-cd-burner. In addition to those devices,
<tt>/dev/xpt*</tt> must also be writable to your
nautilus-cd-burner users. The following
<tt>/etc/devfs.conf</tt> configuration will achieve the
desired results given the above devlist (<b>NB:</b>
<tt>devfs.conf</tt> is only supported on FreeBSD 5.X):</p>
<pre>
perm cd0 0666
perm xpt0 0666
perm pass0 0666
</pre>
<p>On FreeBSD 4.X, you can simply set the device node
permissions, and they will be preserved across reboots.
Note that you must use the 'c' device nodes on
FreeBSD 4.X (e.g. <tt>cd0c</tt>).</p>
</li>
<!-- Q16 -->
<li style="padding-bottom: 0.5em"><a name="q16"></a>
<p><b>How do I add new GDM sessions?</b></p>
<!-- A16 -->
<p>The process for adding new GDM sessions has changed substantially
between GNOME 2.2 and &gnomever;. In order to add new sessions
now, you must create a <tt>.desktop</tt> file containing the session
configuration information. Session files live in
<tt>/usr/X11R6/etc/dm/Sessions</tt>. For example, to add
a KDE session, create a file in <tt>/usr/X11R6/etc/dm/Sessions</tt>
called <tt>kde.desktop</tt>. That file should contain the
following:</p>
<pre>
[Desktop Entry]
Encoding=UTF-8
Name=KDE
Comment=This session logs you into KDE
Exec=/usr/local/bin/startkde
TryExec=/usr/local/bin/startkde
Icon=
Type=Application
</pre>
<p>This file must have execute permissions. For example:</p>
<pre>
# chmod 0555 kde.desktop
</pre>
<p>After creating this file, restart GDM, and there will be a
<b>KDE</b> link under the <em>Sessions</em> menu.</p>
</li>
<!-- Q17 -->
<li style="padding-bottom: 0.5em"><a name="q17"></a>
<p><b>How do I disable spatial Nautilus?</b></p>
<!-- A17 -->
<p>As of GNOME &gnomever;, Nautilus operates in what is known as
a "spatial" mode. This means that each item is opened in
a new window. This may not be desirable to all users. If
you wish to revert back to the old Nautilus file system
browser, launch <b>Applications &gt; System Tools &gt;
Configuration Editor</b>, and go to the
<tt>/apps/nautilus/preferences</tt> key. Check the
<tt>always_use_browser</tt> checkbox, then restart
GNOME.</p>
</li>
<!-- Q18 -->
<li style="padding-bottom: 0.5em"><a name="q18"></a>
<p><b>How do I disable desktop icons for "Computer,"
"Home," and "Trash?"</b></p>
<!-- A18 -->
<p>If you do not want your desktop cluttered with the
default icons for "Computer," "Home," and "Trash," you can
disable any or all of them. To
do this, launch <b>Applications &gt; System Tools &gt;
Configuration Editor</b>, and go to the
<tt>/apps/nautilus/desktop</tt> key. From here, you can
enable or disable the icons, and even rename "Home" and
"Trash."</p>
</li>
<!-- Q19 -->
<li style="padding-bottom: 0.5em"><a name="q19"></a>
<p><b>How do I mount my removable media in
Nautilus?</b></p>
<!-- A19 -->
<p>In order for removable volumes (e.g. CD-ROMs, floppy
drives, etc.) to be visible in Nautilus, you must first
set the <tt>vfs.usermount</tt> sysctl to <tt>1</tt>. To
do that, add the following to <tt>/etc/sysctl.conf</tt>
then reboot:</p>
<pre>
vfs.usermount=1
</pre>
<p>Next, each user mountpoint must be added to
<tt>/etc/fstab</tt>. For example, if user <tt>marcus</tt>
wants to be able to mount a CD under
<tt>/home/marcus/cdrom</tt>, the following must be in
<tt>/etc/fstab</tt>:</p>
<pre>
/dev/acd0 /home/marcus/cdrom cd9660 ro,noauto 0 0
</pre>
<p>Each additional user would require a similar entry.
<b>Note:</b> the user must own the mountpoint. In the
example above, <tt>/home/marcus/cdrom</tt> must be owned
by the user <tt>marcus</tt>. Once all of that is setup, a
CD-ROM icon will appear under the Computer location in
Nautilus. Double-clicking on that icon will mount the CD,
and place an icon on the desktop.</p>
</li>
<!-- Q20 -->
<li style="padding-bottom: 0.5em"><a name="q20"></a>
<p><b>Why is GNOME so slow to start up?</b></p>
<!-- A20 -->
<p>Under normal circumstances, GNOME should only take a
few seconds to start up (fifteen at most). However,
certain configurations may cause it to hang for up to an
hour at login time.</p>
<p>First, make sure your machine's hostname properly
resolves. To test this, run the following command:</p>
<pre>
ping `hostname`
</pre>
<p>If the command fails, you will either have to add your
fully-qualified hostname to DNS or to <tt>/etc/hosts</tt>.
If you do not have a static IP address, you can append
your hostname to the <tt>localhost</tt> line in
<tt>/etc/hosts</tt>. For example, if your machine's
hostname is <tt>gnome-rocks.mydomain.com</tt>, edit
<tt>/etc/hosts</tt>, and change the line:</p>
<pre>
127.0.0.1 localhost localhost.my.domain
</pre>
<p>To:</p>
<pre>
127.0.0.1 localhost localhost.my.domain gnome-rocks gnome-rocks.mydomain.com
</pre>
<p>Once hostname resolution is working, you must make sure
FAM is properly configured. Since GNOME &gnomever;, FAM
support is enabled in <tt>gnomevfs2</tt> by default. This
causes applications such as Nautilus to attempt a
connection to <tt>127.0.0.1:111</tt> on start up. To
configure FAM, read the <tt>pkg-message</tt> in
<tt>/usr/ports/devel/fam</tt>. If you do not wish to
use FAM, uninstall the <tt>devel/fam</tt> port, then add
the following to <tt>/etc/make.conf</tt> and rebuild
the <tt>devel/gnomevfs2 port</tt>:</p>
<pre>
WITHOUT_FAM=yes
</pre>
<p>Finally, if you have either the TCP or UDP blackhole
sysctl enabled, this may cause GNOME to stall on login.
If, after fixing hostname resolution and configuring FAM,
GNOME still takes a long time to startup, verify the following
sysctls are set to 0:</p>
<pre>
net.inet.tcp.blackhole
net.inet.udp.blackhole
</pre>
</li>
<!-- Q21 -->
<li style="padding-bottom: 0.5em"><a name="q21"></a>
<p><b>How do I install GNOME packages from the GNOME
Tinderbox?</b></p>
<!-- A21 -->
<p>The <a href="http://www.marcuscom.com/tinderbox/">GNOME
Tinderbox</a> is a service that continually builds i386
packages of the GNOME desktop for all supported versions
of FreeBSD. As hardware gets better, more meta-ports may
be added in the future. This service can be a great way
of getting the latest GNOME desktop without having to wait
for everything to build from ports.</p>
<p>To install packages from the GNOME Tinderbox, you must
set the <tt>PACKAGESITE</tt> environment variable to the
correct package directory. The package directory can be
found by clicking on the <em>Package Directory</em> link
on the main Tinderbox page. Once you have the correct
package directory, you should append <tt>/Latest/</tt> to
it so you can <tt>pkg_add gnome2</tt> without knowing any
additional version numbers. For example, if you are
installing on FreeBSD 5.2.1, set <tt>PACKAGESITE</tt> to
the following:</p>
<pre>
http://www.marcuscom.com/tb/packages/5.2.1-FreeBSD/Latest/
</pre>
<p>If you are installing on FreeBSD -STABLE, -CURRENT, or
any release after 4.9 or 5.2, then you can simply
follow the <a href="#q1">instructions</a> on installing
GNOME from packages. However, if you are installing on
FreeBSD 4.9 or 5.2.1, you must first install the
<tt>sysutils/pkg_install</tt> port or package,
then use the following command to install GNOME from
packages:</p>
<pre>
/usr/local/sbin/pkg_add -r gnome2
</pre>
</li>
<!-- Q22 -->
<li style="padding-bottom: 0.5em"><a name="q22"></a>
<p><b>How do I add new MIME types to GNOME?</b></p>
<!-- A22 -->
<p>Since GNOME &gnomever;, MIME types are stored in the new
FreeDesktop shared-mime-info database. However,
gnome-control-center has not been updated to allow
one to easily add MIME types to this database.
Therefore, if applications such as Nautilus complain
that there is no MIME type associated with a particular
file, using the <em>Associate Application</em> interface will
not work.</p>
<p>New MIME types can be added in one of two places. They
can either be added system-wide for all users, or added
locally on a per-user basis. System-wide MIME types
must be added to either
<tt>${LOCALBASE}/share/mime</tt> or
<tt>${X11BASE}/share/mime</tt>, where as local MIME types
must be added to <tt>~/.local/share/mime</tt>. In
both cases, the procedure is the same.</p>
<p>To define a new MIME type, you must create an
<em>application</em> and a <em>packages</em> file to
describe it. The application file will be named for
the MIME type, and contain its name and a brief
comment describing it. The packages file will list
all the extensions associated with this MIME type
as well as any special file magic that can be used
to identify files without an extension.</p>
<p>For example, if we wanted to add a new local MIME type for
Windows HTML Help files (i.e. .chm files) called
<b>application/x-chm</b>, we would do the
following. First, we would create the directories
<tt>~/.local/share/mime/application</tt> and
<tt>~/.local/share/mime/packages</tt> if they did not
already exist. Then, we create an application file
called <tt>x-chm.xml</tt> that we will place in
<tt>~/.local/share/mime/application</tt>. The file
looks like:</p>
<pre>
&lt;xml version="1.0" encoding="UTF-8"?&gt;
&lt;mime-type
xmlns="http://www.freedesktop.org/standards/shared-mime-info"
type="application/x-chm"&gt;
&lt;comment&gt;Windows HTML Help file&lt;/comment&gt;
&lt;/mime-type&gt;
</pre>
<p>Next, we create a packages file called <tt>chm.xml</tt>
that we will place in
<tt>~/.local/share/mime/packages</tt>. The file looks
like:</p>
<pre>
&lt;xml version="1.0" encoding="UTF-8"?&gt;
&lt;mime-info
xmlns="http://www.freedesktop.org/standards/shared-mime-info"&gt;
&lt;mime-type type="application/x-chm"&gt;
&lt;comment&gt;Windows HTML Help file&lt;/comment&gt;
&lt;glob pattern="*.chm" /&gt;
&lt;/mime-type&gt;
&lt;/mime-info&gt;
</pre>
<p>Once the files have been created, the MIME database
must be updated. To do that, run the command:</p>
<pre>
% update-mime-database ~/.local/share/mime
</pre>
<p>Finally (and unfortunately), you must logout and log
back in to GNOME for the changes to fully take effect.
The <em>Associate Application</em> interface can now
be used to associate an application to this MIME type.
Hopefully all of this will be made much easier in a future
GNOME release.</p>
</li>
<!-- Q23 -->
<li style="padding-bottom: 0.5em"><a name="q23"></a>
<p><b>How do I configure GDM for automatic logins?</b></p>
<!-- A23 -->
<p>The GNOME Display Manager (GDM) can be configured to
automatically log a user in when it starts up. To do
that, you must first configure Pluggable Authentication
Module (PAM) support for <em>gdm-autologin</em>. On
5.X, create a <tt>/etc/pam.d/gdm-autologin</tt> file
with the following contents:</p>
<pre>
auth required pam_nologin.so
auth required pam_permit.so
account required pam_unix.so
session required pam_permit.so
</pre>
<p>On 4.X, add the following to
<tt>/etc/pam.conf</tt>:</p>
<pre>
gdm-autologin auth required pam_nologin.so
gdm-autologin auth required pam_permit.so
gdm-autologin account required pam_unix.so
gdm-autologin session required pam_permit.so
</pre>
<p>Once PAM is configured to allow GDM automatic logins,
edit <tt>/usr/X11R6/etc/gdm/gdm.conf</tt>, and set
<tt>AutomaticLoginEnable=true</tt>, and
<tt>AutomaticLogin</tt> equal to the username for which
you wish to enable automatic logins. For example:</p>
<pre>
AutomaticLoginEnable=true
AutomaticLogin=marcus
</pre>
<p>That will automatically login the user
<em>marcus</em> as soon as GDM launches.</p>
</li>
</ol>
&footer;
</body>
</html>