An Inner-package contains the main file content, for example, for a software package, the Inner-package contains all the necessary files for program execution, as well as description files, workflows, and other context; archiving these contents using tar and compressing with the Zstandard compression algorithm will yield the Inner-package.
The general directory structure of the Inner-package content is as follows:
The package description file is named package.toml
, which stores necessary descriptive information about the contents of the package, such as name, version number, author, summary, etc.
A package description file might look like this:
The package information table is within the [package]
table in package.toml
, providing general information about the Nep package.
You can find the complete definition of the package information table fields in Definitions and APIs.
Different package templates have their own exclusive table fields, providing unique information for the package belonging to that template. For example, for a software package (template = "Software"
), its exclusive table is the [software]
table in package.toml
.
You can find the complete definition of the exclusive table fields in Definitions and APIs.
The package content directory stores the files needed by the user, with the directory name consistent with the package name in the package information table (package.name
), which contains the main program of the software and other files required for its operation.
The workflows directory is named workflows
, containing workflow description files that comply with the Nep workflow specification.
For software packages, the valid workflow file names are:
setup.toml
update.toml
remove.toml
expand.toml
Among them, setup.toml
must be provided.
You can further understand the concepts related to workflows in Basic Workflow Introduction.