portzap/README.md
0x1eef 105b4f6594 Alter default umask / mode
'/home/_portzap/ports/' and '/usr/ports/' have reduced permissions for
members of the '_portzap' group, who now possess read-only permissions
for both directories.

The 'portzap erase' command must be run by root, since members of the
'_portzap' group can't delete contents of either of those directories
anymore.
2024-04-20 02:23:20 -03:00

2.3 KiB

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 to /usr/ports by root.

Examples

CLI: setup-portzap

This command should be run after installing portzap for the first time.

# Add the portzap user, group and home directory.
# This command requires root privileges.
# setup-portzap

CLI: portzap

# Clone the hardenedbsd ports tree into /home/_portzap/ports/.
# This command is delegated to the '_portzap' user.
$ portzap clone

# Pull updates into /home/_portzap/ports/.
# This command is delegated to the '_portzap' user.
$ portzap pull

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

# Start over: erase /usr/ports/ and /home/_portzap/ports/.
# This command requires root privileges.
$ portzap erase

ENVIRONMENT

  • $PORTZAP_GITURL
    The URL to a git repository.
    Default: https://git.hardenedbsd.org/hardenedbsd/ports.git.

  • $PORTZAP_BRANCH
    The git branch to clone and pull updates from.
    Default: hardenedbsd/main.

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

Install

Port

portzap is available as a hardenedbsd port.
pkg install portzap should work too but expect slower updates.

Source

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

$ git clone https://github.com/0x1eef/portzap.git
$ cd portzap
# make install
# portzap setup
# pw groupmod -n _portzap -m <user>

Requirements

  • doas (pkg install doas)
  • git (pkg install git)

Sources

License

BSD Zero Clause.
See LICENSE.