pkg.sopackage field notes

brew / rank 6447

Install execline with Homebrew

Interpreter-less scripting language. Version 2.9.9.2 via Homebrew; verified 2026-07-14.

install

Additional install commands

macOS

Homebrewverified ยท 100%
brew install execline

provider-native install command

overview

Package summary

Interpreter-less scripting language

Commands and aliases

  • background
  • backtick
  • case
  • cd
  • define
  • dollarat
  • elgetopt
  • elgetpositionals
  • elglob
  • eltest
  • emptyenv
  • envfile
  • exec
  • execline-cd
  • execline-umask
  • execlineb
  • exit
  • export
  • export-array
  • fdblock
  • fdclose
  • fdmove
  • fdreserve
  • fdswap
  • forbacktickx
  • foreground
  • forstdin
  • forx
  • getcwd
  • getpid
  • heredoc
  • homeof

history

Project history and usage

execline is a small non-interactive scripting language from skarnet.org, designed as a predictable shell alternative for process supervision, startup scripts, and command chaining.

Project history

The official page describes execline as a scripting language like sh, but with substantially different syntax. Its design goal is predictable grammar and avoidance of shell-style security issues while retaining shell-level power through conditionals, loops, option handling, globbing, environment management, and process-control commands.

The public git tag list shows the 2.x series beginning with v2.0.0.0 about twelve years before June 2026. The upgrade notes record a major build-system change in 2.0.0.0 and continuing incremental additions through 2.9.x, including envfile, posix-cd, posix-umask, eltest, multicall support, and macOS shared-library support.

Adoption history

execline is part of the wider skarnet.org software ecosystem and depends on skalibs. It is packaged across Unix-like distributions and package managers, including Homebrew, Debian, Ubuntu, Alpine, MacPorts, and others in the supplied package facts.

Its adoption is strongest among users of s6, runit-like supervision ideas, and minimal Unix service-management stacks, where explicit process state, file descriptor handling, and environment manipulation matter more than interactive shell convenience.

How it is used

Users write execlineb scripts or compose the provided commands directly. The command set covers parser/launcher behavior, process state control, environment files, fd operations, redirection, pipelines, foreground/background blocks, conditionals, loops, positional parameters, and option parsing.

The homepage includes example .profile replacement scripts and documents each command with consistent exit behavior: temporary errors exit 111, permanent misuse-style errors exit 100, failed exec lookup exits 127, and other exec failures exit 126.

Why package nerds care

execline is package-nerd significant because it decomposes shell behavior into many small binaries with explicit process semantics. It fits the skarnet tradition of small composable tools for supervision and init-adjacent systems.

It is also a good example of a package where the binary list is the product: installing execline adds a vocabulary of tiny command primitives rather than one large interactive shell.

Timeline

  • 2.0.0.0: Build system changed to the standard configure, make, install flow.
  • 2.5.1.0: envfile command added.
  • 2.5.3.0: posix-cd added and wait made POSIX-compliant.
  • 2.9.1.0: eltest added.
  • 2.9.2.0: Experimental multicall feature added.
  • 2.9.8.0: Shared libraries supported on macOS.
  • 2026: v2.9.9.1 tagged in the official git repository.

Related projects

  • skalibs is execline's required support library.
  • The homepage lists official mirrors on Codeberg, GitHub, and SourceHut, and points users to skaware mailing-list discussion.

security posture

No protected-tool coverage found yet

No matching local secret-handling manifest was found for execline. Nucleus package metadata is still published here so future coverage has a stable package URL.

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
backgroundexecutableindexed executableDiscovered from the local executable index.
backtickexecutableindexed executableDiscovered from the local executable index.
caseexecutableindexed executableDiscovered from the local executable index.
cdexecutableindexed executableDiscovered from the local executable index.
defineexecutableindexed executableDiscovered from the local executable index.
dollaratexecutableindexed executableDiscovered from the local executable index.
elgetoptexecutableindexed executableDiscovered from the local executable index.
elgetpositionalsexecutableindexed executableDiscovered from the local executable index.
elglobexecutableindexed executableDiscovered from the local executable index.
eltestexecutableindexed executableDiscovered from the local executable index.
emptyenvexecutableindexed executableDiscovered from the local executable index.
envfileexecutableindexed executableDiscovered from the local executable index.
execexecutableindexed executableDiscovered from the local executable index.
execline-cdexecutableindexed executableDiscovered from the local executable index.
execline-umaskexecutableindexed executableDiscovered from the local executable index.
execlinebexecutableindexed executableDiscovered from the local executable index.
exitexecutableindexed executableDiscovered from the local executable index.
exportexecutableindexed executableDiscovered from the local executable index.
export-arrayexecutableindexed executableDiscovered from the local executable index.
fdblockexecutableindexed executableDiscovered from the local executable index.
fdcloseexecutableindexed executableDiscovered from the local executable index.
fdmoveexecutableindexed executableDiscovered from the local executable index.
fdreserveexecutableindexed executableDiscovered from the local executable index.
fdswapexecutableindexed executableDiscovered from the local executable index.
forbacktickxexecutableindexed executableDiscovered from the local executable index.
foregroundexecutableindexed executableDiscovered from the local executable index.
forstdinexecutableindexed executableDiscovered from the local executable index.
forxexecutableindexed executableDiscovered from the local executable index.
getcwdexecutableindexed executableDiscovered from the local executable index.
getpidexecutableindexed executableDiscovered from the local executable index.
heredocexecutableindexed executableDiscovered from the local executable index.
homeofexecutableindexed executableDiscovered from the local executable index.
ifexecutableindexed executableDiscovered from the local executable index.
ifelseexecutableindexed executableDiscovered from the local executable index.
ifteexecutableindexed executableDiscovered from the local executable index.
ifthenelseexecutableindexed executableDiscovered from the local executable index.
importasexecutableindexed executableDiscovered from the local executable index.
loopwhilexexecutableindexed executableDiscovered from the local executable index.
multidefineexecutableindexed executableDiscovered from the local executable index.
multisubstituteexecutableindexed executableDiscovered from the local executable index.
pipelineexecutableindexed executableDiscovered from the local executable index.
piperwexecutableindexed executableDiscovered from the local executable index.
posix-cdexecutableindexed executableDiscovered from the local executable index.
posix-umaskexecutableindexed executableDiscovered from the local executable index.
redirfdexecutableindexed executableDiscovered from the local executable index.
runblockexecutableindexed executableDiscovered from the local executable index.
shiftexecutableindexed executableDiscovered from the local executable index.
trapexecutableindexed executableDiscovered from the local executable index.
tryexecexecutableindexed executableDiscovered from the local executable index.
umaskexecutableindexed executableDiscovered from the local executable index.
unexportexecutableindexed executableDiscovered from the local executable index.
waitexecutableindexed executableDiscovered from the local executable index.
withstdinasexecutableindexed executableDiscovered from the local executable index.

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-08-03
manager version2.9.9.2
manager updated2026-07-14
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:execline
Version2.9.9.2
Package managerHomebrew
Homepagehttps://skarnet.org/software/execline/
Last updated2026-07-14T12:58:16Z
Pulseupdated
Bottlenot recorded
Servicenone declared

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Nucleus package database
  • curated package history
  • pkgdb category and tag curation