Skip to main content

Terms used across the xPack Project

xPack​

This term should primarily be understood as a generic name for the top project (The xPack Reproducible Build Framework, The xPack Framework, or simply The xPack Project).

Etymologically, xPack can be considered to be a short form for xpm package, or extended package, which is technically a npm package with additional xpack definitions to store the xpm metadata.

Reproducibility​

For software development, reproducibility is the characteristic of a development framework that ensures stability over time and across platforms, allowing the same builds or tests to be executed repeatedly with identical results.

xpm​

xpm stands for the xPack Project Manager. It is a Node.js CLI application. It is NOT a replacement for npm, but rather complements its functionality with features specific to compiled languages such as C and C++.

npm​

Although the existing documentation does not acknowledge the acronym, npm stands for the Node.js Package Manager.

Node.js​

Node.js is a cross-platform, open-source JavaScript runtime environment designed for CLI and server applications.

CLI​

CLI stands for Command-Line Interface. When used with program names, it indicates that the program runs in a computer terminal rather than a graphical user interface.

npmjs.com​

npmjs.com is the public repository for Node.js packages. Access is free, and it hosts millions of packages, with tens of billions of downloads every week.

CDL​

CDL stands for Component Definition Language. It was introduced by eCos and is documented in The eCos Component Writer's Guide.

xCDL​

xCDL stands for the xPack Configuration Definition Language, inspired by CDL.

Cross-platform tool​

A tool that can be used across multiple different platforms, such as Windows, macOS, GNU/Linux.

User global xPacks store​

A platform-dependent folder within the home folder where xpm installs all versions of the packages.