User's manual. Section 3.

NSPACE(3): name space conventions


SYNOPSYS

DESCRIPTION

This page describes the conventions for the name space. The importzx(1) command imports the main tree which follows such conventions.

Clive terminals operate on hosted environments. Clive servers may be native (not yet, really) or hosted.

The main tree is usually mounted at /zx and its dump can be found at /dump. The /once tree keeps stuff not be dumped. The dump contains a frozen version of the main tree for each day. Directories named tmp or tmp.* or *.tmp or containing a file named NODUMP are never copied to the dump. Files with names starting with a dot character (.) are never dumped.

The name space is usually specified by either a environment variable ($NS) or by a file at $HOME/NS. In both cases, the text describes the name space. The environment variable may be just the path for a file describing the name space, and acts as an indirection to that file in such a case.

The description of the name space is a series of lines, one per mount entry. A line can be a printed directory entry (with attribute/value pairs, as expected). In that case, the path for the directory is used as the mount point and the directory is mounted there.

A line can be also a pair of strings, the first is the path for the mount point and the second refers to the resource mounted there. The resource may be a path, in which case it refers to a local file, or it may be a resource address as described in addr(3), to refer to the addressed resource.

For example,

The name space is a prefix table and the longest prefix wins, but each prefix may have more than one entry (i.e., be a union).

These files can be expected in the name space.

/bin
local terminal binaries for the hosting system
/bin/rc
The Rc shell, always kept at the terminal
/once
Root of mounted non-archived main tree
/dump
Root of the mounted dumps
/dump/zx
Root of dump for the zx tree
/dump/zx/2014/0509/...
Copy of files for the named year and day
/zx
Root of the main tree
/zx/bin
Binaries
/zx/bin/rc
Portable scripts. Non portable scripts are kept on a per-architecture directory along with binaries.
/zx/bin/darwin_amd64
Binaries for OSX on amd64 hosts.
/zx/bin/bsd_amd64
Binaries for BSD on amd64 hosts.
/zx/bin/linux_amd64
Binaries for Linux on amd64 hosts.
/zx/cfg
Copy of configuration for servers and terminals
/zx/doc
Documents
/zx/lib
System wide libraries (eg, bibliography, icons, etc.)
/zx/mail
Copy of system wide e-mail files
/zx/sys
Source for the system
/zx/sys/bin
To make /sys go compliant, should not be used. Use /zx/bin/* directories instead.
/zx/sys/doc
White papers for the system
/zx/sys/man
Source for manual pages.
/zx/sys/golang
Source for the lsub branch of the go compiler
/zx/sys/pkg
To make /sys go compliant.
/zx/sys/src
System source
/zx/sys/src/clive
Source for clive packages and binary commands
/zx/sys/src/clive/cmd
Source for clive binary commands
/zx/sys/src/clive/x
Source for external go packages (google code, etc.).
/zx/usr
Home and project directories
/zx/usr/web
Web pages
/zx/usr/p9p
Plan9ports copy
/x
Directory for xcmd(1) to execute commands on lsub systems.
/x/nautilus
Commands run at nautilus, see xcmd(1).
/x/nautilus/web
Web command run at nautilus, see xcmd(1).

SEE ALSO

  • Introduction to Clive and its commands: intro(1).
  • The command execution service: xcmd(1).
  • Addresses: addr(3).


    User's manual. Section 3.