Print different action list text for packages that are not going to be installed (e.g. for make targets "extract", "patch" or "stage" in build dependencies). Limit depth of search for empty directories to reduce the scan time if there are non-empty work directory sub-trees. Add package format parameters to rc.sample file. Approved by: antoine (implicit)433569dcae
Port details
ports-mgmt/portmaster 3.35
Manage your ports without external databases or languages
Port info
- Maintainer
- se@FreeBSD.org
- Packages
- latest: 3.35
- Upstream
- up to date
- Last update
- to 3.35 · 8dbda5d791
- Quarterly
- 2026Q4: 3.35
- Formerly
- sysutils/portmaster until 2007-02-05
- WWW
- https://portmaster.github.io/
- Links
- cgit · VuXML · Report wrong data
Install
- Package
# pkg install portmasterinstalls 3.35 fromlatest; fromquarterly(2026Q4) 3.35- Port
# cd /usr/ports/ports-mgmt/portmaster && make install clean# make -C /usr/ports/ports-mgmt/portmaster config # change options first
- Size
- 43 KiB download · 135 KiB installed
- Depends on
- nothing
- License
- BSD2CLAUSE
- Options
- 2 of 2 on in the package: BASH ZSH
Packages by version and architecture
latest
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 16 | 3.35 | 3.35 | – |
| FreeBSD 15 | 3.35 | 3.35 | – |
| FreeBSD 14 | 3.35 | 3.35 | 3.35 |
quarterly (2026Q4)
| FreeBSD version | amd64 | aarch64 | i386 |
|---|---|---|---|
| FreeBSD 15 | 3.35 | 3.35 | – |
| FreeBSD 14 | 3.35 | 3.35 | 3.35 |
version as in the ports tree (latest) or the most common one (quarterly) · different version · ✗ not built · – no packages for this platform. Package sets that have not been rebuilt for 60 days are left out.
Unaddressed and VuXML only (0)
No unaddressed CVE and nothing reported by
pkg audit for the packaged version 3.35.Fixed (0)
No VuXML entries for this package.
Problem reports (7) · open in Bugzilla, most recently changed first
| PR | Summary | Status | Changed |
|---|---|---|---|
| 295355 | maintainer-feedback? ports-mgmt/portmaster terminates too early if installing multiple new ports on 15-STABLE | New | 2026-05-17 |
| 281732 | maintainer-feedback? ports-mgmt/portmaster: fails to build ports with gmake error: : invalid option -- D | New | 2026-03-23 |
| 290829 | maintainer-feedback? ports-mgmt/portmaster: removes directories preventing pkg 2.4 fails to create its own package | In Progress | 2026-03-01 |
| 269076 | maintainer-feedback? ports-mgmt/portmaster --delete-build-only leaves build only dependencies | New | 2023-01-27 |
| 245840 | needs-qa maintainer-feedback? merge-quarterly? ports-mgmt/portmaster: -R is too agressive in removing PM_UPGRADE_DONE_FLAG | In Progress | 2021-04-20 |
Commits (311)
Fix previous commit (r459202) which introduced dependencies that specify an optional make target. The patch file contained 2 typoes ("{$" instead of "${").
Add clean phase for dependencies that are not installed but required when
the dependent port is built (e.g. because of references to source files of
that port, or because of static linking against libraries in the stage area
of such a dependency).
Approved by: antoine (implicit)ba1f4c6e0bAdd support for dependencies specified with a non-standard make target. This is required for e.g. net/openntpd, which links against static libressl libraries in that port's staging area. In case of a port that is not fully installed, there is no clean phase for the dependency's port directory. The dependency tracking does not maintain the necessary state to perform this cleanup when the depending port is finished. PR: 213887 Reported by: blackmore@pichove.org (Simeon Simeonov) Approved by: antoine (implicit)06c8fff860
Test privileges early and complain if privileges are insufficient. The patch is based on ideas presented in the PR, but implemented differently. Re-open the PR, if this solution has unexpected side-effects or proves insufficient. PR: 174729 Reported by: ngie Approved by: antoine (implicit)16ccc729a8
Update to version 3.19, which is identical to 3.18_12 with all port patches applied. Approved by: antoine (implicit)e98261f04c
Fix display of license acceptance menu if build logs are hidden with -H. PR: 206738 Reported by: torsten.eichstaedt@web.de Approved by: antoine (implicit)8aa3f3c610
Fix problem with ports being converted from a non-flavored to a flavored version, if PYTHON3_DEFAULT is set to anything but 3.6. Since the MOVED file sets the new origin and flavor such that a Python-3.6 compatible package is built, the original Python version for this port is ignored. Reported by: lev Approved by: antoine (implicit)0760c3485f
Small fix for directory accesses in find_dl_distfiles, which did not take the optional flavor part of the passed argument into consideration. Approved by: antoine (implicit)1b59f47ce0
Generally path FLAVOR via the environment, not the "make" command line, to circumvent a check for an empty FLAVOR parameter being passed to certain ports. Reported by: Walter Schwarzenfeld <w.schwarzenfeld@utanet.at> Approved by: antoine (implicit)590891ba8e
Fix version number ... I have to remember to manually fix-up this string before each commit and I'll whether I can create a pre-commit script that checks this for me. Reported by: Walter Schwarzenfeld <w.schwarzenfeld@utanet.at> Approved by: antoine (implicit)d99781ac9c
Remove spurious trace output left over from debugging. Reported by: Walter Schwarzenfeld <w.schwarzenfeld@utanet.at> Approved by: antoine (implicit)8d0f0436f2
Fix pm_islocked function, which could lead to a spurious error message if used for a port that is not found in the package database. Reported by: Tatsuki Makino <tatsuki_makino@hotmail.com> Approved by: antoine (implicit)910a40dd86
Add undocumented option --package-format=<fmt>. I'm not sure, that this is a useful feature, and the txz-format is currently hard-wired in a lot of places in portmaster, but there has been a request to allow creation of packages in a non-standard archive format. Approved by: antoine (implicit)b47f5eb864
Fix package name: the pattern that gets replaced with the actual version string at build time had been replaced by a version string from a test version. Reported by: herbert@gojira.at (Herbert J. Skuhra) Approved by: antoine (implicit)dc24a9071d
Increment PORTREVISION, forgotten in previous commit. Approved by: antoine (implicit)e74eb8af18
Add --backup-format=<fmt> option to allow faster creation of package backups with no or less compression than the default of "txz" provides. Support for different archive format for packages in general could be provided, but not added at this time, since I'm not convinced that this would be a useful feature (please let me know, if you disagree ...). Approved by: antoine (implicit)177c5fb794
---------------------------------------------------------------------------- Fix spelling of OPTIONS_FILE. Approved by: antoine (implicit)05fc103eac
Bump PORT_REVISION, forgotten in previous commit. Approved by: antoine (implicit)1525eb96a8
Fix regression in kill_bad_children: add missing $ before progcmd ... Approved by: antoine (implicit)81e1fde0e0
Fix installation from local or remote package including the --packages-build case. Partially based on patches supplied by Alexander Leidinger. Reported by: phk, netchild Approved by: antoine (implicit)2327d5967a
Add PKG_DEPENDS, EXTRACT_DEPENDS, PATCH_DEPENDS and FETCH_DEPENDS to the make_dep_list function when called with parameter build-depends-list or all-depends-list. Reported by: phk Approved by: antoine (implicit)1e72c927a7
Remove useless MASTER_SITES entriesb1b7d0d33d
Update to version 3.18, which already contains all patches required for the previous version. Approved by: antoine (implicit)5d83816bc6
Patch package version into the port and install man-page with patched path for non-standard LOCALBASE. The port used to patch the man-page, but then installed the unpatched version. Approved by: antoine (implicit)aa82bf23b9
Fix execution of portmaster in a port directory without any port or package parameters. Reported by: lenzi.sergio@gmail.com Approved by: antoine (implicit)d0a5a6f380
Add flavor support to routines that convert port origins to shell variable names. The character '@' is illegal in such names and must be converted to a legal character same as [-+./]. remobve post processing of "pkg check -dn" output, which was a left-over from pre-PKG_NG times. Reported by: koobs (invalid @), tatsuki_makino@hotmail.com (pkg check) Approved by: antoine (implicit)6d8a3ed3c9
Add back local package installation support, which was disabled for PKG_NG. The patch attached to PR 181450 did no longer apply cleanly, therefore I edited portmaster to follow the intent and in part the letter of the patch. This patch should not affect port building in any way. I have no use for the feature (and I'm still considering to completely remove support for the installation of packages i PR: 181450 Submitted by: rozhuk.im@gmail.com Approved by: antoine (implicit)9d15f65803
Add all-depends-list case required for portmaster -t. Approved by: antoine (implicit)f3376fc92a
Remove stray double-quote character left from an incomplete edit of that line (result of directly editing the patch for a trivial change ...) Approved by: antoine (implicit)3a223ed53d
Add LIB_DEPENDS to dependencies relevant for installation of a package. Approved by: antoine (implicit)134638cb8f
Add support for ports that have been upgraded with a change of both origin and package name (sans version), as was the case for e.g. the lang/cython3 port, which was moved to lang/cython@py36 with a package name change from cython3-$version to py36-cython-$version. Approved by: antoine (implicit)0020f526a7
Fix query for package to be replaced: This could lead to a wrong package being identified and replaced when the new package is installed. Add library dependencies to the list of build dependencies to consider. Reported by: Robert Huff Approved by: antoine (implicit)29314a7c31
USe correct origin in multiport case (several packages specified on the command line, which is different from passing "-a"). Reported by: Robert Huff Approved by: antoine (implicit)f87a111e76
Add another check for a flavor passed attached to the port directory. Without this fix, the default flavor was built in specific situations. Approved by: antoine (implicit)c934c7e3e4
Fix patch: The patch had been created from the version used to debug the previous version's problem and I forgot to Fix shbang: Remove the -x that had been added for debugging. Reported by: (Walter Schwarzenfeld) w.schwarzenfeld@utanet.at Approved by: antoine (implicit)df010168c9
Fix regression: The find_new_port function is now invoked from an earlier place than before flavor support was added. Move its definition to an appropriate place. Silence one pkq query command that may be called for a non-existing package name. Approved by: antoine (implicit) Reported by: Milan Obuch, Paul Beard912a5ef5ef
Add flavor support to portmaster. This version has been lightly tested and supports upgrades from non-flavored port versions based on the information in the MOVED file. For initial installations of flavored ports, the flavor must be specified as part of the port origin, e.g. "devel/py-py@py36" for the Python-3.6 version of that port. Dependent ports will automatically be installed with the correct flavor passed via the dependency mechanism. It is planned to add a --flavor option to ease flavor selection for ports that are initially installed with portmaster. Approved by: antoine (implicit)606a3cac9d
ports-mgmt/portmaster: Pass maintainer-ship to se@ Stefan will continue to maintain portmaster.b27126764f
- Update to 3.17.10 Fixes --clean-distfiles trying to read in base/ [1] Saves port failures to TMPDIR/portmasterfail.txt [2] PR: 212376 [1] Reported by: wblock [1] Tested by: wblock [1] Submitted by: Torsten Zühlsdorff <t.zuehlsdorff@anymotion.de> [2]99b5ee1ef7
Fix "portmaster --check-port-dbdir" broken by the previous commit. While the variable $unique_list was created with identical content, its value was only set within the implicit sub-shell (2nd command in a pipe) and lost on exit from the while loop. Reported by: Jakub Laach4af2489d71
Bump PORTREVISION to have portmaster be re-installed with the fix commited as SVN rev. 418619. Reported by: Herbert J. Skuhra (herbert at mailbox.org)2571fabfb8
A read lock on the sqlite file used by pkg can lock out writers for indefinite amounts of time, preventing installation or upgrade of ports with portmaster. Instead of using a pipe to read pkg query input to be consumed by a shell loop, buffer the query result in a shell variable and let the loop iterate over the contents of this variable. While here, use a call to all_pkgs_by_origin() instead of an inline versin of equivalent code. Reviewed by: tz Approved by: tz2ef23fbf21
Change MAINTAINER from ports@toco-domains.de to tz@FreeBSD.org Approved by: junovitch (mentor)fa23faa40b
Enable BASH and ZSH options (install their completions) by default. Also, add NO_ARCH. PORTREVISION bump for pkg change. PR: 207075 Submitted by: maintainer591a0e0dea
Remove unneeded dependencies on bash and zsh. With hat: portmgr Sponsored by: Absolight7176f4d377
ports-mgmt/portmaster: Assign maintainership to Torsten Z. Torsten has accepted the challenge of whipping portmaster back into shape. In addition to changing MAINTAINER, he's starting with fixing both non-default options by providing their necessary RUN_DEPENDS. PR: 207075182f4324d8
Update to 3.17.9 Changes: - Update manpage for rebuilding ports with pkg. PR: 191166 Submitted by: wblock57212eed10
Under strong objection and mandate by portmgr, remove DEPRECATION I've been ordered by portmgr to remove DEPRECATION designation because others have indicated they believe people should not be so directly informed of its poor state. Despite the fact that there was no expiration date set and that functionality was not affected in any way (leaving now informed people free to use this unmaintained port), it was considered a disruptive change. Let the record show that I strongly object to this decision and that I firmly believe that portmaster is a port that *must* have a competent maintainer that can *develop* it. It should *not* be allowed to be unmaintained and still maintain a presence in FreeBSD documentation.aab1d74bf2
ports-mgmt/portmaster: DEPRECATE without expiration date The portmaster script hasn't had an official maintainer in 9 months and 2 years before that it was only patched in reaction to changes in the ports framework. There are many unclaimed PRs in the bugzilla database, many known bugs, and several areas where portmaster no longer aligns with how ports work today. The problem isn't simply getting a maintainer; that person has to be a ports framework expert and it appears that the people with these qualifications don't want anything to do with this port. Moreover, there are better options available. All FreeBSD platforms support ports-mgmt/poudriere (although some many struggle under the load) and the most common amd64 and i386 platform users have the additional option of ports-mgmt/synth which is user-friendly, lightweight, and aimed at users of portmaster, portupgrade, and even poudriere. Unless something drastic regarding portmaster occurs, it's nearing its natural EOL, so it's users should evaluate alternatives and try to migrate off of it.f701ed6ee3
Remove obsolete pkg-message1bd2cfa7b7