notbugAs an Amazon Associate I earn from qualifying purchases.
Want a good read? Try FreeBSD Mastery: Jails (IT Mastery Book 15)
Want a good monitor light? See my photosAll times are UTC
Ukraine

Bot filter coming soon

To deter bots pegging the database CPU to 100%, a bot testing filter to be added to the website. This should not affect newsfeeds etc. Anubis seems light-weight - it is already in use within the FreeBSD Project. This notice is just a heads up in case you see something odd. This notice will be updated after Anubis is installed.

Port details
porch Program orchestration tool scripted with lua
1.2 sysutils on this many watch lists=0 search for ports that depend on this port Find issues related to this port Report an issue related to this port View this port on Repology. pkg-fallout 1.2Version of this port present on the latest quarterly branch.
Maintainer: kevans@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2024-09-27 04:42:09
Last Update: 2025-06-05 15:18:43
Commit Hash: 265bd0d
License: BSD2CLAUSE
WWW:
https://git.kevans.dev/kevans/porch
Description:
Porch is a program orchestration tool, inspired by expect(1) but scripted with lua. This utility allows scripted manipulation of programs for, e.g., testing or automation purposes. Porch drives spawn processes over a pts(4) pseudo-terminal, which allows for a broader range of interactions with a program under orchestration.
Homepage    cgit ¦ Codeberg ¦ GitHub ¦ GitLab ¦ SVNWeb - no subversion history for this port

Manual pages:
pkg-plist: as obtained via: make generate-plist
Expand this list (28 items)
Collapse this list.
  1. /usr/local/share/licenses/porch-1.2/catalog.mk
  2. /usr/local/share/licenses/porch-1.2/LICENSE
  3. /usr/local/share/licenses/porch-1.2/BSD2CLAUSE
  4. bin/porch
  5. bin/porchgen
  6. bin/rporch
  7. lib/lua/5.4/porch/core.so
  8. share/lua/5.4/porch.lua
  9. share/lua/5.4/porch/actions.lua
  10. share/lua/5.4/porch/context.lua
  11. share/lua/5.4/porch/direct.lua
  12. share/lua/5.4/porch/env.lua
  13. share/lua/5.4/porch/generator.lua
  14. share/lua/5.4/porch/matchers.lua
  15. share/lua/5.4/porch/process.lua
  16. share/lua/5.4/porch/scripter.lua
  17. share/examples/porch/cat.orch
  18. share/examples/porch/cat-multi.orch
  19. share/examples/porch/mailx.orch
  20. share/examples/porch/nc.orch
  21. share/man/man1/porch.1.gz
  22. share/man/man1/porchgen.1.gz
  23. share/man/man1/rporch.1.gz
  24. share/man/man3lua/porch.3lua.gz
  25. share/man/man5/orch.5.gz
  26. @owner
  27. @group
  28. @mode
Collapse this list.
Dependency lines:
  • porch>0:sysutils/porch
To install the port:
cd /usr/ports/sysutils/porch/ && make install clean
To add the package, run one of these commands:
  • pkg install sysutils/porch
  • pkg install porch
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.
PKGNAME: porch
Flavors: there is no flavor information for this port.
distinfo:
TIMESTAMP = 1749093985 SHA256 (porch-1.2.tar.gz) = 26c485af12c47f5597d4ab516cdae6185a7f8ebed96673bc073e5e4791ddaafa SIZE (porch-1.2.tar.gz) = 66325

Expand this list (2 items)

Collapse this list.

SHA256 (f0dbbc88f53bef4.patch) = 9288a834dbe1bbb65d44a4395bf7c79eb7df53cee9a54267889b1ba150e75f59 SIZE (f0dbbc88f53bef4.patch) = 672

Collapse this list.


Packages (timestamps in pop-ups are UTC):
porch
ABIaarch64amd64armv6armv7i386powerpcpowerpc64powerpc64le
FreeBSD:13:latest1.21.2-1.21.2---
FreeBSD:13:quarterly1.11.1-1.11.1---
FreeBSD:14:latest1.21.2-1.11.2---
FreeBSD:14:quarterly1.11.1-1.11.2---
FreeBSD:15:latest1.21.2n/a1.1n/a---
Dependencies
NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
Build dependencies:
  1. cmake : devel/cmake-core
  2. ninja : devel/ninja
Library dependencies:
  1. liblua-5.4.so : lang/lua54
There are no ports dependent upon this port

Configuration Options:
===> The following configuration options are available for porch-1.2: EXAMPLES=on: Build and/or install examples MANPAGES=on: Build and/or install manual pages ===> Use 'make config' to modify these settings
Options name:
sysutils_porch
USES:
cmake lua:53-54
FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (1 items)
Collapse this list.
  1. https://git.kevans.dev/kevans/porch/archive/1.2.tar.gz?dummy=/
Collapse this list.
Port Moves
  • port moved here from sysutils/orch on 2024-09-26
    REASON: Upstream was renamed

Number of commits found: 4

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
1.2
05 Jun 2025 15:18:43
commit hash: 265bd0dc7c54c583b5002a979f20ee73346c12a1commit hash: 265bd0dc7c54c583b5002a979f20ee73346c12a1commit hash: 265bd0dc7c54c583b5002a979f20ee73346c12a1commit hash: 265bd0dc7c54c583b5002a979f20ee73346c12a1 files touched by this commit
Kyle Evans (kevans) search for other commits by this committer
sysutils/porch: update to v1.2

Highlights:
 - Ability to signal processes
 - Configuration of signal masks and ignored/caught signals
 - Improved porch(3lua) to better document the process/term interface
 - Enhanced eof() to invoke a callback on termination (orch(5)) with a
    wait status object or return it (porch(3lua))
1.1
23 Mar 2025 16:35:48
commit hash: bf2b1daec33511b705b5de7130c56bd46d36dfa7commit hash: bf2b1daec33511b705b5de7130c56bd46d36dfa7commit hash: bf2b1daec33511b705b5de7130c56bd46d36dfa7commit hash: bf2b1daec33511b705b5de7130c56bd46d36dfa7 files touched by this commit
Kyle Evans (kevans) search for other commits by this committer
sysutils/porch: update to v1.1

Highlights:
 - porchgen(1) to generate starter orch(5) scripts
 - rporch(1) to execute a local orch(5) script against a remote machine
 - Added a pipe() command to inject output from another program
1.0
28 Nov 2024 04:49:23
commit hash: 9f0fc6e32e2b4456abd440deea2da1d80b059219commit hash: 9f0fc6e32e2b4456abd440deea2da1d80b059219commit hash: 9f0fc6e32e2b4456abd440deea2da1d80b059219commit hash: 9f0fc6e32e2b4456abd440deea2da1d80b059219 files touched by this commit
Kyle Evans (kevans) search for other commits by this committer
sysutils/porch: update to v1.0

Highlights:
 - Now tries to avoid error/assert as much as possible to avoid aborting
   on lib
    users, which could handle the situation more gracefully
 - Allows more flexibility in run_script(), so one can pass an
   already-open file
    and run it.
 - Improved documentation with linting in CI
 - Wrote porch(3lua) to document the direct-execution interface
0.4
27 Sep 2024 04:30:37
commit hash: 548701f13608d567e3292708cdf78d0fc5c88617commit hash: 548701f13608d567e3292708cdf78d0fc5c88617commit hash: 548701f13608d567e3292708cdf78d0fc5c88617commit hash: 548701f13608d567e3292708cdf78d0fc5c88617 files touched by this commit
Kyle Evans (kevans) search for other commits by this committer
sysutils/orch: update to 0.4

Highlights:
 - Many bug fixes
 - Improved ipc interface for more robust program startup
 - Cleaner lib interface to allow use in lua scripts
 - Multi-match support within a single match()
 - Terminal resize support

While we're here, orch has been renamed to porch upstream to deconflict
with a pre-existing rust framework.  The scripts are still called
(orch)estration scripts.

This change also switches to the new `check-install` target to sanity
test our install layout.

Number of commits found: 4