Command Line Interface

ƿit provides a command-line interface for managing packages, running scripts, and building applications.

Basic Usage

pit <command> [arguments]

Commands

pit version

Display the ƿit version.

pit version
# 0.1.0

pit install

Install a package to the shop.

pit install gitea.pockle.world/john/prosperon
pit install /Users/john/local/mypackage  # local path

pit update

Update packages from remote sources.

pit update              # update all packages
pit update <package>    # update specific package

pit remove

Remove a package from the shop.

pit remove gitea.pockle.world/john/oldpackage

pit list

List installed packages.

pit list              # list all installed packages
pit list <package>    # list dependencies of a package

pit ls

List modules and actors in a package.

pit ls              # list files in current project
pit ls <package>    # list files in specified package

pit build

Build the current package.

pit build

pit test

Run tests.

pit test            # run tests in current package
pit test all        # run all tests
pit test <package>  # run tests in specific package

Manage local package links for development.

pit link add <canonical> <local_path>  # link a package
pit link list                          # show all links
pit link delete <canonical>            # remove a link
pit link clear                         # remove all links

pit fetch

Fetch package sources without extracting.

pit fetch <package>

pit upgrade

Upgrade the ƿit installation itself.

pit upgrade

pit clean

Clean build artifacts.

pit clean

pit help

Display help information.

pit help
pit help <command>

Running Scripts

Any .ce file in the ƿit core can be run as a command:

pit version    # runs version.ce
pit build      # runs build.ce
pit test       # runs test.ce

Package Locators

Packages are identified by locators:

  • Remote: gitea.pockle.world/user/repo
  • Local: /absolute/path/to/package
pit install gitea.pockle.world/john/prosperon
pit install /Users/john/work/mylib

Configuration

ƿit stores its data in ~/.pit/:

~/.pit/
├── packages/       # installed packages
├── lib/            # compiled dynamic libraries
├── build/          # build cache
├── cache/          # downloaded archives
├── lock.toml       # installed package versions
└── link.toml       # local development links

Environment

ƿit reads the HOME environment variable to locate the shop directory.

Exit Codes

  • 0 — Success
  • Non-zero — Error (check output for details)