summaryrefslogtreecommitdiff
path: root/usr.sbin/pkg_add
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>2004-09-18 13:28:20 +0000
committerMarc Espie <espie@cvs.openbsd.org>2004-09-18 13:28:20 +0000
commit805486343d0ac603c29520c5909fca8d443acf03 (patch)
treecc77d651fe8b52e7c6f6ffea0f4f3c25718f66d1 /usr.sbin/pkg_add
parent09b99511f272f8ef9662bb36e013887082e2f3ae (diff)
framework to be able to distinguish packages installed manually (and thus
wanted by the user) from packages installed automatically to satisfy a dependency.
Diffstat (limited to 'usr.sbin/pkg_add')
-rw-r--r--usr.sbin/pkg_add/OpenBSD/PackingElement.pm21
-rw-r--r--usr.sbin/pkg_add/pkg_add6
-rw-r--r--usr.sbin/pkg_add/pkg_add.16
3 files changed, 27 insertions, 6 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/PackingElement.pm b/usr.sbin/pkg_add/OpenBSD/PackingElement.pm
index 92841e1a8a1..44700a3a9ad 100644
--- a/usr.sbin/pkg_add/OpenBSD/PackingElement.pm
+++ b/usr.sbin/pkg_add/OpenBSD/PackingElement.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: PackingElement.pm,v 1.25 2004/09/18 08:14:40 espie Exp $
+# $OpenBSD: PackingElement.pm,v 1.26 2004/09/18 13:28:19 espie Exp $
#
# Copyright (c) 2003-2004 Marc Espie <espie@openbsd.org>
#
@@ -506,6 +506,9 @@ sub add
if ($args[0] eq 'no-default-conflict') {
shift;
return OpenBSD::PackingElement::NoDefaultConflict->add($plist);
+ } elsif ($args[0] eq 'manual-installation') {
+ shift;
+ return OpenBSD::PackingElement::ManualInstallation->add($plist);
} else {
die "Unknown option: $args[0]";
}
@@ -527,6 +530,22 @@ sub new
bless {}, $class;
}
+package OpenBSD::PackingElement::ManualInstallation;
+our @ISA=qw(OpenBSD::PackingElement::Unique);
+sub category() { 'manual-installation' }
+sub keyword() { 'option' }
+
+sub stringize()
+{
+ return 'manual-installation';
+}
+
+sub new
+{
+ my ($class, @args) = @_;
+ bless {}, $class;
+}
+
# The special elements that don't end in the right place
package OpenBSD::PackingElement::ExtraInfo;
our @ISA=qw(OpenBSD::PackingElement);
diff --git a/usr.sbin/pkg_add/pkg_add b/usr.sbin/pkg_add/pkg_add
index a4fd519094d..472bb551cd7 100644
--- a/usr.sbin/pkg_add/pkg_add
+++ b/usr.sbin/pkg_add/pkg_add
@@ -1,7 +1,7 @@
#! /usr/bin/perl
# ex:ts=8 sw=4:
-# $OpenBSD: pkg_add,v 1.55 2004/09/18 09:27:05 espie Exp $
+# $OpenBSD: pkg_add,v 1.56 2004/09/18 13:28:19 espie Exp $
#
# Copyright (c) 2003-2004 Marc Espie <espie@openbsd.org>
#
@@ -259,8 +259,8 @@ package main;
my $errors = 0;
-our ($opt_v, $opt_n, $opt_I, $opt_f, $opt_L, $opt_B, $opt_A, $opt_P);
-getopts('vnIL:f:B:A:P:');
+our ($opt_a, $opt_v, $opt_n, $opt_I, $opt_f, $opt_L, $opt_B, $opt_A, $opt_P);
+getopts('avnIL:f:B:A:P:');
if ($opt_f) {
%forced = map {($_, 1)} split(/,/, $opt_f);
}
diff --git a/usr.sbin/pkg_add/pkg_add.1 b/usr.sbin/pkg_add/pkg_add.1
index add076a3f34..af3256a44e3 100644
--- a/usr.sbin/pkg_add/pkg_add.1
+++ b/usr.sbin/pkg_add/pkg_add.1
@@ -1,4 +1,4 @@
-.\" $OpenBSD: pkg_add.1,v 1.15 2004/09/14 22:58:30 espie Exp $
+.\" $OpenBSD: pkg_add.1,v 1.16 2004/09/18 13:28:19 espie Exp $
.\"
.\" FreeBSD install - a package for the installation and maintenance
.\" of non-core utilities.
@@ -25,7 +25,7 @@
.Nd install software package distributions
.Sh SYNOPSIS
.Nm pkg_add
-.Op Fl Inv
+.Op Fl aInv
.Op Fl A Ar arch
.Op Fl B Ar pkg-destdir
.Op Fl f Ar keys
@@ -116,6 +116,8 @@ Be sure the specified package(s) are from trusted sources.
.Pp
The options are as follows:
.Bl -tag -width keyword
+.It Fl a
+Automated package installation, do not record packages as installed manually.
.It Fl v
Turn on verbose output.
.It Fl I