release again. (Hopefully)
portupgrade:
Delete an unneeded exception snatcher. This fixes a bug where ports
marked as IGNORE are not properly skipped.
pkgdb:
Rebuild pkgdb if it looks like broken, instead of resulting in
failure.
Unbreak regexp match. ;)
Fix a typo of a variable name in an error message.
[Reported by: Stijn Hoop <stijn@win.tue.nl>]
portsdb:
Allow a port dir to be a symlink to a directory.
Add support for the case where some catetories are missing in a
ports tree.
[Submitted by: Jos Backus <josb@cncdsl.com>]
pkgdb:
Fix a type error and unbreak date-based pkg glob.
[Reported by: Ollivier Robert <roberto@keltia.freenix.fr>]
portupgrade:
Silence pkg_info when it does not find a package.
[Submitted by: Jimmy Olgeni <olgeni@uli.it>]
pkgdb:
Make pkgdb fixer's dependency guesser aware of language specific
categories. Now it suggests ja-qt-2.3.1 instead of qt-1.45_1 for
a missing qt-2.3.1.
Do not fail over a package entry that has no +COMMENT file, like an
XFree86 package entry faked by the FreeBSD installer.
[Reported by: Ollivier Robert <roberto@eurocontrol.fr>]
portsdb:
Do not allow specifying a ports glob using a relative path to the
current directory. This prevents the tools from confusing when the
current directory is under PORTS_DIR.
Give a better progress display.
many bugfixes. Check out http://www.exploits.org/nut/release/new-0.45.1.txt
for more details. Highlights include experimental USB support, and the
various programs dropping more privileges after startup.
* Clean up the Makefile a little by grouping more of the CGI-dependent
stuff together. Improve the pkg-plist in this regard as well. Make a
directory and install a conf file sample that the software Makefile's
are missing for some reason.
* Make the cgi directory depend on one of the previously
discussed plans to use PREFIX/www/cgi-bin if it exists already, and
PREFIX/share/apache if not.
create a new database for the very first time. (Run "pkgdb -fu" if you have
20011006 installed)
Fix MAN1 entries.
Remove old database pkgdb.byfile.db on installation.
(new database is named pkgdb.db)
Beware, there can probably be some bugs left in the new pkgdb code.
In such a case please run "pkgdb -fu" to fix the situation.
overall:
Utilize pkgdb better and optimize.
portupgrade:
Do not scan packages all at once when -P is given, but find one per
request. [Requested by: Hideaki OKADA <hokada@isl.melco.co.jp>]
Create a backup package record in tmpdir instead of pkgdbdir, in
order not to update pkgdbdir's mtime.
Rephrase/add messages.
portinstall:
Commit major changes and improvements over portinstall.
Now it warns and asks the user for confirmation if a port is being
installed when a package of the same origin is already installed.
Upgrade all the required packages before installing a new port.
[Requested by: Hajimu UMEMOTO <ume@mahoroba.org>]
Do not install ports immediately but queue them up, then install
them after upgrading all the specified and required packages.
pkgdb:
Record pkgname <=> origin mapping in the pkgdb and make full use of
it instead of repeatedly calling pkg_info -o which has undesirable
overheads.
Make portupgrade, pkg_deinstall update the pkgdb after they
install/deinstall packages or modify package records.
Integrate pkgdepfix(1) within. (pkgdb -F/--fix)
Add -o/--origin, which looks up an origin of a package in pkgdb.
Detect added/deleted/reinstalled packages more strictly so pkgdb can
keep being sane and consistent.
Do not fail over a small conflict found during updating pkgdb;
portupgrade should not be aborted by such a minor problem.
pkgdepfix:
Obsolete -o and turn -o on by default. Now we can look up an origin
of a package so quickly thanks to the pkgdb.
Integrate into pkgdb(1). (pkgdb -F/--fix)
portsdb:
A date spec is not a valid ports glob; emit a warning if specified.
[Found by: Hajimu UMEMOTO <ume@mahoroba.org>]
and that on www.idaemons.org didn't match. They are identical in the
uncompressed form but I think I compressed one with -9 and another
with -6 somehow. Thereby list the MD5 checksums of both in pkg-plist
as a workaround.
The one on ftp.FreeBSD.org will be overwritten by the one on
www.idaemons.org soon.
Submitted by: John Merryweather Cooper <john_m_cooper@yahoo.com>
Correct format arguments for unsigned long longs;
In printf, use %llu
In sscanf, use %qu
These were both previously using %Ld...
This fixes generation of DVDs >4Gb in size.
overall:
- Implement new package glob patterns: {<|<=|>=|>}{date|pkgname_glob}.
For example, you can rebuild and reinstall all the dependent
packages of png that had been installed prior to png this way:
portupgrade -fr png -x '>=png'
- Introduce the packages database, which is currently a simple hash
that maps file paths to package names.
Inspired by: NetBSD
pkgdb(1): (new)
- A command to create/update the packages database.
pkg_which(1): (new)
- A command to check which package a file came from quickly.
portsclean(1):
- Suppress "can't cd" error messages.
Submitted by: Jos Backus <josb@cncdsl.com>
ports_glob(1): (new)
- Give portsdb(1)'s ports glob expanding feature a suitable name.
overall:
- Work around pkg_info(1)'s "feature" where it gets info from
package files under the packages directory prior to installed
packages.
[Reported by: kuwa@flab.fujitsu.co.jp]
portupgrade:
- Skip ports that are marked as IGNORE.
[Requested by: Jimmy Olgeni <olgeni@uli.it>]
portsdb:
- Stop specifying -j# when making a ports index to avoid outputting
a buggy INDEX.
portsclean:
- Do not assume a distinfo file is in each port's own directory, and
use `make -V MD5_FILE', in order to support master-slave ports
properly.
Now that RUBY_ARCH has been changed not to include a minor version of
the system, you no longer need to have ruby_s in order to cope with
the migration problem with a minor system upgrade like 4.3 -> 4.4.
You will need ruby_static only if you are going to do a major upgrade
of your system like 4.3 -> 5.0.
Logmon will monitor one or more log files, updating when more data is
available ala 'tail -f' , within a common terminal window via a "split window".
User can scroll up/down/left/right through all the windows.
PR: 30516
Submitted by: Gea-Suan Lin <gslin@infomath.math.nctu.edu.tw>
portupgrade:
- Support the environment variable PKG_PATH which is supported by
pkg_add(1).
- Try to fetch the latest version of a package if the exactly
same version as the port is not found in the package site.
portupgrade:
- Add a new option -b/--backup-packages, which keeps backup packages
of the old versions'.
Requested by: mistral@imasy.or.jp (Yoshihiko SARUMARU)
pkg_fetch:
- Accept a full URI as well.
- Do not try both All and Latest; now one must put an @ at the end
of a package name if one wants to omit the version part.
("cyrus-sasl@", etc.)
- Obsolete the PACKAGEBASE environment variable.
- If -f is specified, remove existing packages if they are corrupt.
- Do not depend on the ports database.
portsclean:
- Fix the command line help regarding -D and -DD.
Submitted by: Jimmy Olgeni <olgeni@uli.it>
compdefs:
- Fix stupid bugs in the zsh compdefs.
overall:
- Allow using regexp in a glob pattern on the spot, by just putting a
regexp preceded by a colon (:).
- Thereby deprecate -E/--regex, which is evil because it changes the
global status. (but the option is still kept for compatibility)
portupgrade:
- Return correct exit status.
[Reported by: Trevin Chow <trevin@mail.com>]
portinstall:
- Read the env variable PORTUPGRADE. (it read PORTINSTALL previously)
pkg_fetch:
- Be even more smart in deciding which to try first, All or Latest.
o maintainer switched over maintainership to originator due to
school duties (thanks and we hope you will bring more ports :)
Submitted by: Patrick Li <pat@databits.net>
Approved by: MAINTAINER (previous)
but which I could not repeat on FreeBSD. It may still be a problem, but
it looks like screen was already dropping privilege before the operation
in question.
Submitted by: Roman Drahtmueller <draht@suse.de>
changes without executing anything. Also, the config file path,
the paths to envdir and printenv and the database dir path are now
dynamically adjusted in both the manual page and the sample config file.
overall:
- Fix a bug where a glob expansion did not work as expected when in a
port direcotry.
portupgrade:
- Fix a bug where a port not listed in the INDEX failed to install
because of a dependency error.
portversion:
- Work around a feature of the option parser library where -l= is
treated as -l "". Now portversion -l= and portversion -L= will work
just as pkg_version(8) does.
portupgrade:
- Make portupgrade download packages using pkg_fetch(1) when -FP is
given. (also aware of -R, -f and -v)
pkg_fetch:
- Be more intelligent and try All and Latest in the proper order.
- Return a non-zero status value when some are failed.
- Change -r to -R, since it recurses upwards through dependencies.
Overall:
- Fix glob expansion routines not to see a "No such package is
installed" error when it is actually installed. It was broken when
I hacked them to allow rather stupid patterns.
portupgrade:
- Add a new option -M/--make-env, with which a user can specify
arguments to prepend to each make(1) command line. Any wrapper or
environment variable assignment can be prepended.
- Make -RF invoke the `fetch-recursive' target.
Suggested by: Jimmy Olgeni <olgeni@uli.it>
- Optimize the combination of make(1) targets.
Change BROKEN= warning to state that it hasn't been tested on 4.x or lower
Use programs Makefile to build and add CFLAGS+= for location of config file
Modify default install location in files/Makefile
Change default location of config file to match default ports config file in diskcheckd.c
Bump PORTREVISION
penv - 'program environment' or 'ports environment' - is a simple
utility that executes a given command after setting some environment
variables corresponding to the current directory. This makes it
much easier to keep persistent environment settings for building
the same ports over and over again.
For example, the following series of commands:
$ echo cp1251 > /var/db/penv/databases/mysql323-server/WITH_CHARSET
$ echo all > /var/db/penv/databases/mysql323-server/WITH_XCHARSET
..allows a simple way to build the MySQL-3.23 server with the same
character set configuration every time by doing:
[root@ringworld:/usr/ports/databases/mysql323-server]# penv make
For more information, see the penv.1 manual page and the sample
configuration file in the penv distribution.
- Fix a bug where it causes an error when portsdb detects a DB_VERSION
bump.
Reported by: Ollivier Robert <roberto@eurocontrol.fr>
- Add a new option for portsdb(1): -f/--force, so you can force it to
update database regardless of timestamps.
- Bump DB_VERSION, since PkgVersion was changed a bit.
Reported by: fritz.heinrichmeyer@fernuni-hagen.de
- Add a missing argument for Dir::chdir_do().
Reported by: "Li-lun Wang (Leland Wang)" <llwang@infor.org>
pkg_fetch:
- Yet another new utility, which downloads binary packages from a
remote site. Optionally it can also download the required packages
recursively.
portupgrade:
- Do not regard "no package found" as an error when upgrading packages
with -PP.
pkgdepfix, portsclean -L:
- Fix a problem where the ruby 1.6.4 release fails in error.
Reported by: David Wolfskill <david@catwhisker.org>
portcvsweb:
- Explicitly execute a browser via /bin/sh, as the specification says.
other stuff:
- Improve the manpage and the completion definitions.
- Fix a stupid bug in the last version when generating a pkgname as a
string.
- Fix a stupid sorting bug in portsclean -L.
and some minor corrections that don't really matter.
Reported by: Jimmy Olgeni <olgeni@uli.it>
Overall:
- Support the cases where PORTREVISION == 0 and PORTEPOCH == 0.
portupgrade:
- Add a new option: -l/--log-results, which is used to save the
results as a file. [new]
- Properly exit with a non-zero status when main() does not return a
valid value. [fix]
portsclean:
- Finally implement portsclean -L/--libclean, which cleans the old
shared libraries that are not recorded in the package database. It
moves old and orphan shared libraries to ${PREFIX}/lib/compat/pkg.
[new]
- In concert with this feature, the portupgrade port now digs the
directory and installs a startup script which runs `ldconfig -m
${PREFIX}/lib/compat/pkg'. [new]
- Implement portsclean -DD, which cleans all the distfiles which are
not referenced from any port that is currently installed, which
portsclean -D only cleans the distfiles which are not referenced
from any port in the ports tree. [new]
Note that -DD runs very fast but removes more, whereas -D runs so
slow but removes less.
Idea provided by: Kris Kennaway <kris@obsecurity.org>
portsdb:
- Do not fail in the case when INDEX.db and INDEX.rbo are not in sync
somehow. [fix]
- Implement -r/--recursive. (a bit slow, though) [new]
Completions:
- Improve and update zsh compdefs.
- Add completion definitions for bash. [new]
..and several minor improvements. Enjoy!
Use MANCOMPRESSED instead of tweaking MAKE_ENV.
Remove the WRKSRC hack, I've learned to package up my stuff properly.
Change e-mail addresses and URL's to ones at ringlet.net.
maintain and improve QT/KDE on FreeBSD. This group (at this time)
consists of: demon, olgeni, kevlo, lauri@kde.org, rwatson, and will.
While I'm here, fail build of kdelibs11 if kdelibs2 is installed. This
was originally supposed to be committed with the 2.2 update, but...
Overall:
- Fix commands and libraries to run on a statically linked ruby.
- If a command fails to load dynamic modules with dynamically linked ruby,
restart itself with statically linked ruby.
This is to cope with the 4.3 -> 4.4 upgrade, since ruby's dynamic modules
are under a directory with a name including a FreeBSD version. Now
portupgrade can upgrade itself and ruby even after a major FreeBSD upgrade.
portupgrade:
- Fix a bug where portupgrade -sS 'su root -c %s' did not properly work.
[Submitted by: KOMATSU Shinichiro <koma2@jiro.c.u-tokyo.ac.jp>]
portcvsweb:
- Accept a port path as well.
portsdb:
- Adopt better error handling and a better PORTS_DBDIR selection algorithm.
- Check database errors a bit harder.
Overall:
* Fix a bug where when -R is set the specified package in the first
place is not included somehow.
[Reported by: Jose M. Alcaide <jose@we.lc.ehu.es>]
* Improve the path regularization routines.
portsdb:
* Update the INDEX first, and then the database even if the options
are specified in reversed order. (-uU)
portupgrade:
* Fix a misfeature where "skip" was regarded as failure, when checking
for dependent ports' build/install failure.
[Pointed out by: Jimmy Olgeni <olgeni@uli.it>, Jose M. Alcaide
<jose@we.lc.ehu.es>]
* Do not move a backup package under PKG_DBDIR, but just keep it under
TMPDIR. It should not require a large amount of free space in
PKG_DBDIR.
[Pointed out by: John Merryweather Cooper <jmcoopr@webmail.bmi.net>]
- Don't hardcode "gtk12-config", but use GTK_CONFIG and IMLIB_CONFIG vars.
- patch improvement
- plist fixes
- remove added group cdwrite on deinstall
- chown root:cdwrite various utilities used by xcdroast, such as
cdrecord, and set them chmod 4710. I don't know if I like this.
Opinions (Security Officer?)?
Overall:
- Disregard -r and -R when -a is also specified; there is no
need to recurse when you do with everything.
- Fix a bug in -r and -R routines where it might fail in error
if dependencies of a package were all wrong.
[Caught by: Mamoru Iwaki <iwaki@bsp.bc.niigata-u.ac.jp>]
- Fix the support for the case where PORTSDIR is a symlink.
- Squeeze //'s.
- Run `stty sane' before building each port, on interrupt, and
before exit.
- Accept portorigin_glob and pkgname_glob with paths, except
for -x/--exclude.
portupgrade:
- Fix `portupgrade -Ni' (portinstall -i).
- Skip ports and packages that once failed, and do not try to
upgrade multiple packages of an origin.
- If a port or a package failed to build or install, skip its
dependents. This behavior can be overridden by the new
option, -g/--go-on.
pkgdepfix:
- Backup +CONTENTS files before removing duplicates.
portsclean:
- Start implementing -L/--libclean.
misc/tcsh/complete.sample:
- Add a simple example of tcsh completion definitions.
[Contributed by: kuwa@flab.fujitsu.co.jp]
portupgrade:
Fix -A and -B which were broken when I introduced -L.
[Submitted by: Ollivier Robert <roberto@keltia.freenix.fr>]
portsdb:
Implement -M/--master-recursive, -R/--upward-recursive and
-x/--exclude, and sort the result in dependency order.
portsdb:
Do not clobber the INDEX file until the new one is ready,
so you don't have a zero-sized INDEX while updating it.
pkgdepfix:
Implement an origin duplicates fixer (only invoked when -o is
specified), and when it fixes one, redo the whole session.
Make the cyclic dependencies fixer a bit more intelligent.
portcvsweb:
Conform to the Secure BROWSER (SB) Specification proposed by
David A. Wheeler.
cf. http://www.dwheeler.com/browse/secure_browser.htmlhttp://www.tuxedo.org/~esr/BROWSER/
- Remove ugly do-configure and use Makefile.FREEBSD as the Makefile
for the program
- Add do-install target
- Remove COPYING from installing into docs directory
(as if we dont got enough copies of the GPL floating around)
- Sort pkg-plist
PR: 29780
Submitted by: MAINTAINER
- Introduce a new environment variable "PORTS_INDEX", to specify an
alternate ports INDEX file location. You can set this to something
like `/usr/ports/INDEX.txt" not to overwrite the one under the
control of CVSup/CVS/CTM.
- Fix portinstall (portupgrade -N) which I broke recently by mistake.
- Change the report format. It shouldn't be too verbose unless you
specify -v.
* cfengine deadlocking in the resolver due to being linked against libc_r
* cfd issuing 'ioctl: No such network device' whenever it is invoked.
change maintainer email
add more docs
Patches obtained from Michael Kyle <mike@rainc.com>
PR: 29649
Submitted by: MAINTAINER
pkg_deinstall/pkg_glob, portupgrade:
- Fix the glob expander to exclude not installed packages recorded
in +CONTENTS and +REQUIRED_BY files.
pkg_deinstall/pkg_glob, portupgrade, portversion:
- Properly handle regular expression errors.
pkg_glob:
- Properly define a signal handler.
- Show a better report.
portsdb: (overall)
- Try doing make INDEX when no INDEX file is present, and if it
fails raise an exception.
portupgrade:
- Add a new option: -L/--log-prefix, with which a user can save a
build & installation log file for each port/package.
- Show a concise and helpful message for each upgrading error. It
now autoatically guesses the reason of each failure using the same
algorithm that Ports Wraith's processlogs script uses.
- Fix a bug where 'portupgrade -aE' raised an error.
portversion:
- Support -r/-R/-x as other tools do.
- Fix a bug where `portversion -E' raises an error.
Fix a trivial but annoying behavior. Print progress messages during
(automatically) updating the ports database to stderr instead of
stdout, so the output of `portversion -c > script' won't contain any
unexpected progress messages.
(No bugs have been found in the previous version)
portupgrade, portversion, pkg_deinstall, pkg_glob, portsdb:
- Add a new option -E/--regex, which allows you to use the extended
regular expression instead of the shell glob pattern to specify
packages or ports.
portupgrade:
- [IMPORTANT] Turn -c/--clean and -C/--cleanup on by default.
[Suggested by: Ian Dowse <iedowse@maths.tcd.ie>}
- Now that -c/--clean is on by default, -Fc no longer means
"fetch-only + do distclean before each fetch". Instead, a new
option -D/--distclean is added which can be used with or without
-F/--fetch.
- Add new options -w/--noclean and -W/--nocleanup.
- Always do `make clean-depends' before building dependent ports.
- Add a new option -E/--regex, which allows you to use the extended
regular expression to specify packages.
- Add a long option --use-packages-only for -PP.
- Rewrite the WARNING section of the manpage and mention
pkgdepfix(1) in it.
[Suggested by: Ian Dowse <iedowse@maths.tcd.ie>]
pkg_glob, pkg_deinstall:
- Add back long options.
* All patches except sysutils/kdeadmin/files/patch-rpmMessages.c:
- Either obsoleted or merged into KDE.
* All pkg-plists:
- Huge diffs are due to mass conversion from static HTML pages
to XML/XSL versions.
* audio/kdemultimedia2:
- aRts + Noatun, etc. now work and play MP3s et al properly,
using the mpg123 aRtsplugin. Remove mpeglib[,_artsplug]
from compile.
* converters/kdesupport2:
- Obsolete. No longer used in this version of KDE.
* deskutils/kdepim:
- Use autoconf and account for brokenness in the configure
script by replacing invocations of INSTALL under libical
with the proper incantations.
- Per David O'Brien's request, move libimap to libkimap;
this was performed by Rik Hemsley <rikkus@kde.org>.
* devel/kdesdk:
- New module with some helpful tools. One in particular that
seems demanded is ``kbabel'', which, as I've been told, is
a translator's wet dream.
- Workaround dumb problem in kbabel's libgettext (which I could
not figure out how to remove) by replacing its error() with
errc(). KBabel seems to run fine with this patch.
* devel/kdevelop:
- Fix lame check for libkdeui.so.* by replacing it with just
a check for libkdeui.so. It's been/being removed from
kdevelop after 2.2.
* editors/koffice:
- Fix kivio compile errors by substituting in PTHREAD_LIBS
in the correct place. Compensate for kivio's dependency
on pthreads by changing kivio to use LD_PRELOAD=/usr/lib/libc_r.so
in kivio.desktop.
* games/kdegames2:
- Some new games.
* graphics/kdegraphics2:
- Fix link errors in libkscan and kamera where they
require gettext (ie: add -lintl).
- Fix compile error in kamera.cpp which is dependent on a
correctly done gphoto2.. of course, this will only help
people who've manually installed gphoto2 themselves.
* net/kdenetwork2:
- Mimelib was moved here (reason for removal of kdesupport2).
* misc/kdeaddons:
- New module to FreeBSD ports; some simple addons for KDE2.
Suggested by Lauri Watts <lauri@kde.org>.
* misc/kdeutils2:
- Added a couple manpages.
* x11-clocks/kdetoys2:
- Some new apps.
* sysutils/kdeadmin:
- Remove kuser from compile because it has some problems. ;\
* x11/kdelibs2:
- Add libFAM dependency to help people who run FAM; FAM
increases the overall desktop responsiveness.
Submitted by Lauri Watts <lauri@kde.org>.
- Add CUPS dependency to bring in KDE's new print system.
- Add bzip2/libxml2 dependencies to support the new help kioslave.
- Disable installation of libltdl stuff to prevent conflicts
with other stuff. Submitted by wjv.
- Add pkg-req script to avoid conflicts with kdelibs11; add
to Makefile too. Submitted by benno.
- Be sure to remove the pth header conflicts stuff from the
arts/mcop_mt section.
- Fix problem with configure trying to find -lfam in the
wrong place.
- Remove kspell and api subdirs from doc; we don't need them,
and there are problems trying to build/install them.
Submitted by Lauri Watts <lauri@kde.org>.
* x11/kdebase2:
- Solve link permissions problem by changing the modes on
files installed by kdesktop/init/Templates to 644.
Submitted by Jim Durham <durham@w2xo.pgh.pa.us>.
* x11/kde2:
- Bump version; no other changes.
Special thanks to Lauri Watts <lauri@kde.org> for helping me test
packages generated by these changes on a virgin system. I believe
that this is the best-tested update I've ever done for KDE, and it
really shines this time around.
I just noticed there are a couple other PRs in the PR db that need
to be addressed. I will take care of those by tomorrow. Sorry...
PR: 22735, 28549
Blanket approval by: demon (kdesdk, kdevelop)