summaryrefslogtreecommitdiffstats
path: root/usr.sbin/sysinstall/package.c
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1999-05-12 06:11:32 +0000
committerjkh <jkh@FreeBSD.org>1999-05-12 06:11:32 +0000
commit80029068a7af662fa156d7fb3aa719b63b80c6ee (patch)
treef7323d5eb545f4e6c7f1597753e88b0bf7d86ca8 /usr.sbin/sysinstall/package.c
parent2a028a05aa2e43987d309510e9b62d65a3c89d3e (diff)
downloadFreeBSD-src-80029068a7af662fa156d7fb3aa719b63b80c6ee.zip
FreeBSD-src-80029068a7af662fa156d7fb3aa719b63b80c6ee.tar.gz
Set PKG_ADD_BASE hint in a certain case.
Diffstat (limited to 'usr.sbin/sysinstall/package.c')
-rw-r--r--usr.sbin/sysinstall/package.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/usr.sbin/sysinstall/package.c b/usr.sbin/sysinstall/package.c
index 43d99b6..f021ce6 100644
--- a/usr.sbin/sysinstall/package.c
+++ b/usr.sbin/sysinstall/package.c
@@ -4,7 +4,7 @@
* This is probably the last program in the `sysinstall' line - the next
* generation being essentially a complete rewrite.
*
- * $Id: package.c,v 1.67 1999/04/27 14:33:29 jkh Exp $
+ * $Id: package.c,v 1.68 1999/05/07 20:31:36 jkh Exp $
*
* Copyright (c) 1995
* Jordan Hubbard. All rights reserved.
@@ -99,7 +99,7 @@ package_exists(char *name)
int
package_extract(Device *dev, char *name, Boolean depended)
{
- char path[511];
+ char tmp[200], path[511];
int ret, last_msg = 0;
FILE *fp;
@@ -128,13 +128,18 @@ package_extract(Device *dev, char *name, Boolean depended)
if (name[0] == '@') {
/* @ at the beginning of the package name means "get latest" */
- name++;
- sprintf(path, "packages/Latest/%s.tgz", name);
+ sprintf(path, "packages/Latest/%s.tgz", ++name);
}
else if (!index(name, '/'))
sprintf(path, "packages/All/%s%s", name, strstr(name, ".tgz") ? "" : ".tgz");
else
sprintf(path, "%s%s", name, strstr(name, ".tgz") ? "" : ".tgz");
+
+ /* Set hints for pkg_add */
+ snprintf(tmp, sizeof tmp, "%s/Packages/All/", dev->name);
+ setenv("PKG_ADD_BASE", tmp, 1);
+ if (isDebug())
+ msgDebug("Set PKG_ADD_BASE to %s\n", tmp);
fp = dev->get(dev, path, TRUE);
if (fp) {
int i = 0, tot, pfd[2];
OpenPOWER on IntegriCloud