diff --git a/en/gnome/docs/Makefile b/en/gnome/docs/Makefile index 9c04207c0f..0b319b68aa 100644 --- a/en/gnome/docs/Makefile +++ b/en/gnome/docs/Makefile @@ -1,28 +1,29 @@ -# $FreeBSD: www/en/gnome/docs/Makefile,v 1.24 2007/10/25 16:56:36 marcus Exp $ +# $FreeBSD: www/en/gnome/docs/Makefile,v 1.25 2008/03/24 05:14:07 marcus Exp $ .if exists(../Makefile.conf) .include "../Makefile.conf" .endif .if exists(../Makefile.inc) .include "../Makefile.inc" .endif DOCS= faq2.sgml DOCS+= faq28.sgml DOCS+= faq210.sgml DOCS+= faq212.sgml DOCS+= faq214.sgml DOCS+= faq216.sgml DOCS+= faq218.sgml DOCS+= faq220.sgml DOCS+= faq222.sgml DOCS+= gnome_porting.sgml DOCS+= gnome1_porting.sgml DOCS+= gnome2_porting.sgml DOCS+= porting.sgml DOCS+= bugging.sgml DOCS+= volunteer.sgml DOCS+= develfaq.sgml DOCS+= example-Makefile.sgml +DOCS+= halfaq.sgml .include "${WEB_PREFIX}/share/mk/web.site.mk" diff --git a/en/gnome/docs/faq2.sgml b/en/gnome/docs/faq2.sgml index 74b3f9e205..19a7e48379 100644 --- a/en/gnome/docs/faq2.sgml +++ b/en/gnome/docs/faq2.sgml @@ -1,1226 +1,1143 @@ - + ]> &header;

Contents

  1. How do I get GNOME &gnomever; for FreeBSD?
  2. How do I get the most out of GNOME?
  3. GNOME &gnomever; is failing to build from ports. What do I do?
  4. I installed GNOME &gnomever;, but I am missing application foo. What gives?
  5. What is the best way to upgrade from GNOME &gnomeoldver; to GNOME &gnomever;?
  6. How do I keep my GNOME &gnomever; components and applications up-to-date?
  7. How do I uninstall GNOME?
  8. Where can I get more themes for GNOME &gnomever;?
  9. What window managers work well with GNOME &gnomever;?
  10. Does GNOME &gnomever; support anti-aliased fonts?
  11. How can I control what fonts are anti-aliased?
  12. How do I edit my GNOME menus?
  13. How do I use GTK+ 2 resource settings for GTK+ 2 applications when not in a GNOME environment?
  14. How do I configure settings for GNOME 1.4 applications under GNOME &gnomever;?
  15. Nautilus-cd-burner does not let me burn CDs, or Totem/Goobox/Sound-juicer cannot find my CD/DVD drive. How can I fix this?
  16. How do I add new GDM sessions?
  17. How do I disable spatial Nautilus?
  18. How do I disable desktop icons for "Computer," "Home," and "Trash?"
  19. How do I mount my removable media in Nautilus?
  20. Why is GNOME so slow to start up?
  21. How do I install GNOME packages from the GNOME Tinderbox?
  22. How do I add new MIME types to GNOME?
  23. How do I configure GDM for automatic logins?
  24. How do I upgrade from gnome2-lite to the full GNOME &gnomever; desktop?
  25. How do I enable Emacs-style keybindings in GTK+ applications?
  26. Why do I only see generic icons in Nautilus?
  27. Why do I need confirm access to my keyring every time Nautilus tries to open an external share?
  28. How do I enable window compositing in GNOME?
  29. How can I get GDM to respect my locale settings?

Full Text

  1. How do I get GNOME &gnomever; for FreeBSD?

    There are two ways to install GNOME &gnomever; on FreeBSD. One way is to use packages, and the other way is to use ports. Before doing either installation, you should first familiarize yourself with the GNOME &gnomever; release notes.

    Install GNOME &gnomever; from packages.

    To install GNOME &gnomever; from packages, use the command:

    # pkg_add -r gnome2

    This will download the latest GNOME &gnomever; packages from the FreeBSD FTP site, and proceed to install them on your system.

    Up-to-date GNOME packages for i386 and amd64 for all supported versions of FreeBSD are also available from the GNOME Tinderbox.

    To build GNOME &gnomever;, you must first obtain the latest ports tree skeleton. This is most easily accomplished with portsnap(8) or cvsup. Then:

     # cd /usr/ports/x11/gnome2
     # make clean
     # make install clean
     	    

    You still need to enable the GNOME services to run e.g. the graphical login automatically on system startup.

  2. How do I get the most out of GNOME?

    In order to make the most of your new GNOME Desktop, you will want to start all of the GNOME-related services at boot-time. If you wish to take full advantage of GNOME, add the following to /etc/rc.conf:

     gnome_enable="YES"
     	    

    This will enable services such as GDM, HAL, D-BUS, and Avahi on system startup. If you do not want to run all of these services, you should forgo the gnome_enable property, and manually enable the services you want.

    If you do not want to reboot immediately after the installation, you can invoke the following commands:

     # /usr/local/etc/rc.d/dbus start
     # /usr/local/etc/rc.d/avahi-daemon.sh start
     # /usr/local/etc/rc.d/avahi-dnsconfd.sh start
     # /usr/local/etc/rc.d/hald start
     # /usr/local/etc/rc.d/gdm start
     	    

    Make GNOME &gnomever; start when X starts without using GDM.

    The GNOME &gnomever; desktop can also be started by adding the following line to ~/.xsession or ~/.xinitrc, as appropriate (see also startx(1)):

     exec gnome-session
     	    
  3. GNOME &gnomever; is failing to build from ports. What do I do?

    The majority of GNOME &gnomever; compilation problems can be solved by making sure all the necessary GNOME &gnomever; components are up-to-date.

    Updating solves most problems

    If you have not yet followed FAQ #6, do so, as it will most likely fix the problem you are reading this document to solve.

    Please follow FAQ #6. If you have not done so, and you ask for help, you will be told to follow FAQ #6.

    In general, when a GNOME &gnomever; component is not up-to-date, you will see an error similar to the following:

     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.
     	      

    Simply keeping your ports tree up-to-date will prevent these errors.

    If the pkg-config program is out-of-date, you may see a configure error similar to the following:

     configure: error: *** pkg-config too old; version 0.14 or better required.
     	      

    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 devel/pkg-config port. By updating this port to the latest version, this error will go away.

    You may see compiler errors relating to pthreads (&posix; threads), such as:

     undefined reference to 'strerror_r'
                 

    To fix thread related errors, make sure you have the following compiled into your kernel:

     options     _KPOSIX_PRIORITY_SCHEDULING
                 

    If you are tracking -STABLE or -CURRENT, make sure that you do not have NO_LIBPTHREAD set in /etc/make.conf. If you do, remove it, then rebuild world. If you still have trouble, please send email to &email;@FreeBSD.org with the output of the failed compilation. It is also helpful to include the config.log from the port's work directory.

    Prevent two versions of the same library.

    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 portupgrade use. You can back up the libraries in /usr/local/lib/compat/pkg and remove them, and then run portupgrade -u -rf pkg-config. This will force a rebuild of all GNOME-related apps (and a fair number of other apps) without retaining old versions of libraries in /usr/local/lib/compat/pkg.

    Fix PREFIX move-related errors.

    Starting with 2.16, GNOME now lives in LOCALBASE instead of X11BASE. This move can cause strange build problems if the proper upgrade steps are not followed. However, if after following all the steps, you may still see errors like the following:

     grep: /usr/X11R6/lib/libglade-2.0.la: No such file or directory
     sed: /usr/X11R6/lib/libglade-2.0.la: No such file or directory
     libtool: link: `/usr/X11R6/lib/libglade-2.0.la' is not a valid libtool archive
     		

    This error indicates that an old libtool archive (a file that ends with .la) is still lingering about on your system. To find such files, search through the system for libtool archive files that contain the bad string (/usr/X11R6/lib/libglade-2.0.la in the example above). To do that, use the following command:

     # find / -type f -name "*.la" | xargs grep -l /usr/X11R6/lib/libglade-2.0.la
     		

    For each file that is found, use pkg_info to determine which port or package installed it. For example, if you find that /usr/X11R6/lib/libgnomeui-2.0.la contains the problem libtool reference, do the following:

     # pkg_info -W /usr/X11R6/lib/libgnomeui-2.0.la
     		

    If you get back a package name, then force an upgrade of that package using portupgrade. If you do not get back anything, then you can safely delete the libtool archive file. Once the file is gone, check the directory from which you deleted it for other files with similar names. In the example above, check for /usr/X11R6/lib/libgnomeui-2.0.*. If you find any matching files, delete those, too. Once all of the files are gone, you can resume building your original port. Repeat these steps if you encounter further such problems.

  4. I installed GNOME &gnomever;, but I am missing application foo. What gives?

    Only the core Desktop is included in the gnome2 package. Here are some other GNOME meta-ports that offer convenient groupings of popular GNOME software.

    To install any of these from packages:

     # pkg_add -r meta-port
                 

    For example, to install the GNOME Fifth Toe from packages:

     # pkg_add -r gnome2-fifth-toe
     	    

    To install any of these from ports:

     # cd /usr/ports/category/meta-port
     # make clean
     # make install clean
     	    

    For example, to install the GNOME Fifth Toe from ports:

     # cd /usr/ports/x11/gnome2-fifth-toe
     # make clean
     # make install clean
     	    
  5. What is the best way to upgrade from GNOME &gnomeoldver; to GNOME &gnomever;?

    The &gnomeoldver; to &gnomever; may have a few caveats. You are strongly advised to read the upgrade FAQ for detailed instructions.

  6. How do I keep my GNOME &gnomever; components and applications up-to-date?

    You are emphatically encouraged to use portupgrade or portmaster to keep your GNOME &gnomever; components and applications up-to-date.

    Update your ports with portupgrade or portmaster.

    Once you have updated your ports tree (presumably with cvsup), the following two simple commands will update what needs to be updated, and will prevent inconsistencies:

     # pkgdb -F
     # portupgrade -a
     		

    OR

     # portmaster -a
     		

    Start from scratch.

    Despite consistent utilization of portupgrade or portmaster, 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:

     # pkg_delete -rf pkg-config\*
     # cd /usr/ports/x11/gnome2
     # make clean
     # make install clean
     	    

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

  7. How do I uninstall GNOME?

    We would prefer that you did not uninstall GNOME ;-), but if you must, you have to decide how much you want to uninstall. If you have installed x11/gnome2 and you want to remove all Desktop components that do not have other dependent packages, do the following:

     # pkg_deinstall -R x11/gnome2
     	    

    Note: the pkg_deinstall command requires you have ports-mgmt/portupgrade installed.

    If you want to force a removal of all Desktop components (this is generally not recommended), do the following:

     # pkg_deinstall -Rf x11/gnome2
     	    
  8. Where can I get more themes for GNOME &gnomever;?

    On the following websites, you can find themes for GTK+, metacity, nautilus, GDM, icons, backgrounds, and more:

    Some of these themes have already been ported to FreeBSD. Check out the x11-themes/gnome-icons and x11-themes/metacity-themes meta-ports for a nice sample.

  9. What window managers work well with GNOME &gnomever;?

    The gnome2 meta-port installs the Metacity window manager by default. Another popular window manager that works well with GNOME &gnomever; is Sawfish. Sawfish can be found in x11-wm/sawfish.

    To switch between Metacity and Sawfish in GNOME, you will need to do the following:

     # killall metacity; sawfish &
     # gnome-session-save --gui
     

    The gnome-session-save 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.

    If you have gotten the GNOME &gnomever; desktop working under an alternative window manager, please take a screenshot and send it to us!

  10. Does GNOME &gnomever; support anti-aliased fonts?

    Yes! Anti-aliasing requires XFree86 4.x or X.Org with freetype2 support. To add freetype2 support to X, make sure you have the following modules loaded in your XF86Config or xorg.conf file under the Modules section:

     Load	"freetype"
     Load	"type1"
     		

    Then, simply check out the Fonts capplet under Applications->Desktop Preferences. If you want a good set of TrueType starter fonts, install the x11-fonts/webfonts port.

    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, run the following command as root:

     # fc-cache -f -v
     		

    If you have any questions, please send them to &email;@FreeBSD.org.

  11. How can I control what fonts are anti-aliased?

    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 ~/.fonts.conf 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 ~/.fonts.conf with the following contents:

     <?xml version="1.0"?>
     <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
     <fontconfig>
     
     <match target="font">
             <test name="size" compare="less_eq">
                     <double>16</double>
             </test>
             <edit name="antialias" mode="assign">
                     <bool>false</bool>
             </edit>
     </match>
     <match target="font">
             <test name="pixelsize" compare="less_eq">
                     <double>16</double>
             </test>
             <edit name="antialias" mode="assign">
                     <bool>false</bool>
             </edit>
     </match>
     </fontconfig>
                     

    Refer to fonts-conf(5) for more information.

  12. How do I edit my GNOME menus?

    Right-click on the Applications menu, and select Edit Menus. This will invoke the alacarte menu editing tool.

  13. How do I use GTK+ resource settings for GTK+ applications when not in a GNOME environment?

    GNOME applications get their GTK+ resources from themes and the corresponding theme engine. If you would rather run your GTK+ applications in a non-GNOME environment then you will need to create a file named ~/.gtkrc-2.0.

    To use the widgets from a GTK+ theme when in a non-GNOME environment, simply include the theme's gtk-2.0/gtkrc in your ~/.gtkrc-2.0. For example:

    include "/usr/local/share/themes/Crux/gtk-2.0/gtkrc"

    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 ~/.gtkrc file (used for GTK+ 1.2) with a couple of caveats.

    1. If you have any theme engine references, you will have to make sure there is a corresponding GTK+ theme engine. Otherwise, remove the engine entries.
    2. The default font specification should be outside of any style blocks and should be specified with the gtk-font-name keyword. For example:
      gtk-font-name = "Verdana 11"

    Note that while a GTK+ 1.2 gtkrc file will work in a GTK+ 2 gtkrc-2.0 file, the opposite is not true: the contents of a GTK+ 2 gtkrc-2.0 file will not work inside a GTK+ 1.2 gtkrc file.

    For simply switching GTK+ themes without needing to edit your ~/.gtkrc files, you can use the x11/gtk-theme-switch and x11/gtk2-theme-switch ports.

  14. How do I configure settings for GNOME 1.4 applications under GNOME &gnomever;?

    Install sysutils/gnome-control-center1, then invoke gnomecc from the command line to bring up the GNOME 1.4 control center.

  15. Nautilus-cd-burner does not let me burn CDs or Totem/Goobox/Sound-juicer cannot find my CD/DVD drive. How can I fix this?

    Nautilus-cd-burner, totem, goobox, and sound-juicer cannot use CD/DVD drives unless support for those devices is enabled in the kernel, and the permissions on the device nodes allow write access. Nautilus-cd-burner, totem, goobox, and sound-juicer talk to CD/DVD drives through the SCSI CAM subsystem. Therefore, you must make sure you have the following configured in your kernel:

     device          scbus
     device          cd
     device          pass
     	    

    You must also make sure you have the following configured in your kernel if you are using an ATAPI CD/DVD drive:

     device		atapicam
     	    

    Finally, if you are running GNOME 2.16 or later, you - must have HAL running, or you will + must have + HAL running, or you will only be able to burn to an ISO image file.

    To figure out which CD/DVD drive you will be using, run the following command as root:

     # camcontrol devlist
     	    

    Your output will look similar to the following:

     <QSI CDRW/DVD SBW-242 UD22>		at scbus1 target 0 lun 0 (cd0,pass0)
     	    

    The devices in parentheses at the end are important. You must make sure the /dev entries for those devices are writable by the users that will be using nautilus-cd-burner, totem, goobox, or sound-juicer. In addition to those devices, /dev/xpt* must also be writable to your nautilus-cd-burner, totem, goobox, and sound-juicer users. The following /etc/devfs.conf configuration will achieve the desired results given the above devlist:

     perm    cd0     0666
     perm    xpt0    0666
     perm    pass0   0666
     	      

    If you encounter problems burning to discs with nautilus-cd-burner, set the following GConf /apps/nautilus-cd-burner/debug to true using Applications > System Tools > Configuration Editor (gconf-editor from the command line). Then run nautilus-cd-burner from the command line, reproduce the problem you are having, and capture the output on the command line. Include this along with the rest of your bug report.

  16. How do I add new GDM sessions?

    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 .desktop file containing the session configuration information. Session files live in /usr/local/etc/dm/Sessions. For example, to add a KDE session, create a file in /usr/local/etc/dm/Sessions called kde.desktop. That file should contain the following:

     [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
     	    

    This file must have execute permissions. For example:

     # chmod 0555 kde.desktop
     	    

    After creating this file, restart GDM, and there will be a KDE link under the Sessions menu.

  17. How do I disable spatial Nautilus?

    As of GNOME 2.8, 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, go to Desktop->Preferences->File Management, click on the Behavior tab, and check the "Always open in browser windows" checkbox.

  18. How do I disable desktop icons for "Computer," "Home," and "Trash?"

    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 Applications > System Tools > Configuration Editor (gconf-editor from the command line), and go to the /apps/nautilus/desktop key. From here, you can enable or disable the icons, and even rename "Home" and "Trash."

  19. How do I mount my removable media in Nautilus?

    -

    As of GNOME 2.16, FreeBSD supports HAL, - a component from the FreeDesktop - project. HAL provides seamless hardware integration with - modern UNIX desktop environment such as GNOME. This - means auto-mounting of hardware is as easy as starting a - few daemons at boot time, and making sure - sysutils/gnome-volume-manager is installed. If - you installed x11/gnome2 you already have - gnome-volume-manager installed.

    - -

    The daemons that must be started prior to logging into - GNOME are, dbus and hald in that order. To do - this, add the following to /etc/rc.conf, and - reboot:

    - -
    -dbus_enable="YES"
    -hald_enable="YES"
    -	    
    - -

    These services are automatically started if all GNOME features are enabled.

    - -

    Note: your user account must be a member of the - operator group for automatic mounting to work. - To add yourself to the operator group, execute the - following command as root:

    - -
    -# pw group mod operator -m <username>
    -	    
    - -

    For example, to add the user marcus to the - operator group, use the following command:

    - -
    -# pw group mod operator -m marcus
    -	    
    - -

    That's it! You should now see your USB key drives and - CD-ROMs magically appear on your desktop. However, if - you are having problems with auto-mounting or HAL in - general, you should collect the following (in addition - to other troubleshooting - information):

    - -
      -
    1. Output of lshal
    2. -
    3. Output of sysctl -b kern.geom.conftxt
    4. -
    5. Contents of /etc/fstab
    6. -
    7. Output of mount
    8. -
    9. Full dmesg output
    10. -
    11. Stop hald, then run it manually using - /usr/local/sbin/hald --daemon=no --verbose=yes - and provide the output
    12. -
    13. If using GNOME, and a volume is not mounting - properly, include the output of gnome-mount --block - --no-ui --verbose --hal-udi <Device UDI> - (<Device UDI> is the Unique Device Identifier - obtained from the output of lshal for the - device that is not mounting properly)
    14. -
    - -

    You can also mount fixed storage media such as FAT or - NTFS partitions (maybe you are dual booting) using HAL. - For this to work you must must edit - /usr/local/etc/PolicyKit/privilege.d/hal-storage-fixed-mount.privilege - and add your username to the Allow list:

    - -
    -[Policy]
    -Allow=uid:<username>
    -	    
    - -

    For example, to allow the user marcus to mount - fixed storage media, add the following to - hal-storage-fixed-mount.privilege:

    - -
    -[Policy]
    -Allow=uid:marcus
    -	    
    - -

    Gary Dunn also provides a - very detailed how-to for user-mounting SMB volumes.

    +

    As of GNOME 2.12, the way auto-mounting works has + changed substantially. The full details are spelled out + in our HAL + FAQ.

  20. Why is GNOME so slow to start up?

    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.

    First, make sure your machine's hostname properly resolves. To test this, run the following command:

     ping `hostname`
     	    

    If the command fails, you will either have to add your fully-qualified hostname to DNS or to /etc/hosts. If you do not have a static IP address, you can append your hostname to the localhost line in /etc/hosts. For example, if your machine's hostname is gnome-rocks.mydomain.com, edit /etc/hosts, and change the line:

     127.0.0.1               localhost localhost.my.domain
     	    

    To:

     127.0.0.1              localhost localhost.my.domain gnome-rocks gnome-rocks.mydomain.com
     	    

    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, GNOME still takes a long time to startup, verify the following sysctls are set to 0:

     net.inet.tcp.blackhole
     net.inet.udp.blackhole
     	    
  21. How do I install GNOME packages from the GNOME Tinderbox?

    The GNOME Tinderbox is a service that continually builds i386 and amd64 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.

    To install packages from the GNOME Tinderbox, you must set the PACKAGESITE environment variable to the correct package directory. The package directory can be found by clicking on the Package Directory link on the main Tinderbox page for your architecture. Once you have the correct package directory, you should append /Latest/ to it so you can pkg_add gnome2 without knowing any additional version numbers. For example, if you are installing on i386 FreeBSD 6.3, set PACKAGESITE to the following:

     http://www.marcuscom.com/tb/packages/6.3-FreeBSD/Latest/
     	    

    If you are installing on amd64 FreeBSD 6.3, set PACKAGESITE to the following:

     http://cobbler.marcuscom.com/space/packages/6.3-FreeBSD/Latest/
     	    
  22. How do I add new MIME types to GNOME?

    Since GNOME 2.8, 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 Open With tab under Properties not work.

    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 LOCALBASE/share/mime , where as local MIME types must be added to ~/.local/share/mime. In both cases, the procedure is the same.

    To define a new MIME type, you must create an application and a packages 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.

    For example, if we wanted to add a new local MIME type for Windows HTML Help files (i.e. .chm files) called application/x-chm, we would do the following. First, we would create the directories ~/.local/share/mime/application and ~/.local/share/mime/packages if they did not already exist. Then, we create an application file called x-chm.xml that we will place in ~/.local/share/mime/application. The file looks like:

     <?xml version="1.0" encoding="UTF-8"?>
     <mime-type
     xmlns="http://www.freedesktop.org/standards/shared-mime-info"
     type="application/x-chm">
       <comment>Windows HTML Help file</comment>
     </mime-type>
     	    

    Next, we create a packages file called chm.xml that we will place in ~/.local/share/mime/packages. The file looks like:

     <?xml version="1.0" encoding="UTF-8"?>
     <mime-info
     xmlns="http://www.freedesktop.org/standards/shared-mime-info">
       <mime-type type="application/x-chm">
         <comment>Windows HTML Help file</comment>
         <glob pattern="*.chm" />
       </mime-type>
     </mime-info>
     	    

    Once the files have been created, the MIME database must be updated. To do that, run the command:

     % update-mime-database ~/.local/share/mime
     	    

    Finally (and unfortunately), you must logout and log back in to GNOME for the changes to fully take effect. Nautilus' Properties->Open With 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.

  23. How do I configure GDM for automatic logins?

    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 gdm-autologin. Create a /etc/pam.d/gdm-autologin file with the following contents:

     auth       required     pam_nologin.so
     auth       required     pam_permit.so
     account    required     pam_unix.so
     session    required     pam_permit.so
     	    

    Once PAM is configured to allow GDM automatic logins, edit /usr/local/etc/gdm/custom.conf, and set AutomaticLoginEnable=true, and AutomaticLogin equal to the username for which you wish to enable automatic logins. Both of these properties should be placed under the [daemon] heading. For example:

     [daemon]
     AutomaticLoginEnable=true
     AutomaticLogin=marcus
     	    

    That will automatically login the user marcus as soon as GDM launches.

  24. How do I upgrade from gnome2-lite to the full GNOME &gnomever; desktop?

    The Lite edition does not include all of the components of the standard GNOME &gnomever; desktop. If you wish to install the full desktop, first remove the gnome2-lite package, then install the gnome2 port or package. For example:

     # pkg_delete gnome2-lite
     	    

    Then one of the following:

     # cd /usr/ports/x11/gnome2
     # make install clean
     	    

    or:

     # pkg_add -r gnome2
     	    

    Alternatively, you can install additional GNOME components individually using either their ports or packages.

  25. How do I enable Emacs-style keybindings in GTK+ applications?

    By default, GTK+ uses Windows-like keyboard shortcuts for command line editing. Many UNIX users are more familiar or more comfortable with Emacs-style shortcuts. For example, GTK+ uses Control+A to mean, "select all," where as Emacs uses Control+A to mean, "put cursor at the beginning of line."

    In order to use Emacs-style keybindings in GTK+ applications, edit ~/.gtkrc-2.0, and add the following:

     gtk-key-theme-name = "Emacs"
     	    

    If you are using the GNOME Desktop, however, this is not sufficient. You must also change the GConf key /desktop/gnome/interface/gtk_key_theme to "Emacs" using Applications > System Tools > Configuration Editor (gconf-editor from the command line).

  26. Why do I only see generic icons in Nautilus?

    This typically occurs for users that are not running the full GNOME Desktop. By default, gnome-session will start gnome-settings-daemon automatically. This daemon is responsible for setting many GTK+ and GNOME preferences including the icon theme. If you are not running the GNOME Desktop, make sure the following has been added to your X11 session startup preferences:

     /usr/local/libexec/gnome-settings-daemon &
     	    

    If you are running the full GNOME Desktop, there may be a problem executing gnome-settings-daemon. Try running /usr/local/libexec/gnome-settings-daemon from the command line, and check for any errors. Most problems can be solved by reinstalling sysutils/gnome-settings-daemon.

  27. Why do I need confirm access to my keyring every time Nautilus tries to open an external share?

    -

    You did not mount the procfs file system. Which is off - by default in recent releases of FreeBSD. Consider adding - the following line to your /etc/fstab file:

    +

    You did not mount the procfs file system. + Procfs is not mounted by default in recent releases of FreeBSD. + Consider adding the following line to your /etc/fstab + file:

     proc			/proc		procfs	rw	0	0
     	    
  28. How do I enable window compositing in GNOME?

    Starting with GNOME 2.22, the Metacity window manager includes a compositing manager. When compositing is enabled, widgets will get a drop shadow, and the Alt+Tab application switcher will show previews of the application windows.

    Compositing is not enabled by default as not all graphics cards and drivers will do well with it. If your graphics card and driver support accelerated 3D rendering and you want to use compositing you can enable it using the following command:

     % gconftool-2 -s --type bool /apps/metacity/general/compositing_manager true
     	    

    If you want to disable it again, change "true" to "false", and re-run the command. You can also use gconf-editor to edit it.

    If your card is supported by the "nvidia," "intel", "i810", or "radeon" (see the radeon(4) man page to make sure your card is supported for 3D acceleration) drivers, then compositing should work for you.

  29. How do I get GDM to respect my locale settings?

    Up until GNOME 2.20, GDM would read the locale settings from /etc/login.conf or ~/.login.conf. This was broken in 2.20, and since GDM 2.22 will use a new locale scheme, it will not be fixed. However, all hope is not lost. It is actually very easy to set the locale for use with the GNOME Destop. GDM offers a pull-down Language menu from which you can choose your current locale. If you would rather not use this menu, you can set the locale by adding the following to ~/.profile:

     export GDM_LANG=<locale>
     	    

    Here, <locale> is the desired locale (e.g. en_US.UTF-8, es_ES.ISO8859-15, fr_FR.ISO8859-1, etc.).

&footer; diff --git a/en/gnome/docs/halfaq.sgml b/en/gnome/docs/halfaq.sgml new file mode 100644 index 0000000000..94f4ee3219 --- /dev/null +++ b/en/gnome/docs/halfaq.sgml @@ -0,0 +1,326 @@ + + + + +]> + + &header; + + "You're in luck, Dave. Turns out I CAN let you do that." + +

Contents

+
    +
  1. How do I use hal on FreeBSD?
  2. +
  3. How do I prevent hal from probing a + device?
  4. +
  5. How do I mount media using hal?
  6. +
  7. How do I troubleshoot problems with + hal?
  8. +
+ +

Full Text

+
    + +
  1. +

    How do I use hal on FreeBSD?

    + +

    The only thing you need to do in order to use hal is to + start the HAL daemon, hald. To do this, add the + following to /etc/rc.conf:

    + +
    +dbus_enable="YES"
    +hald_enable="YES"
    +	
    + +

    NOTE: GNOME users can opt to add + gnome_enable="YES" to /etc/rc.conf instead + of the lines above. This will start all GNOME-related + services including Avahi and GDM.

    + +

    Then you must either reboot, or run:

    + +
    +# /usr/local/etc/rc.d/dbus start
    +# /usr/local/etc/rc.d/hald start
    +	
    + +

    Once hald is running, hal-aware application will + automatically start to communicate with it over D-BUS. To + confirm that hald is running correctly, execute + lshal from the command line. This provides you + with a list of devices attached to the system. Note: + lshal must be run from within a D-BUS enabled + session (e.g. GNOME or KDE).

    +
  2. + + +
  3. +

    How do I prevent hal from probing a device?

    + +

    Sometimes, when hal probes a device, this can cause the + system to hang, panic, or otherwise behave badly. By + using device information files (.fdi files), you can tell + hal to ignore such devices. These files are in XML + format, and should be created under + /usr/local/share/hal/fdi/preprobe/20thirdparty. + For example, to tell hal to ignore USB uhci controller 0, + create a file + /usr/local/share/hal/fdi/preprobe/20thirdparty/10-ignore-uhci0.fdi + with the following contents:

    + +
    +<?xml version="1.0" encoding="UTF-8"?>
    +
    +<deviceinfo version="0.2">
    +  <device>
    +    >match key="freebsd.driver" string="uhci">
    +      <match key="freebsd.unit" int="0">
    +        <merge key="info.ignore" type="bool">true</merge>
    +      </match>
    +    </match>
    +  </device>
    +</deviceinfo>
    +	  
    + +

    Using this same technique, you can also merge (or change) + other hal device properties. Use the lshal + command to get a list of all available device properties. + You can also look at the system-provided .fdi files under + /usr/local/share/hal/fdi/preprobe/10osvendor for + more examples.

    + +

    All .fdi files in this 20thirdparty directory + are loaded in alphabetical order, so name your files + accordingly. The convention is to start the files with a + number. The lower the number, the earlier the file will + be loaded.

    +
  4. + + +
  5. +

    How do I mount media using hal?

    + +

    Understand that having hal alone does not mean media will + get automatically mounted. Hal simply serves as a broker for + requests to mount certain devices. Some other software needs + to make this request. As of GNOME 2.22, this is Nautilus. + KDE and XFCE have their own components to mount hal + volumes.

    + +

    NOTE: Volumes that you wish to manage using + hal should NOT be listed in /etc/fstab. + This is especially true for CD devices and floppy disk + devices.

    + +

    If you are a GNOME user be aware that prior to GNOME + 2.22, gnome-volume-manager was responsible for + asking hal to mount volumes. Since this responsibility + has moved to Nautilus, it is vital to change + gnome-volume-manager's configuration so that it + will no longer attempt to mount volumes.

    + +

    NOTE: This step is only required if you are a + GNOME user that upgraded to 2.22 from a previous version + of GNOME. If this is not the case, then skip to Step + 1.

    + +

    CAVEAT: If you are + using glabel (GEOM labels), volume labels MUST NOT + contain spaces. This will break hal's volume parsing + code, and could lead to crashes.

    + +

    From within your GNOME session, run the following + commands:

    + +
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/automount_drives false
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/automount_media false
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/autobrowse false
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/autoplay_cda false
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/autoplay_dvd false
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/autoplay_vcd false
    +% gconftool-2 -s --type bool /desktop/gnome/volume_manager/autoprinter false
    +	
    + +

    Then restart GNOME.

    + +

    Step 1: All users MUST have procfs mounted + on /proc. Hal uses an application called PolicyKit + to authorize users to perform mount tasks, and PolicyKit + relies heavily on /proc entries. If /proc + is not mounted, volume mounting will not work. To mount + /proc, add the following to + /etc/fstab:

    + +
    +proc           /proc       procfs  rw  0   0
    +	
    + +

    Then run the following command:

    + +
    +# mount /proc
    +	
    + +

    Step 2: In order to mount volumes using hal, you + must be authorized. This authorization is carried out by + ConsoleKit and PolicyKit. If you are a GNOME user, and you + use GDM to login to GNOME, then you do not need to make any + additional configuration changes in order to mount removable + media. If you are not a GNOME user, or you start GNOME + without using GDM, then you will need to edit + /usr/local/etc/PolicyKit/PolicyKit.conf, and add + the org.freedesktop.hal.storage.mount-removable + action to your username. For example, if your username is + "marcus," you would add the following lines:

    + +
    +<match action="org.freedesktop.hal.storage.mount-removable">
    +  <match user="marcus">
    +    <return result="yes"/>
    +  </match>
    +</match>
    +	
    + +

    NOTE: All config lines in this file MUST be + between the opening and closing <config> + tags:

    + +
    +<config version="0.1">
    +<!-- New configuration lines go here. -->
    +</config>
    +	
    + +

    If you use GDM to login to GNOME, GDM will add a ConsoleKit + record for the session. If this session is active, then you + will be allowed to mount removable media without any + additional PolicyKit configuration. You can confirm if + ConsoleKit is working correctly by running the command, + ck-list-sessions. The active property must be + TRUE for auto-mounting to work.

    + +

    By default, PolicyKit allows root to do everything, and all + users in the "wheel" group are allowed to authenticate for + admin tasks with their own password. To get a list of all + available actions, use the polkit-action(1) + command. For more information on the directives available + for PolicyKit.conf, see the + PolicyKit.conf(5) man page.

    + +

    Step 4: If you have fixed volumes you wish to mount, + you must also authorize yourself for the + org.freedesktop.hal.storage.mount-fixed action. + Note: This step is applicable to ALL users + including GNOME users using GDM. This is done just like the + removable action above. For example, to allow user "marcus" + to mount fixed volumes, add the following to + PolicyKit.conf:

    + +
    +<match action="org.freedesktop.hal.storage.mount-fixed">
    +  <match user="marcus">
    +    <return result="yes"/>
    +  </match>
    +</match>
    +	
    + +

    Step 5: While not really part of hal volume + management, you may also be able to have volumes listed in + /etc/fstab automatically mounted. In GNOME, for + example, Nautilus will mount volumes listed in + /etc/fstab provided the following conditions are + met:

    + +
      +
    1. The vfs.usermount sysctl is set to 1.
    2. +
    3. The user requesting the mount owns the mount point.
    4. +
    5. The user requesting the mount is in the "operator" + group.
    6. +
    + +

    for example, say you had the following listed in + /etc/fstab:

    + +
    +/dev/ad0s1              /win/c          msdosfs rw,noauto       0
    +0
    +	
    + +

    If you want Nautilus to mount this volume as the user + "marcus", do the following:

    + +
    +# sysctl vfs.usermount=1
    +# chown marcus /win/c
    +# pw group mod operator -m marcus
    +	
    + +

    Then, when the user marcus logs into GNOME, /win/c + will be automatically mounted on the desktop.

    +
  6. + + +
  7. +

    How do I troubleshoot problems with hal?

    + +

    If you run into problems with hal, you must first collect + the general + troubleshooting information required by the FreeBSD + GNOME Team. You should also provide a detailed description + of the problem, and the output of lshal (assuming + hald is starting). Remember, lshal + MUST be run under a D-BUS enabled session. If you + cannot login to GNOME, KDE, or XFCE, run lshal + within dbus-launch:

    + +
    +% dbus-launch lshal
    +	
    + +

    You should also provide the verbose output from + hald when it is performing the problematic task. + To get this, first stop hald, then run it + manually:

    + +
    +# /usr/local/etc/rc.d/hald stop
    +# /usr/local/sbin/hald --daemon=no --verbose=yes
    +	
    + +

    Capture all of the output on the screen.

    + +

    If you are having problems with hal detecting volumes or + media, or having problems with mounting volumes through hal, + obtain the following additional information. All of this + needs to be collected with the problem device attached to + the system.

    + +
      +
    1. Output of sysctl -b kern.geom.conftxt
    2. +
    3. Contents of /etc/fstab
    4. +
    5. Output of the mount command
    6. +
    7. Full dmesg output
    8. +
    9. If using GNOME, and a volume is not mounting properly, + include the output of gnome-mount --block --no-ui + --verbose --hal-udi <Device UDI> (<Device + UDI> is the Unique Device Identifier obtained from the + output of lshal for the device that is not + mounting properly)
    10. +
    + +

    Additionally, if you are a GDM user, please provide the + output of ck-list-sessions.

    + +

    Finally, remember that if you are using glabel, and the + label has a space in the name that will break hal. Labels + must NOT contain spaces.

    +
  8. +
+ + &footer; + + diff --git a/share/sgml/navibar.ent b/share/sgml/navibar.ent index 782c03389c..3174ab636f 100644 --- a/share/sgml/navibar.ent +++ b/share/sgml/navibar.ent @@ -1,185 +1,186 @@ - +

Section Navigation

'> ]]>

Section Navigation

'> ]]>

Section Navigation

'> ]]>

Section Navigation

'> ]]>

Section Navigation

'> ]]>

Section Navigation

'> ]]>

Section Navigation

'> ]]>

Section Navigation

'> ]]>