summaryrefslogtreecommitdiffstats
path: root/usr.sbin/pkg_install
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2007-12-09 02:06:00 +0000
committerobrien <obrien@FreeBSD.org>2007-12-09 02:06:00 +0000
commite1a1c3d600964d6f77b728ee643627c90845d1d1 (patch)
tree1f4e6b51ca396d674b0c8276ae2b5f5a0d949e52 /usr.sbin/pkg_install
parentd030746b0b1ec27b233f05ca5964da5a7604242d (diff)
downloadFreeBSD-src-e1a1c3d600964d6f77b728ee643627c90845d1d1.zip
FreeBSD-src-e1a1c3d600964d6f77b728ee643627c90845d1d1.tar.gz
Add the 'pkg_search' script.
This makes it easier to figure what packages you want to install. Submitted by: Matthias Schmidt <schmidtm @ mathematik . uni-marburg . de>
Diffstat (limited to 'usr.sbin/pkg_install')
-rw-r--r--usr.sbin/pkg_install/Makefile2
-rw-r--r--usr.sbin/pkg_install/add/pkg_add.11
-rw-r--r--usr.sbin/pkg_install/create/pkg_create.11
-rw-r--r--usr.sbin/pkg_install/delete/pkg_delete.11
-rw-r--r--usr.sbin/pkg_install/info/pkg_info.11
-rw-r--r--usr.sbin/pkg_install/search/Makefile6
-rw-r--r--usr.sbin/pkg_install/search/pkg_search.174
-rw-r--r--usr.sbin/pkg_install/search/pkg_search.sh86
-rw-r--r--usr.sbin/pkg_install/updating/pkg_updating.11
-rw-r--r--usr.sbin/pkg_install/version/pkg_version.11
10 files changed, 173 insertions, 1 deletions
diff --git a/usr.sbin/pkg_install/Makefile b/usr.sbin/pkg_install/Makefile
index d89e0ac..5c51667 100644
--- a/usr.sbin/pkg_install/Makefile
+++ b/usr.sbin/pkg_install/Makefile
@@ -2,7 +2,7 @@
.include <bsd.own.mk>
-SUBDIR= lib add create delete info ${_sign} updating version
+SUBDIR= lib add create delete info search ${_sign} updating version
.if ${MK_OPENSSL} != "no"
_sign= sign
diff --git a/usr.sbin/pkg_install/add/pkg_add.1 b/usr.sbin/pkg_install/add/pkg_add.1
index e20f224..24a20ef 100644
--- a/usr.sbin/pkg_install/add/pkg_add.1
+++ b/usr.sbin/pkg_install/add/pkg_add.1
@@ -559,6 +559,7 @@ Default location of the installed package database.
.Xr pkg_create 1 ,
.Xr pkg_delete 1 ,
.Xr pkg_info 1 ,
+.Xr pkg_search 1 ,
.Xr pkg_version 1 ,
.Xr mktemp 3 ,
.Xr sysconf 3 ,
diff --git a/usr.sbin/pkg_install/create/pkg_create.1 b/usr.sbin/pkg_install/create/pkg_create.1
index 6fb6d58..525908b 100644
--- a/usr.sbin/pkg_install/create/pkg_create.1
+++ b/usr.sbin/pkg_install/create/pkg_create.1
@@ -608,6 +608,7 @@ is unsuitable.
.Xr pkg_add 1 ,
.Xr pkg_delete 1 ,
.Xr pkg_info 1 ,
+.Xr pkg_search 1 ,
.Xr pkg_version 1 ,
.Xr sysconf 3
.Sh HISTORY
diff --git a/usr.sbin/pkg_install/delete/pkg_delete.1 b/usr.sbin/pkg_install/delete/pkg_delete.1
index 3f10b9c..1538630 100644
--- a/usr.sbin/pkg_install/delete/pkg_delete.1
+++ b/usr.sbin/pkg_install/delete/pkg_delete.1
@@ -281,6 +281,7 @@ Default location of the installed package database.
.Xr pkg_add 1 ,
.Xr pkg_create 1 ,
.Xr pkg_info 1 ,
+.Xr pkg_search 1 ,
.Xr pkg_version 1 ,
.Xr mktemp 3 ,
.Xr mtree 8
diff --git a/usr.sbin/pkg_install/info/pkg_info.1 b/usr.sbin/pkg_install/info/pkg_info.1
index 17c0bba..dcbb35c 100644
--- a/usr.sbin/pkg_install/info/pkg_info.1
+++ b/usr.sbin/pkg_install/info/pkg_info.1
@@ -280,6 +280,7 @@ Default location of the installed package database.
.Xr pkg_add 1 ,
.Xr pkg_create 1 ,
.Xr pkg_delete 1 ,
+.Xr pkg_search 1 ,
.Xr pkg_version 1 ,
.Xr mktemp 3 ,
.Xr mtree 8
diff --git a/usr.sbin/pkg_install/search/Makefile b/usr.sbin/pkg_install/search/Makefile
new file mode 100644
index 0000000..281ce47
--- /dev/null
+++ b/usr.sbin/pkg_install/search/Makefile
@@ -0,0 +1,6 @@
+# $FreeBSD$
+
+SCRIPTS=pkg_search.sh
+MAN= pkg_search.1
+
+.include <bsd.prog.mk>
diff --git a/usr.sbin/pkg_install/search/pkg_search.1 b/usr.sbin/pkg_install/search/pkg_search.1
new file mode 100644
index 0000000..80f4328
--- /dev/null
+++ b/usr.sbin/pkg_install/search/pkg_search.1
@@ -0,0 +1,74 @@
+.\"-
+.\" Copyright (c) 2006 Matthias Schmidt <schmidtm@mathematik.uni-marburg.de>
+.\"
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions are met:
+.\"
+.\" - Redistributions of source code must retain the above copyright notice,
+.\" this list of conditions and the following disclaimer.
+.\" - Redistributions in binary form must reproduce the above copyright notice,
+.\" this list of conditions and the following disclaimer in the documentation
+.\" and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+.\" CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+.\" EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+.\" PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+.\" PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+.\" LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+.\" NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+.\" SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd March 12, 2006
+.Dt PKG_SEARCH 1
+.Os
+.Sh NAME
+.Nm pkg_search
+.Nd "pkg_search command manual page"
+.Sh SYNOPSIS
+.Nm
+.Op Fl i | Fl k | Fl r
+.Ar name
+.Sh DESCRIPTION
+.Nm
+querys the appropriate database file for a given package name.
+By default the complete package name and Comment is displayed.
+.Pp
+The options are as follows:
+.Bl -tag -width ".Fl d Ar argument"
+.It Fl i
+Print verbose information (Ports directory, URL, depencies)
+.It Fl k
+Also query the Info and WWW field.
+.It Fl r
+Print the directory within the Ports Collection where the port lives.
+.It Ar name
+Required package
+.Ar name .
+.El
+.Sh EXAMPLES
+The following is an example of a typical usage
+of the
+.Nm
+command:
+.Pp
+.Dl "pkg_search -i ctwm"
+.Sh SEE ALSO
+.Xr pkg_add 1 ,
+.Xr pkg_create 1 ,
+.Xr pkg_delete 1 ,
+.Xr pkg_info 1 ,
+.Xr pkg_search 1
+.Sh AUTHORS
+.Nm
+was written by
+.An Matthias Schmidt Aq schmidtm@mathematik.uni-marburg.de
+and
+.An David O'Brien Aq obrien@FreeBSD.org .
diff --git a/usr.sbin/pkg_install/search/pkg_search.sh b/usr.sbin/pkg_install/search/pkg_search.sh
new file mode 100644
index 0000000..6dbf5e3
--- /dev/null
+++ b/usr.sbin/pkg_install/search/pkg_search.sh
@@ -0,0 +1,86 @@
+#! /bin/sh
+#-
+# Copyright (c) 2007 David O'Brien <obrien@FreeBSD.org>
+# Copyright (c) 2006 Matthias Schmidt <schmidtm @ mathematik . uni-marburg.de>
+#
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# - Redistributions of source code must retain the above copyright notice,
+# this list of conditions and the following disclaimer.
+# - Redistributions in binary form must reproduce the above copyright notice,
+# this list of conditions and the following disclaimer in the documentation
+# and/or other materials provided with the distribution.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# $FreeBSD$
+#
+
+PORTSDIR=${PORTSDIR:-/usr/ports}
+id=`uname -r | cut -d '.' -f 1`
+INDEXFILE=${INDEXFILE:-INDEX-$id}
+
+if [ -z $1 ]; then
+ echo "Usage: $0 [ -i | -k | -r] <name>"
+ exit 1
+fi
+
+if [ ! -d $PORTSDIR ]; then
+ echo "No Ports Tree Found! Please install."
+ exit 1
+fi
+
+case "$1" in
+-i)
+ awk -F\| -v name="$2" \
+ '{\
+ if ($1 ~ name) { \
+ split($2, a, "/"); \
+ printf("Name\t: %s-50\nDir\t: %-50s\nDesc\t: %-50s\nURL\t: %-50s\nDeps\t: %s\n\n", $1, $2, $4, $10, $9); \
+ }
+ }' ${PORTSDIR}/${INDEXFILE}
+ ;;
+-k)
+ awk -F\| -v name="$2" \
+ '{\
+ if ($1 ~ name || $4 ~ name || $10 ~ name) { \
+ split($2, a, "/"); \
+ printf("%-20s\t%-25s\n", $1, $4); \
+ }
+ }' ${PORTSDIR}/${INDEXFILE}
+
+ ;;
+-r)
+ awk -F\| -v name="$2" \
+ '{\
+ if ($1 ~ name) { \
+ split($2, a, "/"); \
+ printf("%-20s\t%s\n", $1, $2); \
+ }
+ }' ${PORTSDIR}/${INDEXFILE}
+ ;;
+*)
+ awk -F\| -v name="$1" \
+ '{\
+ if ($1 ~ name) { \
+ split($2, a, "/"); \
+ printf("%-20s\t%-25s\n", $1, $4); \
+ }
+ }' ${PORTSDIR}/${INDEXFILE}
+ ;;
+esac
+
+exit $?
diff --git a/usr.sbin/pkg_install/updating/pkg_updating.1 b/usr.sbin/pkg_install/updating/pkg_updating.1
index 16554b6..e0f5784 100644
--- a/usr.sbin/pkg_install/updating/pkg_updating.1
+++ b/usr.sbin/pkg_install/updating/pkg_updating.1
@@ -79,6 +79,7 @@ The default ports directory and default location of the UPDATING file
.Xr pkg_add 1 ,
.Xr pkg_create 1 ,
.Xr pkg_delete 1 ,
+.Xr pkg_search 1 ,
.Xr pkg_version 1
.Sh AUTHORS
.An Beat Gätzi Aq beat@chruetertee.ch
diff --git a/usr.sbin/pkg_install/version/pkg_version.1 b/usr.sbin/pkg_install/version/pkg_version.1
index 0607ada..a0c6ebd 100644
--- a/usr.sbin/pkg_install/version/pkg_version.1
+++ b/usr.sbin/pkg_install/version/pkg_version.1
@@ -239,6 +239,7 @@ option has been deprecated and is no longer supported.
.Xr pkg_create 1 ,
.Xr pkg_delete 1 ,
.Xr pkg_info 1 ,
+.Xr pkg_search 1 ,
.Xr portupgrade 8
.Sh AUTHORS
The
OpenPOWER on IntegriCloud