NAMESPACE(4)                                         NAMESPACE(4)

     NAME
          namespace - structure of conventional Inferno name space

     SYNOPSIS
          none

     DESCRIPTION
          The list below gives an overview of the Inferno distribution
          file tree, organised into related categories.

          /          The root directory. To programs running outside
                     Inferno, this corresponds to the directory in
                     which Inferno has been installed (e.g.
                     C:\inferno under Windows).

        Mount points
          The following are all placeholders for filesystems that are
          mounted when Inferno is running. They contain no data files.
          Although an Inferno namespace is a dynamic entity, and
          devices can be mounted anywhere therein, many programs
          assume that devices have been mounted in the standard
          places, as suggested by the skeleton directories listed
          below.

          /dev       The standard mount point for devices (e.g.
                     cons(3))
          /env       The standard mount point for the env(3) device.
          /mnt       A directory containing mount points for applica-
                     tions.
          /chan      An empty directory, used for holding files cre-
                     ated with sys-file2chan(2).
          /net       The standard mount point directory for network
                     interfaces.
          /n         A directory containing mount points for file
                     trees on local devices or imported from remote
                     systems.
          /prog      An empty directory, the mount point for the
                     prog(3) device.
          /nvfs      An empty directory, the mount point for a non-
                     volatile RAM filesystem on devices that have one.
          /tmp       Mount point for private directory of temporary
                     files (eg, /usr/user/tmp).
          /mail      Conventional place to mount mailboxes.

        Limbo applications
          /dis       Dis executables (commands)
          /dis/lib   Dis libraries
          /dis/wm    Dis commands that run under wm(1).
          /man       Manual pages.
          /doc       Documentation other than manual pages.

     Page 1                       Plan 9            (printed 12/21/24)

     NAMESPACE(4)                                         NAMESPACE(4)

          /appl      Source to Limbo applications.
          /appl/cmd  Source to the commands in /dis (as documented in
                     Section 1).
          /appl/wm   Source to the commands in /dis/wm
          /appl/lib  Source to the modules in /dis/lib (as documented
                     in Section 2).
          /module    Limbo module declarations

        Supporting data
          /acme      Programs and guide files specific to acme(1).
          /fonts     Font definitions
          /locale    Timezone and locale information
          /icons     Contains image(6) files used by programs.
          /icons/tk  Default directory searched by tk's -bitmap option
                     (see options(9)).
          /lib       Static program-specific data.
          /lib/ndb   Network configuration files used by cs(8), dns(8)
                     and others.

        Administration
          /keydb     Storage of secrets and certificates on signers
                     (authentication servers).
          /services  A jungle of program-specific configuration files.

        Platform specific
          /Platform  Binaries specific to Platform. Current platforms
                     include Inferno (native binaries), FreeBSD, Hp,
                     Irix, Linux, Nt, Plan9, Solaris and Unixware.
          /Platform/arch/bin
          /Platform/arch/lib
          /Platform/arch/include
                     Platform specific binaries, libraries and include
                     files respectively.  Arch is the architecture
                     type, as defined in 2c(10.1) and held in the
                     $objtype environment variable.
          /usr       A directory containing user directories.

        Inferno source code
          /emu            Directory containing source specific to
                          emu(1).
          /emu/port       Cross-platform source for emu(1).
                          /emu/Platform Platform-specific source for
                          emu(1).
          /libkfs         The emu version of kfs(3).
          /libbio
          /libregexp      Source to libraries used by hosted commands.
          /lib9           Source to the Plan 9 emulation library, used
                          by emu and the hosted commands.
          /libmemdraw
          /libmemlayer
          /libprefab
          /libkern

     Page 2                       Plan 9            (printed 12/21/24)

     NAMESPACE(4)                                         NAMESPACE(4)

          /libkeyring
          /libdraw
          /libinterp
          /libtk          Inferno source used by both native and
                          hosted versions of Inferno.
          /asm
          /limbo          Source to the two hosted Inferno commands of
                          the same name.
          /utils          Source to hosted utilities run from emu(1)
                          via the cmd(3) interface.
          /tools          A directory containing source directories
                          for hosted tools used in building Inferno
                          (e.g.  mk(10.1)).
          /os             A directory holding source directories for
                          the native versions of Inferno.
          /os/init        Limbo source for platform-specific initiali-
                          sation procedures.
          /os/port        Portable native kernel source.
          /os/arch        Arch-specific native kernel source.
          /os/kfs         The native kernel version of kfs(3).

        Minimal name space
          The above is all very well on a system with lots of storage,
          but what is actually necessary for the running of Inferno?
          The following gives a quick summary of the structure that
          must be provided for Inferno to function correctly.

          /dis       This must contain Dis modules for all the appli-
                     cations you plan to run, and the modules they
                     depend on.  Disdep(1) can be useful when trying
                     to determine this set.
          /dev
          /env
          /chan
          /net
          /prog
          /tmp       All empty unwritable directories, place holders
                     for mounted services and applications.  Often
                     these are provided by the built-in root(3).
          /mnt       A directory containing mount points for applica-
                     tions.
          /n         A directory containing mount points for remote
                     file systems.

        Files needed to run as a server
          /keydb/keys
                     See keyfs(4), logind(8) and signer(8).
          /keydb/signerkey
                     See createsignerkey(8) and logind(8).

        Files needed to run the window manager
          /fonts     At least one font must be provided - a default

     Page 3                       Plan 9            (printed 12/21/24)

     NAMESPACE(4)                                         NAMESPACE(4)

                     font for Tk to use.
          /icons/tk  This should contain icons used by applications
                     that run within Tk.
          /user/user At least one user directory must exist if
                     logon(1) is to function correctly.

     SEE ALSO
          intro(1), root(3), namespace(6)

     Page 4                       Plan 9            (printed 12/21/24)