ports/116545: [MAINTAINER-UPDATE] ports-mgmt/bpkg: update to 1.6
Andy Kosela
andy.kosela at gmail.com
Sat Sep 22 10:30:04 UTC 2007
>Number: 116545
>Category: ports
>Synopsis: [MAINTAINER-UPDATE] ports-mgmt/bpkg: update to 1.6
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Sat Sep 22 10:30:03 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator: Andy Kosela
>Release: FreeBSD 6.2-RELEASE-p2 i386
>Organization:
Protect Ya Neck Records/Wu-Tang Management
>Environment:
System: FreeBSD aegis.um.lublin.pl 6.2-RELEASE-p2 FreeBSD 6.2-RELEASE-p2 #0: Tue Feb 27 22:56:09 UTC 2007
>Description:
- Update to 1.6
>How-To-Repeat:
>Fix:
--- bpkg-1.6.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/ports-mgmt/bpkg/Makefile /usr/home/spear/downloads/bpkg-1.6/Makefile
--- /usr/ports/ports-mgmt/bpkg/Makefile Fri Sep 14 12:22:15 2007
+++ /usr/home/spear/downloads/bpkg-1.6/Makefile Sat Sep 22 11:39:39 2007
@@ -2,13 +2,13 @@
# Date created: 24 June 2007
# Whom: Andy Kosela <andy.kosela at gmail.com>
#
-# $FreeBSD: ports/ports-mgmt/bpkg/Makefile,v 1.7 2007/09/14 10:22:15 miwi Exp $
+# $FreeBSD$
#
# This port is self contained in the files directory.
#
PORTNAME= bpkg
-PORTVERSION= 1.5
+PORTVERSION= 1.6
CATEGORIES= ports-mgmt
MASTER_SITES= # none
DISTFILES= # none
diff -ruN --exclude=CVS /usr/ports/ports-mgmt/bpkg/files/bpkg.8 /usr/home/spear/downloads/bpkg-1.6/files/bpkg.8
--- /usr/ports/ports-mgmt/bpkg/files/bpkg.8 Fri Aug 17 10:42:35 2007
+++ /usr/home/spear/downloads/bpkg-1.6/files/bpkg.8 Sat Sep 22 12:20:48 2007
@@ -23,7 +23,7 @@
.\" SUCH DAMAGE.
.\"
.\"
-.Dd August 16, 2007
+.Dd September 22, 2007
.Dt BPKG 8
.Os
.Sh NAME
@@ -31,7 +31,7 @@
.Nd a simple tool for managing FreeBSD packages/ports.
.Sh SYNOPSIS
.Nm
-.Op Fl bBdDeEfFgiIkLmMnoOprsSwz
+.Op Fl bBdDeEfFgiIkLmMnoOpqQrsSwz
.Ar pkg-name ...
.Nm
.Op Fl aAcChltvZ
@@ -54,7 +54,7 @@
The following command line arguments are supported:
.Bl -tag -width F1
.It Ar pkg-name ...
-with no additional arguments, upgrade/install the specified packages.
+with no additional arguments, upgrade/install the specified packages from -RELEASE repository.
.It Fl a
upgrade all installed packages (interactive mode). [no arguments]
.It Fl A
@@ -80,7 +80,7 @@
.It Fl f
show the packing list instructions for the package/port.
.It Fl F
-show the latest available binary package in the FreeBSD repository.
+show the latest available binary package in the FreeBSD repository. [-RELEASE]
.It Fl g
show files that do not match the recorded checksum in the specified installed
package.
@@ -108,6 +108,10 @@
remove config options for the specified package/port.
.It Fl p
search the ports tree and display short info about the port.
+.It Fl q
+upgrade/install the specified packages from -STABLE repository.
+.It Fl Q
+show the latest available binary package in the FreeBSD repository. [-STABLE]
.It Fl r
show the list of all package/port's dependencies.
.It Fl s
diff -ruN --exclude=CVS /usr/ports/ports-mgmt/bpkg/files/bpkg.sh.in /usr/home/spear/downloads/bpkg-1.6/files/bpkg.sh.in
--- /usr/ports/ports-mgmt/bpkg/files/bpkg.sh.in Fri Sep 14 12:22:15 2007
+++ /usr/home/spear/downloads/bpkg-1.6/files/bpkg.sh.in Sat Sep 22 12:12:02 2007
@@ -1,5 +1,5 @@
#!/bin/sh
-# $FreeBSD: ports/ports-mgmt/bpkg/files/bpkg.sh.in,v 1.6 2007/09/14 10:22:15 miwi Exp $
+# $FreeBSD$
# Copyright (c) 2007 Andy Kosela <andy.kosela at gmail.com>
# All rights reserved.
@@ -114,6 +114,81 @@
done
}
+pkg_latest() {
+ root
+ if [ -z "$pkg" ]; then
+ echo "bpkg: you didn't specify any package to install/upgrade"
+ exit 0
+ fi
+
+ echo "Available in ports:"
+ for e in $pkg; do
+ cd /usr/ports && make search path=/$e.* | awk '/Port/ /Path/ { print $0 "\n" }'
+ done
+
+ for z in $pkg; do
+ pkg_install=`cd /usr/ports && make search path=/$z.* | grep Path | cut -d/ -f4,5`
+
+ for e in $pkg_install; do
+ e_stripped=`echo $e | cut -d/ -f2`
+ e_installed=`grep $e$ /var/db/pkg/*/+CONTENTS | grep -w ORIGIN | cut -d/ -f5`
+
+ if [ -z "$e_installed" ]; then
+ echo -n "Do you want to install new $e? [y] "
+ else
+ echo -n "Do you want to upgrade installed $e_installed? [y] "
+ fi
+ read key
+ case $key in
+ n) ;;
+ *)
+ arch=`uname -m`
+ setenv PACKAGESITE ftp://ftp.freebsd.org/pub/FreeBSD/ports/$arch/packages-stable/Latest/
+
+ if [ ! -z "$e_installed" ]; then
+ echo -n "Creating backup package in /usr/tmp/$e_installed.tbz... "
+ cd /usr/tmp/ && pkg_create -b $e_installed
+ echo "Done."
+ fi
+
+ # Fetch and install binary package
+
+ echo ""
+ if [ ! -z "$e_installed" ]; then
+ if [ ! -z "`grep $e /root/ports.lst`" ]; then
+ echo "It seems you installed this package using ports."
+ echo "It is strongly recommended to upgrade it using also ports."
+ echo -n "Do you want to cancel this binary upgrade process? [y] "
+ read key
+ case $key in
+ n)
+ sed -i '' s,$e,,g /root/ports.lst ;;
+ *)
+ unsetenv PACKAGESITE
+ exit 0;;
+ esac
+ fi
+
+ echo "Upgrading installed package:"
+ pkg_delete -f $e_installed 1>/dev/null 2>&1
+ if [ ! -z `pkg_info -oq $e_installed 2>/dev/null` ]; then
+ echo "*** cannot proceed without first removing the package ***"
+ exit 0
+ fi
+ pkg_add -r $e_stripped
+ unsetenv PACKAGESITE
+ exit 0
+ else
+ echo "Installing new package:"
+ pkg_add -r $e_stripped
+ unsetenv PACKAGESITE
+ exit 0
+ fi;;
+ esac
+ done
+ done
+}
+
simulation() {
root
if [ -z "$pkg" ]; then
@@ -539,11 +614,24 @@
for e in $pkg; do
echo "ls $e*" >> /tmp/bpkg.tmp
done
+ echo "ftp.freebsd.org/pub/FreeBSD/ports/$arch/packages-$sys/Latest/"
ftp -4Va ftp://ftp.freebsd.org/pub/FreeBSD/ports/$arch/packages-$sys/Latest/ < /tmp/bpkg.tmp
rm /tmp/bpkg.tmp
exit 0
}
+pkg_latestftp() {
+ arch=`uname -m`
+
+ for e in $pkg; do
+ echo "ls $e*" >> /tmp/bpkg.tmp
+ done
+ echo "ftp.freebsd.org/pub/FreeBSD/ports/$arch/packages-stable/Latest/"
+ ftp -4Va ftp://ftp.freebsd.org/pub/FreeBSD/ports/$arch/packages-stable/Latest/ < /tmp/bpkg.tmp
+ rm /tmp/bpkg.tmp
+ exit 0
+}
+
pkg_delete-xr() {
root
z=`pkg_info -xoQ $pkg 2>/dev/null`
@@ -1026,7 +1114,7 @@
help() {
echo "bpkg version `pkg_info -xI bpkg | cut -d- -f2 | cut -d' ' -f1`"
echo ""
- echo "Usage: bpkg [-bBdDeEfFgiIkLmMnoOprsSwz] pkg-name ..."
+ echo "Usage: bpkg [-bBdDeEfFgiIkLmMnoOpqQrsSwz] pkg-name ..."
echo " bpkg [-aAcChltvZ]"
echo ""
echo "Please see the bpkg(8) man page for more information"
@@ -1037,7 +1125,7 @@
# End of functions
################################################################################
-while getopts b:B:d:D:e:E:f:F:g:i:I:k:L:m:M:n:o:O:p:r:s:S:w:z:aAcChltvZ opts; do
+while getopts b:B:d:D:e:E:f:F:g:i:I:k:L:m:M:n:o:O:p:q:Q:r:s:S:w:z:aAcChltvZ opts; do
case $opts in
b) pkg=$OPTARG
build_port;;
@@ -1077,6 +1165,10 @@
make_rmc;;
p) pkg=$OPTARG
pkg_path;;
+ q) pkg=$OPTARG
+ pkg_latest;;
+ Q) pkg=$OPTARG
+ pkg_latestftp;;
r) pkg=$OPTARG
pkg_info-xr;;
s) pkg=$OPTARG
--- bpkg-1.6.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list