<?xml version="1.0" encoding="UTF-8"?>
<section id="section_variable" xreflabel="SECTION variable">
  <title>SECTION variable: Package category</title>

  <para>Sections are a means for categorising packages into related groups to
  enable users to find packages easier. The <command>SECTION</command>
  variable is used to declare which section a package belongs to. The most
  common use of the section information is in GUI based package management
  applications.</para>

  <para>The default values for the section variables are:</para>

  <itemizedlist>
    <listitem>
      <para><command>SECTION = "base"</command></para>
    </listitem>

    <listitem>
      <para><command>SECTION_${PN}-doc = "doc"</command></para>
    </listitem>

    <listitem>
      <para><command>SECTION_${PN}-dev = "devel"</command></para>
    </listitem>
  </itemizedlist>

  <para>Note that each package generated by a recipe can have it's own section
  and that by default documentation and development files are seperated out to
  their own sections.</para>

  <para>The table of sections show the current usage of section information.
  This is a recomendation only, althought it is recomended that any additions
  or modifications be discusssed via the open embedded developer mailing list
  first.</para>

  <informaltable>
    <tgroup cols="2">
      <colspec colwidth="1*" />

      <colspec colwidth="3*" />

      <tbody>
        <row>
          <entry>Section</entry>

          <entry>Description</entry>
        </row>

        <row>
          <entry>admin</entry>

          <entry></entry>
        </row>

        <row>
          <entry>base</entry>

          <entry>Base system files. These are applications which are expected
          to be included as part of a base system and include things such as
          init scripts, core utilities, standard system daemons etc.</entry>
        </row>

        <row>
          <entry>base/shell</entry>

          <entry>Shells such as bash, tcsh, ksh etc.</entry>
        </row>

        <row>
          <entry>bootloaders</entry>

          <entry>Bootloaders, which are the applications responsible for
          loading the kernel from the appropriate location (disk, flash,
          network, etc.) and starting it running.</entry>
        </row>

        <row>
          <entry>console</entry>

          <entry>Applications which run on the console. These require no GUI
          related libraries or interfaces to run.</entry>
        </row>

        <row>
          <entry>console/editors</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/games</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/multimedia</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/network</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/scientific</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/telephony</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/tools</entry>

          <entry></entry>
        </row>

        <row>
          <entry>console/utils</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel</entry>

          <entry>Development related files. These include compilers,
          libraries, headers, debuggers etc.</entry>
        </row>

        <row>
          <entry>devel/libs</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel/perl</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel/python</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel/rexx</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel/ruby</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel/scheme</entry>

          <entry></entry>
        </row>

        <row>
          <entry>devel/tcltk</entry>

          <entry></entry>
        </row>

        <row>
          <entry>doc</entry>

          <entry>Documentation, including man pages and sample configuration
          files.</entry>
        </row>

        <row>
          <entry>e/apps</entry>

          <entry></entry>
        </row>

        <row>
          <entry>e/libs</entry>

          <entry></entry>
        </row>

        <row>
          <entry>e/utils</entry>

          <entry></entry>
        </row>

        <row>
          <entry>fonts</entry>

          <entry>Fonts that are not X11 or OPIE specific such as truetype
          fonts.</entry>
        </row>

        <row>
          <entry>games</entry>

          <entry>Games.</entry>
        </row>

        <row>
          <entry>games/arcade</entry>

          <entry></entry>
        </row>

        <row>
          <entry>gpe</entry>

          <entry>GPE GUI enviroment. For the anything that provides or uses
          the GPE UI. Note that development and documentation related files
          should be in the appropriate devel and doc section, not under
          GPE.</entry>
        </row>

        <row>
          <entry>gpe/applications</entry>

          <entry></entry>
        </row>

        <row>
          <entry>gpe/base</entry>

          <entry></entry>
        </row>

        <row>
          <entry>gpe/games</entry>

          <entry></entry>
        </row>

        <row>
          <entry>gpe/libs</entry>

          <entry>GPE runtime libraries. This does not include libraries used
          for development - they should be included in the appropriate devel
          section.</entry>
        </row>

        <row>
          <entry>gpe/multimedia</entry>

          <entry></entry>
        </row>

        <row>
          <entry>inputmethods</entry>

          <entry>inputmethods that are neither libs, nor solely for GPE/Opie or the console</entry>
        </row>

        <row>
          <entry>interpreters</entry>

          <entry></entry>
        </row>

        <row>
          <entry>kde</entry>

          <entry>KDE related applications.</entry>
        </row>

        <row>
          <entry>kde/devel</entry>

          <entry></entry>
        </row>

        <row>
          <entry>kernel</entry>

          <entry>Linux kernels.</entry>
        </row>

        <row>
          <entry>kernel/modules</entry>

          <entry>Linux kernel modules. This include out-of-tree kernel
          modules.</entry>
        </row>

        <row>
          <entry>kernel/userland</entry>

          <entry></entry>
        </row>

        <row>
          <entry>libs</entry>

          <entry>Runtime libraries. This does not include libraries used for
          development - they should be included in the appropriate devel
          section.</entry>
        </row>

        <row>
          <entry>libs/inputmethods</entry>

          <entry></entry>
        </row>

        <row>
          <entry>libs/multimedia</entry>

          <entry></entry>
        </row>

        <row>
          <entry>libs/network</entry>

          <entry></entry>
        </row>

        <row>
          <entry>network</entry>

          <entry></entry>
        </row>

        <row>
          <entry>network/cms</entry>

          <entry></entry>
        </row>

        <row>
          <entry>network/misc</entry>

          <entry></entry>
        </row>

        <row>
          <entry>openmoko</entry>

          <entry>Anything related to openmoko.org</entry>
        </row>

        <row>
          <entry>openmoko/applications</entry>

          <entry></entry>
        </row>

        <row>
          <entry>openmoko/base</entry>

          <entry></entry>
        </row>

        <row>
          <entry>openmoko/examples</entry>

          <entry></entry>
        </row>

        <row>
          <entry>openmoko/libs</entry>

          <entry></entry>
        </row>

        <row>
          <entry>openmoko/pim</entry>

          <entry></entry>
        </row>

        <row>
          <entry>openmoko/tools</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie</entry>

          <entry>OPIE GUI enviroment. For the anything that provides or uses
          the OPIE UI. Note that development and documentation related files
          should be in the appropriate devel and doc section, not under
          OPIE.</entry>
        </row>

        <row>
          <entry>opie/applets</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/applications</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/base</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/codecs</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/datebook</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/decorations</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/fontfactories</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/fonts</entry>

          <entry>OPIE specific fonts. General fonts, such as truetype fonts,
          should be in the fonts section.</entry>
        </row>

        <row>
          <entry>opie/games</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/help</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/inputmethods</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/libs</entry>

          <entry>OPIE runtime libraries. This does not include libraries used
          for development - they should be included in the appropriate devel
          section.</entry>
        </row>

        <row>
          <entry>opie/multimedia</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/network</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/pim</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/security</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/settings</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/shell</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/styles</entry>

          <entry></entry>
        </row>

        <row>
          <entry>opie/today</entry>

          <entry></entry>
        </row>

        <row>
          <entry>utils</entry>

          <entry></entry>
        </row>

        <row>
          <entry>x11</entry>

          <entry>X11 GUI platform. For anything that provides or uses the X11 
          UI and is not GPE. Note that development and documentation related 
          files should be in the appropriate devel and doc section, not under
          X11.</entry>
        </row>

        <row>
          <entry>x11/applications</entry>

          <entry>General applications.</entry>
        </row>

        <row>
          <entry>x11/base</entry>

          <entry>Core X11 applications.</entry>
        </row>

        <row>
          <entry>x11/data</entry>

          <entry></entry>
        </row>

        <row>
          <entry>x11/fonts</entry>

          <entry>X11 specific fonts. General fonts, such as truetype fonts,
          should be in the fonts section.</entry>
        </row>

        <row>
          <entry>x11/games</entry>

          <entry>Games.</entry>
        </row>

        <row>
          <entry>x11/gnome</entry>

          <entry>Core gnome applications.</entry>
        </row>

        <row>
          <entry>x11/gnome/libs</entry>

          <entry>Gnome runtime libraries. This does not include libraries used
          for development - they should be included in the appropriate devel
          section.</entry>
        </row>

        <row>
          <entry>x11/graphics</entry>

          <entry>Applications which manipulate, display, edit, print etc.
          images, photos, diagrams etc.</entry>
        </row>

        <row>
          <entry>x11/libs</entry>

          <entry>X11 runtime libraries. This does not include libraries used
          for development - they should be included in the appropriate devel
          section.</entry>
        </row>

        <row>
          <entry>x11/multimedia</entry>

          <entry>Multimedia applications.</entry>
        </row>

        <row>
          <entry>x11/network</entry>

          <entry></entry>
        </row>

        <row>
          <entry>x11/office</entry>

          <entry>Office and productivity applications.</entry>
        </row>

        <row>
          <entry>x11/scientific</entry>

          <entry>Scientific applications.</entry>
        </row>

        <row>
          <entry>x11/utils</entry>

          <entry></entry>
        </row>

        <row>
          <entry>x11/wm</entry>

          <entry>Window managers.</entry>
        </row>
      </tbody>
    </tgroup>
  </informaltable>

  <para>The following tables lists some sections which may be in existing
  recipes. These should not be used in new recipes and should be renamed when
  updated existing recipes that use the specified sections.</para>

  <informaltable>
    <tgroup cols="2">
      <colspec colwidth="1*" />

      <colspec colwidth="3*" />

      <tbody>
        <row>
          <entry>Section</entry>

          <entry>Action</entry>
        </row>

        <row>
          <entry>apps</entry>

          <entry>Replace with appropriate section</entry>
        </row>

        <row>
          <entry>gui</entry>

          <entry>Replace with appropriate section</entry>
        </row>

        <row>
          <entry>media-gfx</entry>

          <entry>Replace with appropriate section</entry>
        </row>

        <row>
          <entry>multimedia</entry>

          <entry>Replace with appropriate section</entry>
        </row>

        <row>
          <entry>net</entry>

          <entry>Replace with network</entry>
        </row>

        <row>
          <entry>unknown</entry>

          <entry>Replace with appropriate section</entry>
        </row>

        <row>
          <entry>x11-misc</entry>

          <entry>Replace with appropriate section</entry>
        </row>
      </tbody>
    </tgroup>
  </informaltable>

  <para></para>
</section>