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
Port details
portmaster Manage your ports without external databases or languages
1.12 sysutils Deleted on this many watch lists=3 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.12Version of this port present on the latest quarterly branch.
Maintainer: dougb@FreeBSD.org search for ports maintained by this maintainer
Port Added: 2006-02-20 23:29:42
Last Update: 2007-02-05 01:08:46
SVN Revision: UNKNOWN
People watching this port, also watch:: zip, bash, unzip
License: not specified in port
WWW:
http://dougbarton.us/portmaster.html
Description:
This script uses the existing ports infrastructure to track dependencies, and to keep those dependencies up to date. Because it is written in /bin/sh, it needs no other languages installed. Portmaster has the following features: * User can specify the port to upgrade (or install) either by directory in /usr/ports, or by directory in /var/db/pkg * Updates and repairs (as needed) entries for dependencies in both +CONTENTS and +REQUIRED_BY files for both the port that is being updated, and any ports that depend on it * Runs make config recursively through all ports before starting build * Recursively checks and upgrades (or installs) all dependencies * User can force upgrades of all dependent ports * Runs make clean before starting the build (can be disabled) * Offers the user the opportunity to delete stale distfiles * Supports /usr/ports/MOVED * Supports non-default settings of PORTSDIR and PKG_DBDIR * Interactive update mode (prompts for each update) * Option to rebuild port, and ports that depend on it * Options to make packages out of installed, and new ports * Option to clean out stale port dependencies * Downloads distfiles in the background WWW: http://dougbarton.us/portmaster.html
Homepage    cgit ¦ GitHub ¦ GitHub ¦ GitLab ¦ SVNWeb - no subversion history for this port

Manual pages:
FreshPorts has no man page information for this port.
pkg-plist: as obtained via: make generate-plist
There is no configure plist information for this port.
Dependency lines:
  • portmaster>0:sysutils/portmaster
No installation instructions:
This port has been deleted.
PKGNAME: portmaster
Flavors: there is no flavor information for this port.
distinfo:
There is no distinfo for this port.

No package information for this port in our database
Sometimes this happens. Not all ports have packages. Perhaps there is a build error. Check the fallout link: pkg-fallout
This port has no dependencies.
There are no ports dependent upon this port

Configuration Options:
No options to configure
Options name:
N/A
FreshPorts was unable to extract/find any pkg message
Master Sites:
Expand this list (1 items)
Collapse this list.
  1. ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/
Collapse this list.

Number of commits found: 25

Commit History - (may be incomplete: for full details, see links to repositories near top of page)
CommitCreditsLog message
1.12
05 Feb 2007 01:08:46
Original commit files touched by this commit
pav search for other commits by this committer
Populate a new ports-mgmt category. List of moved ports:

  devel/portcheckout -> ports-mgmt/portcheckout
  devel/portlint -> ports-mgmt/portlint
  devel/portmk -> ports-mgmt/portmk
  devel/porttools -> ports-mgmt/porttools
  misc/instant-tinderbox -> ports-mgmt/instant-tinderbox
  misc/porteasy -> ports-mgmt/porteasy
  misc/portell -> ports-mgmt/portell
  misc/portless -> ports-mgmt/portless
  misc/tinderbox -> ports-mgmt/tinderbox
  security/jailaudit -> ports-mgmt/jailaudit
  security/portaudit -> ports-mgmt/portaudit
  security/portaudit-db -> ports-mgmt/portaudit-db
  security/vulnerability-test-port -> ports-mgmt/vulnerability-test-port
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.12
09 Jan 2007 22:08:45
Original commit files touched by this commit
dougb search for other commits by this committer
Update for version 1.12
1.11
09 Jan 2007 22:07:34
Original commit files touched by this commit
dougb search for other commits by this committer
New Features
============
1. Add -t mode to "thoroughly" recurse dependencies, using the
all-depends-list target instead of the combination of the
build-depends-list and run-depends-list targets. This is useful
when the dependencies of a dependency need to be updated, but
the dependency itself doesn't; and -a mode is impractical for
whatever reason.
2. If pkg_create fails, give the user the option of how to handle
it: fail, or ignore the error.

Improvements
============
1. If we are trying to delete distfiles, but a dist subdir has
gone missing, assume that the files are safely deleted (and
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.11
13 Dec 2006 18:32:44
Original commit files touched by this commit
dougb search for other commits by this committer
Argh! Remove a debugging line.
1.10
13 Dec 2006 11:12:27
Original commit files touched by this commit
dougb search for other commits by this committer
Update for version 1.10
1.9
13 Dec 2006 11:12:06
Original commit files touched by this commit
dougb search for other commits by this committer
New Features
============
1. Attempt to avoid the problem of multiple background checksum
processes stepping on each other trying to download the same sets of
distfiles. The most pathological case for this is trying to portmaster
the xorg port on a clean box with no distfiles downloaded. (Brought to
my attention by George Hartzell <hartzell@alerce.com>.)

2. In cooperation with sem and skv, add three new environment
variables that can potentially be used by port authors, etc.
UPGRADE_TOOL contains the name of the tool being used, in this case
'portmaster'. UPGRADE_PORT is the full string for the port that we are
currently upgrading, and UPGRADE_PORT_VER is just the version string
part of that.
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.9
06 Oct 2006 21:51:15
Original commit files touched by this commit
dougb search for other commits by this committer
Update for new version 1.9
1.8
06 Oct 2006 21:50:30
Original commit files touched by this commit
dougb search for other commits by this committer
New Features:
=============
1. You can now specify multiple ports to upgrade on the command line,
such as 'portmaster foo-1.23 bar-4.56 baz-7.98'. [1] Pass -n argument
to child processes (as needed) to handle this case.
2. Handle an alternate port that can satisfy a build requirement by
reading the CONFLICTS for the "standard" port, and seeing if we have
one of those installed. [1]
3. Unless the user specifies the new -B option, always build a backup
package when updating an existing port. Unless the user has specified
the -b option, delete the package on successful installation of the
new port, or print a helpful message telling the user where they can
find the package if install fails.
4. Don't only test a port for IGNORE, also test FORBIDDEN and BROKEN
to avoid doing a lot of work on dependencies for a port that we aren't
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.8
23 Aug 2006 05:46:15
Original commit files touched by this commit
dougb search for other commits by this committer
Update for version 1.8
1.7
23 Aug 2006 05:45:44
Original commit files touched by this commit
dougb search for other commits by this committer
New Feature
===========
If a port is marked IGNORE, don't do all the dependency/checksum work,
instead bomb out with a helpful message

Minor Fixes
===========
1. Add some whitespace to make the "dependency check complete" message
stand out better
2. Tell the user when we start pkg_delete in -s mode, just like in -e

Bug Fixes
=========
1. Export MAKE_ARGS so that the child checksum processes can see them
2. Move the "just in case" cd back to $portdir up one line so it's
before 'make clean', just in case
1.7
12 Aug 2006 09:05:46
Original commit files touched by this commit
dougb search for other commits by this committer
Update for new version 1.7
1.6
12 Aug 2006 09:04:48
Original commit files touched by this commit
dougb search for other commits by this committer
Update for new expunge feature in 1.7, and generally improve markup
1.6
12 Aug 2006 09:04:03
Original commit files touched by this commit
dougb search for other commits by this committer
New Features
============
1. -e mode to expunge a port via pkg_delete, and optionally
remove its distfiles
2. -s and -e modes now respect -b (backup) and -d|D options
regarding always deleting (or not deleting) distfiles

General
=======
1. Re-factor more code out into functions, and move them earlier in the
script so that they are available to the new features.
2. Clean up the code in a few places to make it slightly more efficient,
and a lot more readable.

Bug Fixes
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.6
07 Aug 2006 19:13:42
Original commit files touched by this commit
dougb search for other commits by this committer
Update for version 1.6.
1.5
07 Aug 2006 19:13:20
Original commit files touched by this commit
dougb search for other commits by this committer
New Features
============
1. -L mode to list all installed ports, and search for updates.
2. Trap SIGINT, and use the opportunity to reap all the child processes
we can find.
3. Warn the user during config mode if a port sets IS_INTERACTIVE
4. Support +IGNOREME files in /var/db/pkg/<portname>, ala portupgrade
5. Store the results of the user's choices for -i during config, so they
don't have to enter it again during build
6. When deleting stale distfiles, recurse through successively shorter
versions of file-name-* till we find something to delete, or run out
of dashes. This means a lot fewer false positives, although the
algorithm is still aggressive.

Performance Optimizations
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.5
19 Jun 2006 18:36:10
Original commit files touched by this commit
dougb search for other commits by this committer
Upgrade to 1.5, which fixes a small braino in the new code to
delete distfiles for old ports with the -o option, or that have
been moved.
1.4
19 Jun 2006 18:19:55
Original commit files touched by this commit
dougb search for other commits by this committer
Update for version 1.4
1.4
19 Jun 2006 18:14:45
Original commit files touched by this commit
dougb search for other commits by this committer
Bump to 1.4 for new version
1.3
19 Jun 2006 18:13:41
Original commit files touched by this commit
dougb search for other commits by this committer
New features:
=============
1. Add -b option to make a backup package of the installed port
2. Add -g option to make a package of the new port
3. Add -o option to replace an installed port with a new port from a
different location (e.g., portmaster -o emulators/linux_base-fc4 linux_base)
The second argument can also be specified as the name of the installed port
(e.g., linux_base-8-8.0_15)
4. Add -s option to detect no-longer-needed dependencies, and offer the user
a choice to delete them.

General improvements:
=====================
1. Update usage() to reflect reality, and organize it better
2. Switch to using DEPORIGIN to detect missing dependency tracking, which
(Only the first 15 lines of the commit message are shown above View all of this commit message)
1.3
29 May 2006 10:12:31
Original commit files touched by this commit
dougb search for other commits by this committer
Vastly improve handling of moved ports:
1. Update DEPORIGIN in addition to @pkgdep entries in +CONTENTS
2. Give more details about why a port moved
3. grep for the old port name in existing +CONTENTS files, since the
new name will not appear at all

Also, stretch the window to wait for a background 'make checksum' to
complete to 5 seconds instead of 3
1.3
29 May 2006 10:11:42
Original commit files touched by this commit
dougb search for other commits by this committer
Vastly improve handling of moved ports:
1. Update DEPORIGIN in addition to @pkgdep entries in +CONTENTS
2. Give more details about why a port moved
3. grep for the old port name in existing +CONTENTS files, since the
new name will not appear at all

Also, stretch the window to wait for a background 'make checksum' to
complete to 5 seconds instead of 3
1.2
20 May 2006 06:28:40
Original commit files touched by this commit
dougb search for other commits by this committer
Bump the version number of the port for the new version of the script
1.1
20 May 2006 06:25:56
Original commit files touched by this commit
dougb search for other commits by this committer
1. Implemented recursive 'make config' at the beginning of the run, so it's
easier to leave it running unattended for large updates. (This can be
toggled off.)
2. Implemented a completely unattended mode which accepts the defaults for
all portmaster dialogues. (Note, this does not help with ports that have
interaction other than 'make config', such as ghostscript, etc.)
3. Added -u to sort(1) calls to try and address a bug report about duplicate
lines in +REQUIRED_BY files. I was not able to reproduce this bug, but
better safe than sorry.
4. Verbose mode is now slightly more informative about what's happening.
5. More common code factored out into functions.
6. The -n flag now cancels the build of the port called on the command line too.
7. Improved (?) the stale distfile deletion routine to better handle ports
that have multiple distfiles.
8. We now launch 'make checksum' (which performs a fetch if needed) in the
background while recursing through dependencies.
9. Various code cleanups, such as adding -t to a mktemp invocation that was
missing it, more local variables in functions, more consistent flag variable
values, etc.
1.1
21 Feb 2006 04:05:41
Original commit files touched by this commit
dougb search for other commits by this committer
Improve the description, and add a WWW link.
1.1
20 Feb 2006 23:29:03
Original commit files touched by this commit
dougb search for other commits by this committer
Add my portmaster utility. This is a shell script to manage ports
that does not require external databases or languages.

Number of commits found: 25