Commit Graph

539 Commits

Author SHA1 Message Date
agc
82e88920e0 Add a pkgdb_remove_pkg() function and use it in pkg_delete(1).
Bump lib/version.h due to added functionality.
2003-01-10 10:17:21 +00:00
agc
60c7c151cc In pkgdb_remove(), use the return value from (*db->del), rather than
explicitly setting and checking errno.

Do some CSE in pkgdb_iter().

Use the db access functions in the proper manner.
2003-01-06 10:03:44 +00:00
agc
9d61d2fff1 Add an enumerated type which is used in pkgdb_open() to specify
read-only or read-write mode.

Modify the return value of pkgdb_open() to have a more logical boolean
value.
2003-01-05 21:49:51 +00:00
agc
1b535c4ef0 Use EXIT_FAILURE, rather than hardcoding a value of '1' in err(3) and
errx(3).

Plug a memory leak by modifying the signature of
_pkgdb_getPKGDB_FILE() to take a buffer and its size, and fill in that
buffer and return it.
2003-01-05 21:27:20 +00:00
thorpej
61456e3f52 Avoid conflict with reserved identifier "exp". 2002-12-06 15:15:29 +00:00
grant
0a51ab8aee replace use of alloca() with the more portable malloc()/free(). 2002-11-29 08:31:06 +00:00
taca
445a837973 Add 'p' option to TARX_CMD's argument for preserving file mode.
This fixes the problem that pkg_add(1) drops setuid/setgid bit.

This problem occurs on pax(1) based tar environment.
pkgtools/pkg_install should be fixed, too.
2002-11-28 23:52:31 +00:00
agc
64f5916734 Don't use special-case code for the '_' modifier, just add it to the
modifier table.  Fixes a problem pointed out by Rene Hexel.
2002-11-26 14:46:45 +00:00
jschauma
d571e4f803 Do not abort incomplete deletion if the cwd was removed. Instead, warn,
stay in no-longer existing dir and continue with removal of db-files;
otherwise, the packages contents would be removed, but the package not
uninstalled.  Pointed out by Grant in PR pkg/18384.  OK'd by hubertf.
2002-11-23 22:31:18 +00:00
agc
ab7e447f08 Bump version number after adding "alpha" and "beta" version modifier
recognition.
2002-11-14 11:57:15 +00:00
agc
03ce8889fa In addition to the existing "rc" modifier for a package version, add
support for "alpha" and "beta" versions, which sort before "rc".  Move
to table-based modifier recognition.
2002-11-14 09:40:23 +00:00
grant
f437cb0639 s/anyways/anyway/ 2002-11-05 07:34:31 +00:00
wiz
fdc93ee90f Add tag for yesterday's state. 2002-11-02 02:07:43 +00:00
hubertf
4d58bf2551 Properly re-implement hilighting of the dialogue with the ftp(1)
process.

Thanks again for the throughout notification I got before that
was removed! :(
2002-10-26 14:43:43 +00:00
hubertf
4d4c17a923 use size of the right buffer 2002-10-26 12:37:00 +00:00
provos
32b88027c7 use readlink with bufsize - 1; approved thorpej. 2002-10-19 20:33:17 +00:00
wiz
26acd804be Fix typo in last (hi christos). 2002-10-17 08:46:00 +00:00
christos
d5d6fac25a Jeez! Delete hard-coded vt100 sequences. This could be done using termcap,
but why bother?
2002-10-17 03:34:20 +00:00
christos
590fa669c8 - eliminate the hard-coding of pathnames in the default install.
- all command executions now use the path [execvp/execlp/system].
- normalize the macro names as <COMMAND>_CMD.
- in some OS's full pathnames for commands can still be provided, but this
  is not the default.

This was needed to fix -DTAR_FULLPATHNAME="/usr/bin/tar"
2002-10-17 03:31:33 +00:00
wiz
5e977f5ead Ispell. Begin new sentences on a new line. 2002-09-26 01:41:51 +00:00
wiz
5dbdce59f0 Fix date. 2002-09-25 00:34:44 +00:00
uebayasi
6a49247a32 Sprinkle .Xrs to packages(7). 2002-09-24 03:18:00 +00:00
mycroft
3e966fa349 select() -> poll()
Also, remove a call to path_create() that causes the `prepend' path held by
pkg_perform() to be deleted, causing a core dump later when pkg_perform()
tries to remove it itself.
2002-09-19 02:13:57 +00:00
lukem
c52b93f508 minor makefile delint 2002-09-18 13:31:52 +00:00
thorpej
9aa45a9c40 Fix typo (sigh). 2002-09-16 00:12:54 +00:00
thorpej
677d45a6a2 The new comment in the file says it all:
# UNDER NO CIRCUMSTANCES SHOULD THIS MAKEFILE TEST THE OUTPUT OF uname!!
# DOING DO BREAKS CROSS COMPILING.
2002-09-15 23:56:57 +00:00
abs
acfcf99e58 Do not prepend '.' to path when looking for dependencies for a package
specified without any path components. (Pointed out by Takashi Yamamoto)
Rename path_remove_first() to path_prepend_clear().
2002-08-29 21:46:33 +00:00
abs
b3c9314a54 crank PKGTOOLS_VERSION to 20020827 for last change to lib/path.[ch] 2002-08-27 17:35:05 +00:00
abs
374ff93c9c Introduce path_prepend_from_pkgname() and path_remove_first() and
use in pkg_add to ensure the location of the package being added is
checked first for any additional packages.
2002-08-27 17:27:27 +00:00
hubertf
dfa4cb8d4d Fix a few comments, and add some others to outline what's missing
in the pkg upgrade case (two TODOs :)
2002-08-16 00:47:39 +00:00
wiz
f4813ef403 Drop trailing whitespace. 2002-08-15 03:26:38 +00:00
hubertf
3ddcffd0a9 document -u 2002-08-15 02:34:53 +00:00
yamt
13ebe87a2f add some comments. 2002-08-08 00:17:39 +00:00
hubertf
ac31af18a9 20020804:
* pkg_admin pmatch
 * pkg_add increases resource limits

No need to bump PKGTOOLS_REQD as these are not used anywhere right now!
2002-08-04 21:49:23 +00:00
hubertf
ed4b7caed9 Try increasing number of max. open files as high as possible.
Prevents annoying errors when installing biggies like KDE.
2002-08-04 21:47:24 +00:00
hubertf
cebf43ab6e Add 'pmatch' keyword: pkg_admin pmatch pattern pkg
Will return true if 'pkg' matches 'pattern', false else.
Provides a command line interface to the pmatch() C function
to be used from shell scripts etc.
2002-08-04 20:50:55 +00:00
hubertf
c2c6f0bc61 Don't warn about PKG_PATH being set when -e is given 2002-08-04 19:43:08 +00:00
seb
46495173b2 Fix FTP_CMD for Solaris: something went wrong when it was added.
Approved by wiz.
2002-08-02 17:04:55 +00:00
jschauma
a82bd2c37e Synch with reality (PKG_TMDIR defaults to /var/tmp (first)).
Pointed out by franklin at elfie dot org in PR pkg/17760,
discussed on packages@, approved by hubertf.
2002-07-31 01:39:40 +00:00
yamt
0eb57ea5a6 bump version to 20020723.
(PKG_PATH changes)
2002-07-23 09:23:35 +00:00
grant
eda9e509bb sweep of errx/warnx, remove unnecessary trailing \n 2002-07-20 08:40:16 +00:00
grant
6742cb1812 sweep of errx/warnx, remove unnecessary trailing \n 2002-07-20 08:36:17 +00:00
yamt
b9911a030d #if 0 out unused functions. 2002-07-20 05:40:55 +00:00
yamt
c819f95798 show_file: don't append '\n' if fopen failed. 2002-07-20 04:59:47 +00:00
yamt
c4ca16e864 show_file: add an extra '\n' unless file ended with '\n'. 2002-07-19 19:18:26 +00:00
yamt
5eb02a32ce - remove handling of PKG_ADD_BASE.
- don't search current directory if PKG_PATH is set.
- don't prefer local directories.
- constify and cleanup.
discussed on tech-pkg.
2002-07-19 19:04:33 +00:00
toshii
5e1f92b4ef If "-f" is given, don't set errc on dependency add failure.
This change makes "pkg_add -f" work as it used to be.
2002-07-13 16:38:00 +00:00
yamt
a8463800e2 don't pass null pointers to printf for "%s". 2002-07-09 04:35:30 +00:00
yamt
84954a6eb7 - use snprintf and strlcpy instead of strcpy, strcat and sprintf in some place.
- remove a unneeded strcpy.
2002-07-09 03:30:05 +00:00
yamt
bf62cfa448 check return value of snprintf correctly. 2002-06-27 12:05:52 +00:00
agc
2d3a1701d3 Avoid hardcoding /usr/bin/ftp in the pkg_add binary.
Fixes provided by Stoned Elipot <seb@script.jussieu.fr> in PR 17323
2002-06-21 14:49:40 +00:00
yamt
80a776becb constify and make WARNS=2 clean. 2002-06-10 09:14:26 +00:00
yamt
56268cdf57 constify. 2002-06-09 14:14:49 +00:00
yamt
51111fe65d - make last arg of findmatchingname void*.
- move some duplicated functions into lib/.
2002-06-09 13:23:44 +00:00
yamt
cc8d347c9a - free memory allocated by findbestmatchingname.
- use static buffer instead of "malloc and don't free"
  for dirname_of.
- fix indent.
2002-06-09 11:56:59 +00:00
yamt
830edd8ed3 rewrite strip_txz:
- don't match against filenames like "a.tgz.a"
- more buffer overrun checks.
2002-06-09 10:40:47 +00:00
yamt
f2a19ed936 - fix buffer size checks
- define PKG_PATTEN_MAX and PKG_SUFFIX_MAX and
  use them instead of constants like 255.
- add asserts and buffer size checks.
2002-06-09 03:50:13 +00:00
yamt
ae85a7c2df - constify.
- avoid unneeded strcpy.
- add more error checks. (avoid segv
2002-06-09 03:38:59 +00:00
yamt
f214a6095e avoid a magic constant. 2002-06-09 03:32:45 +00:00
agc
9dd6d667fa Only define DEF_LOG_DIR if it's not already set. 2002-05-10 13:17:57 +00:00
hubertf
19f6d0bbcb Add more error checking, and tell the user what's up when he runs
into descriptor-shortage. Can be caused when installing deeply-nested
binary pkgs like kde.
2002-04-23 10:14:59 +00:00
agc
5e5f49ecfa Check the return code from the second invocation of installprereq(), to
make sure that a failed installation of a rpe-requisite package kills
the attempt to add the package. This reverts pkg_add(1) to traditional
behaviour.

Bump version number accordingly.
2002-04-02 15:08:33 +00:00
hubertf
99e2919b43 Improved error reporting: when a pkg pattern is given, and
/var/db/pkg does not exist (e.g. on a new system), say do!
2002-03-12 22:36:26 +00:00
agc
2e8bd5562d When adding packages via pkg_add(1), and a pre-requisite package needs
to be added, first try to use the exact version of the pre-requisite
with which the base package was built (from the @blddep directive in
the +CONTENTS file), and then use the traditional dependency from the
@pkgdep directive.

Also rename a variable from "code" to "errc" to make it obvious what
the variable counts.

Bump version number to 20020306.
2002-03-06 17:45:20 +00:00
agc
b66bb2992d Output @blddep directives properly when displaying PLISTs. 2002-03-05 14:18:07 +00:00
agc
dae19d20ed Output @blddep directives before @pkgdep directives. 2002-03-05 14:16:11 +00:00
agc
33ef3d651a Add a new packing list directive, @blddep, which notes the exact
version of the pre-requisite package which was used to build the
package. This is derived automatically from the list of pre-requisite
packages which is provided to pkg_create(1) in the -P argument.

Bump the version number to 20020305.

Versions of the pkg_install tools prior to 20020305, when adding a
binary package with embedded @blddep directives, will warn that the
directive is not recognised, but will continue to add the binary
package.
2002-03-05 13:01:19 +00:00
agc
1c88ee495f ... and get the right month this time. 2002-02-22 10:13:41 +00:00
agc
a1cbed9f66 Bump version date to reflect this change to create/pl.c:
> revision 1.22
> date: 2002/02/18 00:57:54;  author: hubertf;  state: Exp;  lines: +10 -3
> make @cwd work a bit more reliable:
>
> When -L is used (as it is by pkgsrc), don't override the directory
> set by @cwd unconditionally with what was given to -L (srcdir).
> Instead, use the @cwd directory.
2002-02-22 10:10:38 +00:00
agc
d0f4ce78c4 Modify the English slightly, and slight format cleanup. 2002-02-21 14:21:49 +00:00
hubertf
5ce6294f7b make @cwd work a bit more reliable:
When -L is used (as it is by pkgsrc), don't override the directory
set by @cwd unconditionally with what was given to -L (srcdir).
Instead, use the @cwd directory.

XXX#1: This was not tested with DESTDIR set
XXX#2: @cwd is still needed twice
2002-02-18 00:57:54 +00:00
drochner
d3d59b3e4f print the package name on deletion errors 2002-02-15 12:42:34 +00:00
ross
2a76afae02 Generate <>& symbolically. I'm avoiding .../dist/... directories for now. 2002-02-08 01:36:18 +00:00
ross
8bd7cb6a69 Edit -mdoc usage.
* There is no -indent option to .Bd or .Bl, although you would
  never know that from its frequent use in this tree. There is a
  "-offset indent" combination that makes sense, and you can certainly
  say "-width indent".

* Also, you can't markup the -width option argument, tho you CAN
  use a callable macro. So "-width Ar filename" doesn't make sense,
  but either "-width Ar" or "-width filename" does, as might something
  like "-width xxfilename" for a little extra space.

* There are a lot of needlessly complex hanging tag macros in man4 used
  to create simple item lists. Those should be simplified one of these
  days before someone copies and edits yet another man4 page.
2002-02-07 03:15:06 +00:00
yamt
9b2987d371 tets -> test 2002-02-02 15:30:18 +00:00
wiz
df220a8153 Paragraph markup improvements, use Xr in one place. 2002-02-02 01:32:25 +00:00
wiz
ddb67af4bb Drop superfluous .Pp. 2002-02-02 01:31:50 +00:00
wiz
b85170c751 Improve markup, sort section, sort SEE ALSO. 2002-02-02 01:31:16 +00:00
wiz
923aa5f99b Drop an empty line. 2002-02-02 01:30:39 +00:00
wiz
bc145df2ee Use .Nx, replace empty line with .Pp. 2002-01-19 02:01:35 +00:00
agc
cfa115fedf Explain a bit more fully the collating sequence which pkg_info(1) uses when
comparing package versions strings.
2002-01-10 10:46:28 +00:00
agc
b85b4de6a6 Bump version number to reflect the pkg_info version number recognition
changes.
2002-01-09 18:50:17 +00:00
agc
2afa28bf02 Pull in a much simplified version of the vtest functionality. This new
functionality adds recognition of '_' and "pl" as pseudonyms for '.',
so that 1.2p2 == 1.2.2, and adds recognition of "pl" and "rc" strings,
which stand for "patchlevel" and "release candidate" respectively.

In addition, this version should handle alphabetic characters properly
(so that 1.2e == 1.2.5)

Normal NetBSD revision number processing has been retained (and is always
compared after all other tests have been performed).

64-bit integers are used internally for each component of the version
number.
2002-01-09 16:17:08 +00:00
hubertf
75b2df2eee don't hardcode "tar"'s program name, use TAR_FULLPATHNAME instead 2001-12-30 04:46:21 +00:00
tv
8e6f7afb5b MKfoo=no -> NOfoo 2001-12-12 01:48:43 +00:00
agc
c7f73c3331 "it's" is short for "it is".
The possessive pronoun is "its".
2001-10-04 19:44:48 +00:00
yamt
d75115bcb0 fix typo that prevents to select best version of package. 2001-10-04 05:32:50 +00:00
hubertf
384aae98cc use full pathname of tar consistentlc
Patch provided in PR 14072 by Stoned Elipot <seb@script.jussieu.fr>
2001-09-26 13:48:27 +00:00
agc
ead534127e Print out the name of the detached signature file which is being used to
verify the binary package. Idea from Hubert Feyrer.
2001-09-25 11:42:56 +00:00
agc
03663b89ae Add a "-s verification-type" argument to pkg_add, which adds a callout
to a verification program for a binary package. The following callouts
are defined: "none", "gpg" and "pgp5".

This feature allows you to verify a binary package against a detached
signature file, and to proceed with the installation or not, depending
upon the level of trust you place in the signatory of the binary
package.

Digital signatures will be checked in a recursive manner (i.e. if
pkg_add is called with a verification type which is not "none", the
verification type will be passed to subsequent invocations of pkg_add
for the dependent packages).

At the current time, digital signatures cannot be used with the URL
form of pkg_add(1) - the detached signature file must be in the same
directory as the binary package, either locally or mounted by NFS.

If no -s argument is given, pkg_add(1) retains its current behaviour -
the package will not be verified before installation takes place.
2001-09-25 10:28:16 +00:00
wiz
4c99916337 va_{start,end} audit:
Make sure that each va_start has one and only one matching va_end,
especially in error cases.
If the va_list is used multiple times, do multiple va_starts/va_ends.
If a function gets va_list as argument, don't let it use va_end (since
it's the callers responsibility).

Improved by comments from enami and christos -- thanks!

Heimdal/krb4/KAME changes already fed back, rest to follow.

Inspired by, but not not based on, OpenBSD.
2001-09-24 13:22:25 +00:00
wiz
456dff6cb8 Spell 'occurred' with two 'r's. 2001-09-16 16:34:23 +00:00
yamt
7bc6654ad8 disable unnecessary warning when PKG_PATH isn't set. 2001-08-21 18:38:40 +00:00
hubertf
194031e9be Don't do FTP stuff when operating on all pkgs
Adresses PR 13397 by Greg A. Woods <woods@weird.com>
2001-08-19 23:33:35 +00:00
agc
d069ffa789 Add a -n switch to show the packages "needed" by a package (i.e. the
packages which are depended upon).

Provided in PR 13071 by woods@planix.com (Greg A. Woods), the addition
to the synopsis by myself, pedant-in-chief.
2001-08-13 20:08:58 +00:00
wiz
64662a0528 Fix `pkg_add -u' for packages without dependencies.
Patch by Hubert Feyrer.
Addresses pkg/13536.
2001-07-24 14:45:16 +00:00
wiz
a9356936b4 seperate -> separate 2001-07-22 13:33:58 +00:00
wiz
e46d80027f Close some memory leaks.
Reported (incl. patch) by YAMAMOTO Takashi in pkg/12830.
2001-07-16 13:50:41 +00:00
hubertf
861dbe4370 Interface change for strip_txz(): now stores suffix 2001-07-15 00:34:14 +00:00
hubertf
f990f4a5a2 * Bugfix: if PLIST_SRC directly follows PLIST_CWD, ignore
the PLIST_CWD in creating the tar pipe.

   This takes care of pkg_create -p PREFIX -L FAKE
   where PREFIX does not exist at pkg creation time.

   From OpenBSD's rev. 1.9->1.10

 * Register PLIST_SRC before dependencies and conflicts so that the
   PLIST_CWD != PLIST_SRC hack works with dependencies present.

   From OpenBSD's rev. 1.10->1.11

 * improve error message to tell full path of exec() that failed
2001-07-15 00:23:14 +00:00
wiz
3f9984fc90 existent', not existant' 2001-06-19 13:42:07 +00:00
wiz
d422b80ea9 Uppercase Dt argument. 2001-06-05 11:58:55 +00:00
joda
073d0b6122 (usage): correct number of arguments to fprintf 2001-05-28 07:59:53 +00:00
agc
bd6e892efe Apply the -I substitution logic for @cd as well as @cwd (just for
completeness, as @cwd will be used almost everywhere, and @cd is
deprecated).
2001-05-21 12:06:30 +00:00
agc
8f6a8bb131 When adding the checksums for the individual file entries in the generated
+CONTENTS file, if the entry is also the last in the package's list, adjust
the tail pointer accordingly.
2001-05-21 12:05:20 +00:00
agc
83dc57abd5 Display the correct directory for the @src directive if -I has been
specified.
2001-05-21 12:03:53 +00:00
agc
95a52b2709 Add -I argument to pkg_create so that the real prefix can be specified
for the @src and @cwd PLIST directives.

Bump version number.
2001-05-21 09:17:28 +00:00
agc
6ccfedb598 Add -U argument to pkg_create - by default, all files are added to the
pkgdb.byfile.db database. If -U is specified on command line to
pkg_create, don't add the PLIST entry to pkgdb.byfile.db.

Bump version number.
2001-05-18 13:21:38 +00:00
hubertf
01b66ea788 * add function strip_txz() to strip off any .tgz, .tbz, .t[bg]z from a
given filename.
 * Use strip_txz() inside the FTP-wildcard-depends handling code to
   prevent it handing a combination of glob and dewey pattern to pmatch(),
   which our pattern matching code currently does not handle. Bugfix!

XXX The other places that could be changed to use strip_txz() are not
    touched in this commit to keep the impact of this change small in the
    light of the approaching 1.5.1 release. I'll revisit them.
2001-04-28 20:55:33 +00:00
hubertf
965773e0ca Check for return value of getenv() before handing it to strdup().
Fixes a bug in last commit when PKG_ADD was not set.
2001-04-21 01:38:14 +00:00
dmcmahill
b80446717f Allow PKG_PATH (or part of that) to contain a local directory, and
still let "pkg_add foo" work:

        setenv PKG_PATH /usr/upkgsrc/packages/All
        pkg_add -v kde2

Depending pkgs will be pulled in as usual.

If PKG_PATH contains a mixture of local paths and ftp://-URLs, the local
paths will be searched first.

Patch provided by Hubert.
2001-04-19 12:31:59 +00:00
hubertf
dcdc94af10 Don't warn about @src being deprecated any longer - we add it per default
to each binary pkg again (via pkg_create -L) to assist DESTDIR builds.

Noted by Dan McMahill in private mail.
2001-04-17 10:42:11 +00:00
hubertf
152216c60d on pkgdb_remove, don't retain old errors - clear errno before.
This prevents some warnings from being printed over and over again
after one error was found.
2001-04-17 10:33:35 +00:00
hubertf
5db44bee09 Include lsall and lsbest in usage message. 2001-04-14 00:01:28 +00:00
itojun
939a343de8 have EXAMPLES section. 2001-04-10 01:39:44 +00:00
wiz
9552f78610 Whitespace, and remove unnecessary "" after .Nm. 2001-04-09 12:48:37 +00:00
wiz
71c4cdb33c Fix date, and whitespace fixes. 2001-04-09 12:48:09 +00:00
wiz
b5f78004d1 Whitespace fixes. 2001-04-09 12:47:37 +00:00
wiz
4058e24dfa Fix date, and improve markup. 2001-04-09 12:47:09 +00:00
wiz
0037cd4f1b Whitespace fixes. 2001-04-09 12:46:47 +00:00
itojun
3e4d36b9a4 do not terminate on EINTR. with previous behavior pkg_add terminates
if we suspend/change window size.
2001-04-09 08:13:37 +00:00
hubertf
741e17c0cd * Invent ZOULARISBASE, defaulting to $LOCALBASE/bsd
* allow overriding CHOWN/CHGRP/CHMOD (= -> ?+)
2001-04-08 14:11:48 +00:00
wiz
14dbdf5518 Negative exit code cleanup: Replace exit(-x) with exit(x).
As seen on tech-userlevel.
2001-04-06 11:13:45 +00:00
hubertf
6890588691 If a package is already installed, this is *not* a fatal error. Do not
report error code 1, as this will abort installing pkgs if a dependency is
already found installed under certain conditions.
2001-03-28 12:46:01 +00:00
tron
d059ac0ad9 Use "tar" included in latest Zoularis under SunOS. 2001-03-23 14:06:16 +00:00
hubertf
35be797120 Set return code != 0 if the given pkg (file) cannot be found.
E.g. try "pkg_add foo ; echo $?". This hits is in bulk builds.
2001-03-22 13:41:35 +00:00
wiz
47acaa6b2d Update path in example to a more recent package. Noted by zuntum. 2001-03-20 19:43:36 +00:00
hubertf
648fa44a28 Add -u switch to pkg_add to do a very rudimentare form of pkg upgrading:
When invoked with 'pkg_add -u ...', and the package to be installed is
found already being installed, the old (installed) package is removed
with pkg_delete, and the new one is installed.

A very crude handling of dependencies is done (by moving the +REQUIRED_BY
file aside before pkg_delete, and back into place after the new pkg is
installed).

This needs a lot more work to TRT, but it's a first start.
2001-03-18 03:20:28 +00:00
hubertf
ee1019de50 Update description a bit - inspired by Jeremy C. Reed <reed@reedmedia.net>
from tech-pkg.
2001-03-13 18:25:30 +00:00
wiz
63f7d31eeb Fix -r: Show REQ/+REQUIRE file for a package, if existing. Fixes pkg/12210.
Patch by Hubert Feyrer.
Note: REQ support has been taken out of bsd.pkg.mk in v1.628; since
pkg_create still supports it, we should support it in pkg_info too,
though.
2001-03-10 18:41:45 +00:00
wiz
c62849a451 Minor cleanup, no functional change. Patch by Hubert Feyrer. 2001-03-10 13:18:09 +00:00
wiz
a456915f39 Bump version to 20010307 (yesterday's bugfix, and a 1.4 build fix). 2001-03-07 10:04:33 +00:00
wiz
2bf9002908 This header file needs no __RCSID. 2001-03-07 09:44:40 +00:00
wiz
f2496b9080 Test matching entries in /var/db/pkg on if they are directories.
Fixes pkg/12073 by Dan McMahill.
2001-03-06 10:30:54 +00:00
wiz
e0fc1c5416 Fix typos in comments 2001-03-06 10:29:11 +00:00
wiz
45678a8082 version.o depends on version.h. 2001-03-05 18:24:58 +00:00
wiz
429d019073 Don't allow NULL version packages to match. Patch by hubertf.
Bump version to 20010306.
2001-03-05 18:12:49 +00:00
wiz
2ba98ef9a1 Add -V option to all pkgtools, which reports the version of the pkgtools.
Document it. While there, fix the ordering of the option descriptions in
some man pages. Set version to 20010305.
2001-03-05 16:53:12 +00:00
wiz
fcf23e4f53 Using strcmp with NULL pointers is a bad idea. Fixes pkg/11647. 2001-03-05 16:48:35 +00:00
wiz
6c81e9b559 Fix command line for tar in the case that the file to be handled doesn't
end in 'z' or 'Z'.
2001-03-05 16:46:23 +00:00
hubertf
4b8c25f151 Prevent some minor descriptor leaks. 2001-03-04 18:16:42 +00:00
hubertf
55a4568c92 Make usage message match that of other pkg_* programs:
* user lowercase "usage"
 * do not use __progname/getprogname() to make this build on old systems
   (the pkg_install pkg is intended to run on 1.4 and maybe 1.3 too...)
2001-02-21 13:12:47 +00:00
cgd
25bdbb661e convert to use getprogname() 2001-02-19 23:22:40 +00:00
jdolecek
c7121de1da use getcwd() instead of getwd() - mainly to avoid link warning, this
particular usage is safe
2001-01-10 22:53:22 +00:00
lukem
443a19e035 convert to using .WAIT 2001-01-09 03:13:39 +00:00
enami
270db080e9 Use PRINTOBJDIR. 2001-01-07 08:00:54 +00:00
hubertf
f4f6931307 Alphabetize options. 2001-01-07 01:39:20 +00:00
lukem
c2aa46e7c2 use %ll_ instead of the less standard %q_ 2001-01-05 03:27:26 +00:00
hubertf
6e6337b43d * findmatchingname():
When the bzip-pkg handling was introduced, a dewey pattern (foo>1) may get
   a character-class-pattern attached (.t[bg]z), and the code was not prepared
   to match that. I've special-cased handling of character-class pkg suffixes
   for ".t[bg]z", and when scanning a dir in findmatchingname() now both the
   'first' part of the pattern (e.g. "foo>1") and the suffix (e.g. ".t[bg]z")
   must match the file, hence the two pmatch() calls.

 * findbestmatchingname_fn():
   Caught a case where ".t[bg]z" was not properly handled. Must do the same
   suffix-processing again here!

Fixes PR 11856 by Dan McMahill <mcmahill@mit.edu>
2001-01-01 22:07:35 +00:00
hubertf
3d76df0ee0 Strip not only .tgz but also .tbz etc. (missed from last commit) 2000-12-13 03:49:56 +00:00
hubertf
5382dffae7 * Accept ".tbz" as an alternative pkg suffix to ".tbz" for pkg_add and
pkg_info
 * In pkg_create, compress with bzip2 if a .tbz suffix is given
 * Fix pkg_info to work via ftp, either via URL specified on command line
   or via one made up from PKG_PATH (if set)

XXX ALWAYS tacks on ".t[bg]z", NOT ".t[gb]z" !!!
2000-12-13 03:17:53 +00:00
hubertf
4b8a7a0e49 Fix pkg_info w/ URLs (*sigh*) 2000-11-30 10:09:15 +00:00
mycroft
9ff73e166a Oops; the increment needs to be in check1pkg() for the case where the user
specifies a list.
2000-11-28 05:23:35 +00:00
mycroft
23451da968 pkgcnt was incremented twice during a `check'... 2000-11-28 05:21:57 +00:00
hubertf
fc8a285aa2 Fix timeout in expect():
The FTP coprocess formerly wrote the output of the "get | tar vxf -" pipe
to stderr, which resulted in no output to the feedback pipe (stdout), and
thus the timeout was not updated for any line printed by the "tar" process.
This was now changed to also feed back the chars to the expect() routine,
updating the timeout handler. The "also" part is implemented by passing
the output through "tee /dev/stderr".

At least NetBSD and Solaris have this, so no problem there.

Thanks to Frank van der Linden for helping me to debug this.
2000-11-28 01:16:01 +00:00
hubertf
ec58d85250 Don't mkdir("/usr/tmp") in a desperate try to get some space.
If it's there, use it. If it's not there - bad luck.

Pointed out by Simon Burge <simonb@wasabisystems.com>.
2000-11-26 03:12:01 +00:00
wiz
18c121ba47 ispell 2000-11-12 15:32:57 +00:00
lukem
279552d3db fix up various .Nm abuses:
- keep the case consistent between the actual name and what's referenced.
  e.g, if it's `foo', don't use '.Nm Foo' at the start of a sentence.
- remove unnecessary `.Nm foo' after the first occurrence (except for
  using `.Nm ""' if there's stuff following, or for the 2nd and so on
  occurrences in a SYNOPSIS
- use Sx, Ic, Li, Em, Sq, and Xr as appropriate
2000-11-07 06:43:24 +00:00
hubertf
efeb1d1e82 Don't swallow '%' in file/directory names.
Patch submitted in PR 11352 by Brook Milligan <brook@biology.nmsu.edu>
2000-10-31 23:47:05 +00:00
hubertf
4f394222d2 Pull in /etc/mk.conf unconditionally, not only on SunOS.
Discussed with Alistair Crooks.
2000-10-27 11:49:23 +00:00
hubertf
931aadfd80 s/bsd/BSD/ 2000-10-25 15:55:44 +00:00
mycroft
f5abf3cd7a Introduce some caching. 2000-10-21 00:55:23 +00:00
is
d8302e2d73 More format string cleanups by sommerfeld. 2000-10-11 20:23:46 +00:00
hubertf
bf24eb4e3f Check if $PKG_PATH is set AND contains something useful. Stops
pkg_info from spewing.
2000-10-11 11:09:20 +00:00
hubertf
5f69d95c26 Check right variable to see if it's a URL (pkg -> cp) 2000-10-11 11:08:04 +00:00
hubertf
b31af88872 fix indentation 2000-10-11 11:01:41 +00:00
hubertf
589e705b57 Remove unneeded header <db.h>. 2000-10-09 19:11:58 +00:00
hubertf
6cc0c78181 Remove unneeded header <sys/syslimits.h> 2000-10-09 19:06:08 +00:00
hubertf
f5b925151e Allow SRCS, LDADD to be set on the command line, and still add the files. 2000-10-09 17:03:20 +00:00
hubertf
32166d4f75 Only pull in <vis.h> when debugging expect(), i.e. EXPECT_DEBUG is set. 2000-10-09 14:35:27 +00:00
ad
5b09090e8e insure -> ensure 2000-10-05 12:35:33 +00:00
hubertf
037fd8a74e Make even more silent, only spit out stuff if -v is given.
Found during a post-install of a fresh machine:
1. setenv PKG_PATH ftp://smaug.fh-regensburg.de/pub/NetBSD/arch/i386ELF/All
2. pkg_add tcsh ssh XF86Config
3. Run XF86Config
4. pkg_add kde
5. Be done.

We should do this from /etc/rc.local on first boot... :-)
2000-10-04 16:01:50 +00:00
hubertf
0a2663ad0b Not every FTP server says nicely "Goodbye".
If they used some other string, pkg_add would hang forever.
The result of testing things only against one FTP server...
2000-10-01 20:34:30 +00:00
hubertf
197ee08b13 Don't replace the pkg version with -[0-9] on pkg alternates ("{foo-x,bar-y}")
as this will remove things like trailing '}' etc. and doesn't work in general.

As mentioned in the already-existing comment, doing TRT here would mean to
partly expand the pattern, then replace the versions on alternatives.
Unless our pkg pattern parser gets these hooks, cowardly step back.
2000-10-01 12:23:21 +00:00
jwise
f9c3dbedef Silly as it may be, update the #! line in this script to match the pkgsrc
wish install.

After the freeze, I'll pkgsrc this script -- it's kind of cute.
2000-09-14 18:00:44 +00:00
hubertf
b09f22f48f When downloading and extracting a file (in ftp:
'get pkg.tgz "| cd /var/tmp/inst ; gunzip | tar -x -f -"'), handle
two cases better:

1. Timing out ftp connections: Make sure the hanging pipeline gets a ^C
   (SIGINT), and wait until the ftp prompt is available again. Else we
   may nuke away tar's working dir, and it may be displeased.
2. One of the commands from the pipeline exiting: caught via SIGCHLD;
   for this signal to be delivered, a empty handler is needed)

Adresses PR 10925 by Greg A. Woods <woods@planix.com>
2000-09-01 04:42:57 +00:00
hubertf
80c46f750e * Code cleanup
* Add a comment in one appropriate place
 * Indent properly
2000-09-01 04:36:20 +00:00
hubertf
c06c5a0348 Add some (commented out) debug flags 2000-09-01 04:34:03 +00:00
hubertf
d332db18be Make pkg_add & friends print the files they push through tar(1) to
stderr, thus making them visible. (tar's stdout goes somewhere else)
2000-08-29 03:56:56 +00:00
hubertf
14dbdb5745 * Make a few functions public so this code can be used by other programs
* Comment a workaround for a certain lukem ftp behaviour
 * Fix a bug where a invalid initial dir was not caught early enough
2000-08-28 21:35:14 +00:00
hubertf
0186d67219 Hide "trying PKG_PATH ..." message, only print on -v 2000-08-28 15:39:35 +00:00
hubertf
8102826629 Keep *roff from eating things.
Noted in PR 10687 by NAKAJIMA Yoshihiro <nakayosh@kcn.ne.jp>
2000-07-26 15:18:09 +00:00
dmcmahill
43301f1fee Fix a buffer overrun bug. The TOOBIG macro had some hard coded constants
which needed to be set at compile time but weren't (to handle the case where
TAR_CMD was set to something other than "tar", eg "gtar".  In addition to
the constants being wrong, the wrong directory name was being examined for
its string length.

Add a few comments to hopefully avoid having this problem come back.
2000-07-24 20:09:15 +00:00
hubertf
c0f021878e handle NULL pen variable more gracefully in find_play_pen() 2000-07-24 02:54:22 +00:00
hubertf
0379a1727a remove/hide some debugging code 2000-07-06 16:06:36 +00:00
hubertf
7ca7a7f658 Only calculate MD5 checksum for plain files.
As a side effect, fixes handlink of links to dirs.
2000-07-05 20:18:16 +00:00
hubertf
2b35b3d322 * Move comment around a bit
* Document some return code
2000-07-05 20:17:04 +00:00
msaitoh
f6f00e2615 remove extra period in SEE ALL section 2000-07-05 15:45:28 +00:00
hubertf
65162fd077 be sure to set pkgdbp to NULL after closing the db. 2000-06-19 13:28:06 +00:00
hubertf
f9aaf0a4e5 Allocate space & copy a string returned by a function that'll clobber it on
next call.
2000-06-19 00:55:11 +00:00
hubertf
74056630be remove stale debugging code 2000-06-18 01:31:23 +00:00
hubertf
e5b91ee82e * shuffle variable names in findbestmatchingname_fn() around
a bit, to make them more descriptive
 * in findbestmatchingname_fn, fix a bug where a null pointer wasn't
   caught (I wonder why we didn't actually hit that case...)
 * Bugfix in findbestmatchingname_fn: when comparing, strip off any
   trailing ".tgz", as this will give wrong results. "1.9.8.tgz" was
   found to be greater than "1.9.8.1".
2000-06-18 01:29:30 +00:00
hubertf
7aed2e5cfb use /var/tmp consistently. (XXX need to re-visit if we ever
put pkg_add on a install floppy)
2000-06-18 01:29:17 +00:00
tron
1b5dabcf75 Update prototype for "extract_plist()". 2000-06-17 11:30:49 +00:00
sjg
7bd1e30c61 extract_plist() should inform caller when it aborts extract 2000-06-16 23:49:17 +00:00
sjg
cc95d19ae1 avoid possible overflow of exit status 2000-06-16 23:48:23 +00:00
hubertf
2b57637552 ftp(1)'s "ls" now lists files/dirs plus attributes (much like "dir" did
before). Use "nlist" to still get filenames only.
Needed to expand wildcards.
2000-06-08 00:26:48 +00:00
hubertf
29efdd4919 save another call to allocate space on the stack for something that's
definitely going to end up there.
2000-06-07 03:17:10 +00:00
hubertf
6fa913c454 Don't use asprintf() which isn't available on NetBSD 1.3.2. 2000-06-07 02:10:28 +00:00
hubertf
0948b6f2cb pkg_delete -r was done by Chris Hopps (I used the same code do implement
pkg_delete -R on that later on).
2000-05-16 16:38:15 +00:00