Commit pkg_radd(1) on behalf of corecode@. pkg_radd is a wrapper for
authorMatthias Schmidt <matthias@dragonflybsd.org>
Sat, 5 Jan 2008 10:14:26 +0000 (10:14 +0000)
committerMatthias Schmidt <matthias@dragonflybsd.org>
Sat, 5 Jan 2008 10:14:26 +0000 (10:14 +0000)
pkg_add(1) to install binary packages.  This allows users to install binary
packages out-of-the-box without fetching the pkgsrc(7) tree or without
looking at any site hosting binary packages.

  # pkg_radd -v host
  [...]
  extract: Package name is host-20040812
  extract: CWD to /usr/pkg
  [...]
  Attempting to record package into /var/db/pkg/host-20040812.
  Package host-20040812 registered in /var/db/pkg/host-20040812

The mentioned /etc/settings.conf will follow in a later commit.  pkg_radd
will work fine without that file.

Submitted-by: corecode@
mdoc-ok-by: swildner@

usr.bin/Makefile
usr.bin/pkg_radd/Makefile [new file with mode: 0644]
usr.bin/pkg_radd/pkg_radd.1 [new file with mode: 0644]
usr.bin/pkg_radd/pkg_radd.sh [new file with mode: 0644]

index 0f21bad..4b01324 100644 (file)
@@ -1,6 +1,6 @@
 #      From: @(#)Makefile      8.3 (Berkeley) 1/7/94
 # $FreeBSD: src/usr.bin/Makefile,v 1.144.2.17 2003/01/04 17:17:07 obrien Exp $
-# $DragonFly: src/usr.bin/Makefile,v 1.40 2007/12/04 18:24:17 dillon Exp $
+# $DragonFly: src/usr.bin/Makefile,v 1.41 2008/01/05 10:14:26 matthias Exp $
 
 # XXX MISSING:         deroff diction graph learn plot
 #                      spell spline struct xsend
@@ -136,6 +136,7 @@ SUBDIR=     alias \
        patch \
        pathchk \
        pctrack \
+       pkg_radd \
        pkg_search \
        pkill \
        pr \
diff --git a/usr.bin/pkg_radd/Makefile b/usr.bin/pkg_radd/Makefile
new file mode 100644 (file)
index 0000000..36144bb
--- /dev/null
@@ -0,0 +1,7 @@
+# $DragonFly: src/usr.bin/pkg_radd/Makefile,v 1.1 2008/01/05 10:14:26 matthias Exp $
+#
+
+SCRIPTS=pkg_radd.sh
+MAN=   pkg_radd.1
+
+.include <bsd.prog.mk>
diff --git a/usr.bin/pkg_radd/pkg_radd.1 b/usr.bin/pkg_radd/pkg_radd.1
new file mode 100644 (file)
index 0000000..238c02a
--- /dev/null
@@ -0,0 +1,88 @@
+.\"-
+.\" Copyright (c) 2007 The DragonFly Project.
+.\" 
+.\" 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.
+.\" - Neither the name of The DragonFly Project nor the names of its
+.\"   contributors may be used to endorse or promote products derived
+.\"   from this software without specific, prior written permission.
+.\"
+.\" 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.
+.\"
+.\" $DragonFly: src/usr.bin/pkg_radd/pkg_radd.1,v 1.1 2008/01/05 10:14:26 matthias Exp $
+.\"
+.Dd January 3, 2008
+.Dt PKG_RADD 1
+.Os
+.Sh NAME
+.Nm pkg_radd
+.Nd installs packages
+.Sh SYNOPSIS
+.Nm
+.Ar package ...
+.Sh DESCRIPTION
+.Nm
+acts as a wrapper for
+.Xr pkg_add 1 .
+It sets the
+.Ev PKG_PATH
+variable to the
+.Dx
+default
+.Xr pkgsrc 7
+binary package server or reads out a value from the global
+.Pa /etc/settings.conf
+config file.
+All options passed to
+.Nm
+are passed to
+.Xr pkg_add 1 .
+.Sh EXAMPLES
+The following is an example of a typical usage of the
+.Nm
+command:
+.Pp
+.Dl "# pkg_radd host"
+.Pp
+If you don't know which version of your desired package to install you can
+use
+.Xr pkg_search 1
+to find the correct version.
+.Pp
+.Dl "# pkg_search fvwm2"
+.Dl "# pkg_radd -v fvwm-2.4.20nb1"
+.Sh SEE ALSO
+.Xr pkg_add 1 ,
+.Xr pkg_create 1 ,
+.Xr pkg_delete 1 ,
+.Xr pkg_info 1 ,
+.Xr pkg_search 1 ,
+.Xr pkgsrc 7
+.Sh AUTHORS
+.Nm
+was written by
+.An Simon 'corecode' Schubert Aq corecode@fs.ei.tum.de .
+.Sh HISTORY
+The
+.Nm
+utility first appeared in
+.Dx 1.11 .
+
diff --git a/usr.bin/pkg_radd/pkg_radd.sh b/usr.bin/pkg_radd/pkg_radd.sh
new file mode 100644 (file)
index 0000000..e822f3b
--- /dev/null
@@ -0,0 +1,47 @@
+#!/bin/sh
+#
+# Copyright (c) 2007 The DragonFly Project.  All rights reserved.
+#
+# This code is derived from software contributed to The DragonFly Project
+# by Simon 'corecode' Schubert <corecode@fs.ei.tum.de>.
+#
+# 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.
+# - Neither the name of The DragonFly Project nor the names of its
+#   contributors may be used to endorse or promote products derived
+#   from this software without specific, prior written permission.
+#
+# 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.
+#
+# $DragonFly: src/usr.bin/pkg_radd/pkg_radd.sh,v 1.1 2008/01/05 10:14:26 matthias Exp $
+
+if [ -z "$BINPKG_SITES" ]
+then
+       BINPKG_SITES=http://pkgbox.dragonflybsd.org/
+       [ -f /etc/settings.conf ] && . /etc/settings.conf
+fi
+
+if [ -z "$PKG_PATH" ]
+then
+       PKG_PATH=$BINPKG_SITES/All
+fi
+
+export PKG_PATH
+
+exec pkg_add "$@"