better, it works better in opera, it provides a slightly better usability and
it's more FreeBSDish
- fetch all DISTFILES from my server for simplicity
- bump PORTREVISION for plist changes
Prompted by: miwi@'s tindy :-)
Implement a "visual" mode, where the user is given the complete list of leaf
packages inside his editor. He can then remove packages by removing the lines in
the file, save and exit. The now missing packages will then be removed.
PR: 121910
Submitted by: Ulrich Spoerlein <uspoerlein@gmail.com>
* Use the actual Makefile when checking for pre-defined sites. This allows
us to catch things that rely on port variables. [1]
* USE_GETOPT_LONG is now obsolete, and should not be suggested. [2]
* Check for cases where X_DEPENDS = ${Y_DEPENDS} which can result in adding
unwanted dependencies.
PR: 121664 [1]
Suggested by: pav [2]
==================
The previous code tried to handle moved ports in much the same way
as it handled replacing a port with the -o option, but this would
sometimes create problems if we are deep in a dependency graph.
So rather than re-implement only a portion of the -o code, use the
whole thing instead.
We accomplish this by either exec'ing ourselves with the proper -o
options if we are in the dependency tree, or by asking the user to
restart with the proper -o options if they specified the moved port
on the command line. The latter is necessary to avoid having to
duplicate all the "initialize the parent process" code. This allows
me to simplify the code in a few places since -o is now the only
special case.
Bug Fixes
=========
1. Don't try to derive $portdir from $upg_port if using -o
2. Don't try to build a port with an +IGNOREME file if we are doing
the dependent ports in -r mode
Minor tweak: Add some whitespace after a warning message
your ports, I had:
pkg_delete *
which works for me because of a local bash completion, but doesn't
work for most users. So, correct that to be:
pkg_delete '*'
instead.
* Change a legacy part of code for gathering dependecies. It fixes
situation when some depends ports could be updated even when it
was up-to-date. As a result I added another check for -R option.
* Fix a wrong condition in portsclean. Now -L option works again.
* Change a semantic for -q option. Now it means 'quiet'. Don't
show a message when -N specified and there is an already installed
package. (Made for DesktopBSD).
Reported by: pav, Peter Hofer (DesktopBSD)
- Just ignore a package if there is no port directory exists. A correct way
for users is to place the ports in HOLD_PKGS in pkgtools,conf, but
they did not. So it makes my life a little easy.
* Many bugs fixed (thanks to all reporters).
* Semantic for -c and -C has changed. -c runs 'make config-conditional'
and -C 'make config' (forced config).
* All ports now runs under portupgrade/portinstall control.
a. If you specify a glob pattern in /var/db/pkg, there will always
be a prompt, even with the -u flag.
b. Try to discourage people from using -u, it doesn't seem to do what
people expect it to do.
c. You cannot upgrade sudo with PM_SU_CMD if sudo is your PM_SU_CMD
2. s/Dq/Qq/
3. Add .Ev tags to environment variables
- When in task list is a port with IGNORE, portupgrade fails. Just ignore it now.
Reported by: Gerard <gerard@seibercom.net>,
Matthew Seaman <m.seaman@infracaninophile.co.uk>
* many bug fixes
* now all dependencies run under portupgrade control
* run 'make config-conditional' and 'make config' with -c and -C options
PR: ports/116830, ports/115249
Reported by: clemens fischer <ino-news@spotteswoode.dnsalias.org>,
KOMATSU Shinichiro <koma2@lovepeers.org>,
and other
ports knobs and options by listing them together with their
status (either enabled or not). It uses portconf for knobs.
PR: ports/116127
Submitted by: Gabriel Linder <linder.gabriel at gmail.com>
in several cases totally rewritten. I am also glad to say that
all of the advertised features now work as advertised. :)
The most exciting new feature is the completely new dependency
updater. I finally took the time to write the line-oriented version
of update_contents() that I wanted to write in the first place, so
no more sed, and no more warnings sent to $PAGER. This version relies
entirely on exact matches to DEPORIGIN to do its work, so it's 100%
reliable.
So what else is new? A lot of micro-optimizations have been done to
eliminate duplicated work, avoid using external commands when not
necessary, etc. There are also some not-so-micro optimizations, which
means that this version is noticably faster.
Totally new features:
1. --check-depends, which as described above calls the new functions
to parse existing +CONTENTS files for dependency data, uses that data
to update +REQUIRED_BY, and updates the +CONTENTS files. These same
routines are also used for updating ports.
2. A "fetch only" feature (-F) that will go get distfiles for new
versions of installed ports by default, and can also be used to get
the files for all of your installed ports, or certain branches by
using the -aft options.
3. An option to hide the build and install process by saving it to a
log (-H). These logs are deleted on successful install, and saved if
the update process aborts.
4. We now keep track of all the ports that get updated or installed in
a given invocation, and print the list at the very end of the process.
5. There is now a little "map" to show you where you are in the
process of the form "parent >> child >> grandchild >> etc."
6. Support for running as an unprivileged user (via sudo) has been
added. See the man page for details on how to configure this.
Improved features:
1. When showing the pkg-message/+DISPLAY files at the end of the
process, all files are grouped together and spit out to $PAGER (or
just cat if -u). If there is an error, there is a pause first
(unless -u).
2. There is now much more sanity checking on user input so that we can
bail out early if there is a problem.
3. The error messages have been completely re-done to be more
informative, and many of them include helpful suggestions on how to
fix the problems.
4. In the expunge (-e) feature, if there is dependency data for the
port you want to delete we now offer you the chance to delete that
instead of just aborting. (Use at your own risk!)
5. The "save old shared libs" feature (-w) is now a lot more
efficient, only runs ldconfig when it has to, and uses
/etc/rc.d/ldconfig.
6. The /var/db/pkg/*/+IGNOREME file now has more functions associated
with it. See the man page for details.
7. When using the -L feature, there is a warning printed if the port
has been set to FORBIDDEN, DEPRECATED, BROKEN, or IGNORE.
8. If you have a real /usr/X11R6 directory (not a symlink) this is
added to the PATH. Otherwise it's assumed that LOCALBASE == X11BASE.
9. Backup packages of existing ports are now saved to
/usr/ports/packages/portmaster-backup, and left there if -b is used.
This way you can create backup packages of a port without disturbing
existing packages with the same version.
There are numerous other things that are not user-visible which have
been cleaned, polished, made more efficient, etc.
with system ones. portsclean -Li ask to remove them. No removes by
default, but we don't want an user remove system libraries just press 'y'
in portscleanup -Li.
PR: ports/116830
Reported by: clemens fischer <ino-news at spotteswoode.dnsalias.org>
package and lets you decide for each one if you want to keep it or delete it.
It also allows viewing the pacakge comment and description.
This program is essentially a clone of pkg_rmleaves except that it shows
the comment and description of packages and does not support GUI dialog(1)
implementations.
PR: ports/117782
Submitted by: Stephen Hurd <shurd@sasktel.net>
* Add support for FreeBSD 8.X.
* Fix a database query bug.
* Ensure the .env files are properly read and export when building the Makefile and database entries.
* Use the C locale when calculating build times.
* Do not die if a Build's log directory is missing when running tbcleanup.
This release comes with a rawenv change, so make sure you copy rawenv.dist to rawenv to get the latest variables.
PR: 118854
Submitted by: miwi
Approved by: itetcu (maintainer timeout)
- Remove support for FreeBSD older than 4.11 and 5.3.
- Remove conditional dependency on bzip2 which I can't really see how
could be activated automatically.
Reported by: "J. Martin Petersen" <jmp@alvorlig.dk> [1]
PR: ports/117845 [1]
With hat: maintainer / secteam
* Allow the @stopdaemon plist directive. [1]
* Fix a typo when checking for proper use of DOCSDIR. [2]
* USE_JAVA is okay to use after including bsd.port.pre.mk. [3]
* Properly check for extra items in the PATCH_SITES section. [4]
* Replace all instances of "IFF" with "If and only if" to be clearer for
non-English speaking, non-math geeks. [5]
PR: 116907 [3]
116698 [4]
116218 [5]
Reported by: rafan [1]
Submitted by: lwhsu [2]