Manages a local copy of the HardenedBSD ports tree
Find a file
0x1eef c4ee461925
Some checks are pending
portzap / shellcheck (push) Waiting to run
Add clarity to the documentation
2024-08-07 02:15:47 -03:00
.github/workflows Add shellcheck target 2024-04-02 13:40:16 -03:00
bin Add 'portzap sh' 2024-08-07 02:10:37 -03:00
libexec/portzap Add 'portzap sh' 2024-08-07 02:10:37 -03:00
man/man8 Add clarity to the documentation 2024-08-07 02:15:47 -03:00
share/portzap v1.0.0 2024-08-03 00:41:37 -03:00
.projectile Add HardenedBSD source 2023-01-29 07:48:09 -03:00
Makefile Fix shellcheck errors (includes a bug in setup-user) 2024-07-26 22:26:07 -03:00
README.md Add clarity to the documentation 2024-08-07 02:15:47 -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.

Examples

CLI: setup-portzap

setup-portzap should be run after installing portzap for the first time.
There is no harm in running setup-portzap multiple times:

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

CLI: portzap

# Clone the HardenedBSD ports tree into /home/_portzap/ports/
# This command is delegated to the '_portzap' user and
# limited to members of the '_portzap' group
user@localhost$ portzap clone

# Pull updates into /home/_portzap/ports/
# This command is delegated to the '_portzap' user and
# limited to members of the '_portzap' group
user@localhost$ portzap pull

# Checkout a branch other than the default: hardenedbsd/main
# This command is delegated to the '_portzap' user and
# limited to members of the '_portzap' group
user@localhost$ portzap checkout freebsd/main

# Run /bin/sh within /home/_portzap/ports/
# This command is delegated to the '_portzap' user and
# limited to members of the '_portzap' group
user@localhost$ portzap sh

# Remove the contents of /usr/ports/ and /home/_portzap/ports/
# This command requires root privileges
root@localhost# portzap rm

# Install /home/_portzap/ports/ into /usr/ports/
# This command requires root privileges
root@localhost# portzap install

Environment

Install

Package

portzap is available from the HardenedBSD ports tree.
pkg install portzap should work too but expect slower updates.

Git

The most recent version of portzap can be installed via git:

# Clone
user@localhost$ git clone https://git.hardenedbsd.org/0x1eef/portzap.git
user@localhost$ cd portzap

# Install
root@localhost# make install
root@localhost# setup-portzap

# Add user to '_portzap' group
root@localhost# pw groupmod -n _portzap -m <user>

Requirements

Sources

License

BSD Zero Clause
See LICENSE