Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ (4) — Plan9 3rd Edition (Vita Nuova)

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(1)

root(3)

namespace(6)

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:\users\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 applications. 

­/chan An empty directory, used for holding files created with sys-file2chan(2).

­/net The standard mount point directory for network interfaces. 

­/n A directory containing mount points for file trees 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 Conventional place to put temporary files. 

­/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. 

­/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. 

Administration

­/keydb Certificate storage

­/services A jungle of program-specific configuration files. 

­/licencedb Agreements and licences

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

­/kfs 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. 

­/memimage

­/memlayer

­/prefab

­/keyring

­/image

­/interp

­/tk 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 initialisation procedures. 

­/os/port Portable native kernel source. 

/os/arch Arch-specific native kernel source.

­/os/kfs The native kernel version of kfs(3).

MINIMAL FILESYSTEM

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 applications you plan to run, and the modules they depend on.  Disdep(1) can be useful when trying to determine this set.

­/dev

­/tmp

­/env

­/chan

­/prog

­/n

­/n/local

­/n/remote

­/n/ssl

­/n/client All empty directories, needed as mount points by standard Inferno programs. You will need to add to this list as required by the programs you run. 

­/services/cs/db

­/services/cs/dns

­/services/cs/services
Files needed by cs(8).

Files needed to run as a server

­/keydb/password

­/keydb/signerkey
See password(6) and signer(8).

Files needed to run the window manager

­/fonts At least one font must be provided - a default 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 wm-logon(1) is to function correctly.

SEE ALSO

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

BUGS

Some naming conventions are not ideal, and reflect decisions made years ago. Next time... 

Plan 9  —  June 08, 2000

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026