Manages a local copy of the HardenedBSD ports tree
Find a file
0x1eef df18ee25e5
Some checks are pending
portzap / shellcheck (push) Waiting to run
docs: update
2024-11-16 01:06:16 -03:00
.github/workflows Add shellcheck target 2024-04-02 13:40:16 -03:00
bin Default to a "stable" clone URL 2024-09-10 21:56:35 -03:00
libexec/portzap Create doas.conf if neccessary 2024-09-15 22:05:27 -03:00
man/man8 Default to a "stable" clone URL 2024-09-10 21:56:35 -03:00
share/portzap v1.2.1 2024-09-19 15:58:48 -03:00
.editorconfig Add .editorconfig 2024-09-14 03:39:38 -03:00
.projectile Add HardenedBSD source 2023-01-29 07:48:09 -03:00
Makefile Break up 'portzap-install' into multiple files 2024-08-19 00:01:12 -03:00
README.md docs: update 2024-11-16 01:06:16 -03:00

About

portzap is a utility that manages a local copy of the HardenedBSD ports tree. The copy of the ports tree is maintained by members of the _portzap group, and the copy of the ports tree can be installed into /usr/ports/ by root.

CLI

CLI: setup

portzap setup should be run after installing portzap for the first time:

# Add the '_portzap' user, group and home directory
# This command requires root privileges
root@localhost# portzap setup

# Reverse the changes made by 'portzap setup'
# This command requires root privileges
root@localhost# portzap teardown

CLI: group

The following commands are delegated to the _portzap user and restricted to members of the _portzap group:

  • portzap clone
    Clone the HardenedBSD ports tree into /home/_portzap/ports/

  • portzap pull
    Pull updates into /home/_portzap/ports/

  • portzap checkout
    Checkout a branch other than the default: hardenedbsd/main

  • portzap sh
    Run /bin/sh within /home/_portzap/ports/

CLI: superuser

The following commands are restricted to root:

  • portzap rm
    Remove the contents of /usr/ports/ and /home/_portzap/ports/

  • portzap install
    Install /home/_portzap/ports/ into /usr/ports/

Environment

  • $PORTZAP_CLONEURL
    The URL of a git repository
    Default: https://github.com/HardenedBSD/ports

  • $PORTZAP_INSTALLDIR
    The directory where the ports collection will be installed
    Default: /usr/ports/

Install

portzap is available from the HardenedBSD ports tree. pkg install portzap should work too but expect slower updates. After installation of portzap, portzap setup should be run as root and one or more users should be added to the _portzap group:

root@localhost# portzap setup
root@localhost# pw groupmod -n _portzap -m myuser

Requirements

Sources

License

BSD Zero Clause
See LICENSE