aboutsummaryrefslogtreecommitdiff
path: root/sysutils/boxbackup
diff options
context:
space:
mode:
authorRyan Steinmetz <zi@FreeBSD.org>2011-08-25 16:03:49 +0000
committerRyan Steinmetz <zi@FreeBSD.org>2011-08-25 16:03:49 +0000
commitae1dfec64ac41caa6a9805f9ece62eb881296065 (patch)
treec80f5d0bee8e9d60123e33e9ce7be9e204426a29 /sysutils/boxbackup
parenta4d4769516d5610a89b3dfac2c75daffcae861ce (diff)
downloadports-ae1dfec64ac41caa6a9805f9ece62eb881296065.tar.gz
ports-ae1dfec64ac41caa6a9805f9ece62eb881296065.zip
Notes
Diffstat (limited to 'sysutils/boxbackup')
-rw-r--r--sysutils/boxbackup/Makefile93
-rw-r--r--sysutils/boxbackup/distinfo4
-rw-r--r--sysutils/boxbackup/files/999.boxbackup.in66
-rw-r--r--sysutils/boxbackup/files/bbackupd.in (renamed from sysutils/boxbackup/files/bbackupd.sh.in)0
-rw-r--r--sysutils/boxbackup/files/bbstored.in (renamed from sysutils/boxbackup/files/bbstored.sh.in)0
-rw-r--r--sysutils/boxbackup/files/patch-configure.ac35
-rw-r--r--sysutils/boxbackup/files/patch-lib-common-BoxPortsAndFiles.h25
-rw-r--r--sysutils/boxbackup/files/pkg-message.client4
-rw-r--r--sysutils/boxbackup/files/pkg-message.server4
-rw-r--r--sysutils/boxbackup/pkg-deinstall69
-rw-r--r--sysutils/boxbackup/pkg-descr2
-rw-r--r--sysutils/boxbackup/pkg-install36
-rw-r--r--sysutils/boxbackup/pkg-plist21
13 files changed, 129 insertions, 230 deletions
diff --git a/sysutils/boxbackup/Makefile b/sysutils/boxbackup/Makefile
index f4c53f0e2a4d..c4c6faa8f873 100644
--- a/sysutils/boxbackup/Makefile
+++ b/sysutils/boxbackup/Makefile
@@ -6,32 +6,37 @@
#
PORTNAME= boxbackup
-PORTVERSION= 0.10
-PORTREVISION= 2
+PORTVERSION= 0.11.1
CATEGORIES= sysutils
MASTER_SITES= SF
+PKGNAMESUFFIX= ${CLIENT_OR_SERVER}
EXTRACT_SUFX= .tgz
MAINTAINER= james@netinertia.co.uk
COMMENT= An open source, completely automatic on-line backup system for UNIX
+LICENSE= BSD GPLv2
+LICENSE_COMB= dual
+LICENSE_FILE= ${WRKSRC}/LICENSE-DUAL.txt
+
USE_OPENSSL= yes
GNU_CONFIGURE= yes
USE_PERL5= yes
USE_AUTOTOOLS= autoconf aclocal autoheader
ACLOCAL_ARGS+= -I ${WRKSRC}/infrastructure/m4
+MAKE_JOBS_UNSAFE=yes
+
+CONFIGURE_ARGS+=--sysconfdir=${PREFIX}/etc
+
PKGMESSAGE= ${WRKDIR}/pkg-message
OPTIONS= CLIENT "Install the bbackupd client" On \
SERVER "Install the bbstored server" On \
- GNUREADLINE "Enable the use of GNU readline" Off \
- TESTS "Allows use of a 'test' target to run tests" Off
+ GNUREADLINE "Enable the use of GNU readline" Off
.include <bsd.port.pre.mk>
-TARGETOS!= ${ECHO_CMD} `${UNAME} -s``${UNAME} -r | ${SED} -e 's/[-(].*//'` | ${TR} A-Z a-z
-
.if defined(WITH_GNUREADLINE)
CONFIGURE_ARGS+=--enable-gnu-readline
.endif
@@ -41,55 +46,48 @@ IGNORE= requires at least CLIENT or SERVER to be defined.\
Please 'make config' again
.endif
-.if defined(WITHOUT_CLIENT)
-PLIST_SUB+= CLIENT="@comment "
-.else
-USE_RC_SUBR+= bbackupd.sh
+MANCOMPRESSED= yes
+.if defined(WITH_CLIENT)
+USE_RC_SUBR+= bbackupd
PLIST_SUB+= CLIENT=""
-ALL_TARGET+= parcels/${DISTNAME}-backup-client-${TARGETOS}.tgz
+ALL_TARGET+= build-backup-client
INSTALL_TARGET+=install-backup-client
+MAN5+= bbackupd.conf.5
+MAN8+= bbackupd.8 bbackupctl.8 bbackupd-config.8 bbackupquery.8
+SUB_FILES+= 999.boxbackup
+.else
+PLIST_SUB+= CLIENT="@comment "
.endif
-.if defined(WITHOUT_SERVER)
-PLIST_SUB+= SERVER="@comment "
-.else
-USE_RC_SUBR+= bbstored.sh
+.if defined(WITH_SERVER)
+USE_RC_SUBR+= bbstored
+USERS+= _bbstored
+GROUPS+= _bbstored
PLIST_SUB+= SERVER=""
-ALL_TARGET+= parcels/${DISTNAME}-backup-server-${TARGETOS}.tgz
+ALL_TARGET+= build-backup-server
INSTALL_TARGET+=install-backup-server
+MAN5+= bbstored.conf.5 raidfile.conf.5
+MAN8+= bbstored.8 bbstoreaccounts.8 bbstored-certs.8 bbstored-config.8 raidfile-config.8
+.else
+PLIST_SUB+= SERVER="@comment "
.endif
-CONFLICTS= boxbackup-server-[0-9]* boxbackup-client-[0-9]*
.if defined(WITHOUT_CLIENT)
-CONFLICTS= boxbackup-client-[0-9]*
-PKGNAMESUFFIX= -server
+# if this is a server-only install, CONFLICT with an install of the CLIENT or both
+CONFLICTS= boxbackup-client-[0-9]* boxbackup-[0-9]*
+CLIENT_OR_SERVER=-server
.elif defined(WITHOUT_SERVER)
-CONFLICTS= boxbackup-server-[0-9]*
-PKGNAMESUFFIX= -client
+# if this is a client-only install, CONFLICT with an install of the SERVER or both
+CONFLICTS= boxbackup-server-[0-9]* boxbackup-[0-9]*
+CLIENT_OR_SERVER=-client
+.else
+# if we install boxbackup-[0-9]*, we should CONFLICT with a CLIENT or SERVER only install
+# PKGNAMESUFFIX is empty at this point
+CONFLICTS= boxbackup-server-[0-9]* boxbackup-client-[0-9]*
.endif
post-patch:
-# Replace hard-coded /etc/box with $PREFIX/etc/box
- @${REINPLACE_CMD} -e 's,%%PREFIX%%,${PREFIX},' \
- ${WRKSRC}/lib/common/BoxPortsAndFiles.h
-# Fix path to perl
- @${FIND} ${WRKSRC} -name "*.pl" -exec \
- ${REINPLACE_CMD} -e 's,/usr/bin/perl,${PERL},g' {} \;
- @${REINPLACE_CMD} -e 's,/usr/bin/perl,${PERL},g' \
- ${WRKSRC}/bin/bbackupd/bbackupd-config \
- ${WRKSRC}/bin/bbstored/bbstored-certs \
- ${WRKSRC}/bin/bbstored/bbstored-config \
- ${WRKSRC}/lib/raidfile/raidfile-config
- @${FIND} ${WRKSRC} -name "Makefile.extra" -exec \
- ${REINPLACE_CMD} -e 's,perl,${PERL},g' {} \;
- @${REINPLACE_CMD} -e 's,perl ,${PERL} ,g' \
- ${WRKSRC}/test/bbackupd/testfiles/bbackupd.conf \
- ${WRKSRC}/infrastructure/makebuildenv.pl
- @${REINPLACE_CMD} -e 's,"perl ,PERL_EXECUTABLE " ,g' \
- ${WRKSRC}/test/backupstorefix/testbackupstorefix.cpp
-# Fix hard-coded g++
- @${REINPLACE_CMD} -e 's,g++,${CXX},' \
- ${WRKSRC}/infrastructure/makebuildenv.pl
+ @${REINPLACE_CMD} -e '/html/d' ${WRKSRC}/parcels.txt
.if !defined(WITHOUT_CLIENT)
@${CAT} ${FILESDIR}/pkg-message.client >> ${PKGMESSAGE}
.endif
@@ -97,25 +95,22 @@ post-patch:
@${CAT} ${FILESDIR}/pkg-message.server >> ${PKGMESSAGE}
.endif
-.if !defined(WITHOUT_SERVER)
-pre-install:
- @${SETENV} PKG_PREFIX=${PREFIX} \
- ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
-.endif
+post-configure:
+ @${REINPLACE_CMD} -e '/share.doc.boxbackup/d' ${WRKSRC}/parcels/scripts/install-backup-*
post-install:
.if !defined(WITHOUT_CLIENT)
@${MKDIR} -m 0700 ${PREFIX}/etc/box/bbackupd
+ @${MKDIR} ${PREFIX}/etc/periodic/monthly
+ ${INSTALL_SCRIPT} ${WRKDIR}/999.boxbackup ${PREFIX}/etc/periodic/monthly
.endif
.if !defined(WITHOUT_SERVER)
@${MKDIR} -m 0700 ${PREFIX}/etc/box/bbstored
.endif
@${CAT} ${PKGMESSAGE}
-.if defined(WITH_TESTS)
test:
@${ECHO_CMD} "===> Running tests"
@${MAKE} -C ${WRKSRC} test
-.endif
.include <bsd.port.post.mk>
diff --git a/sysutils/boxbackup/distinfo b/sysutils/boxbackup/distinfo
index 0054cf1ab112..80e6c3f2b41a 100644
--- a/sysutils/boxbackup/distinfo
+++ b/sysutils/boxbackup/distinfo
@@ -1,2 +1,2 @@
-SHA256 (boxbackup-0.10.tgz) = 09e88f4ee26b76b3d6e6a0cf3fc374e55d79dd84e9884dfc6a7635593862d361
-SIZE (boxbackup-0.10.tgz) = 842450
+SHA256 (boxbackup-0.11.1.tgz) = 1328b010477259c4767276dbfebab6580e883336cc9d25696c39991b09cc6d32
+SIZE (boxbackup-0.11.1.tgz) = 1863270
diff --git a/sysutils/boxbackup/files/999.boxbackup.in b/sysutils/boxbackup/files/999.boxbackup.in
new file mode 100644
index 000000000000..989d62d6b3e2
--- /dev/null
+++ b/sysutils/boxbackup/files/999.boxbackup.in
@@ -0,0 +1,66 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# Box Backup monthly store compare
+#
+# Add the following to /etc/periodic.conf to enable the monthly compare:
+# monthly_boxbackup_compare_enable="YES"
+#
+# By default the script will run "compare -aq". If you want to change this to
+# run a full compare, add the following to periodic.conf:
+# monthly_boxbackup_compare_args="-a"
+#
+# NOTE: This script will cause the monthly periodic(8) run to take much longer
+# than usual, depending on the size of your backup store.
+#
+# If you wish to run this independently of the monthly job, you can create a
+# new periodic entry as follows:
+#
+# # mkdir /usr/local/etc/periodic/boxbackup
+# # mv /usr/local/etc/periodic/monthly/999.boxbackup \
+# /usr/local/etc/periodic/boxbackup/100.compare
+#
+# Then add the following to /etc/crontab:
+# 30 5 1 * * root periodic boxbackup
+#
+# (adjust the timings as necessary)
+#
+# You may also wish to add boxbackup_output="root" to periodic.conf so that
+# mail comes from periodic rather than cron.
+
+monthly_boxbackup_compare_enable="NO"
+monthly_boxbackup_compare_args="-aq"
+
+if [ -r /etc/defaults/periodic.conf ]
+then
+ . /etc/defaults/periodic.conf
+ source_periodic_confs
+fi
+
+rc=0
+
+case "$monthly_boxbackup_compare_enable" in
+ [Yy][Ee][Ss])
+ echo
+ echo "Running Box Backup store compare:"
+ %%PREFIX%%/sbin/bbackupquery -q "compare -c $monthly_boxbackup_compare_args" quit
+
+ # Return codes:
+ # 1 Comparison was exact
+ # 2 Differences were found
+ # 3 An error occured
+ if [ $? -eq 2 ]; then
+ echo
+ echo "Differences were found. Please check the output."
+ rc=3
+ elif [ $? -eq 3 ]; then
+ echo
+ echo "An error occurred. Please check the output."
+ rc=3
+ fi
+
+ ;;
+esac
+
+exit $rc
diff --git a/sysutils/boxbackup/files/bbackupd.sh.in b/sysutils/boxbackup/files/bbackupd.in
index b1e5febae656..b1e5febae656 100644
--- a/sysutils/boxbackup/files/bbackupd.sh.in
+++ b/sysutils/boxbackup/files/bbackupd.in
diff --git a/sysutils/boxbackup/files/bbstored.sh.in b/sysutils/boxbackup/files/bbstored.in
index 9554a6bd0e2f..9554a6bd0e2f 100644
--- a/sysutils/boxbackup/files/bbstored.sh.in
+++ b/sysutils/boxbackup/files/bbstored.in
diff --git a/sysutils/boxbackup/files/patch-configure.ac b/sysutils/boxbackup/files/patch-configure.ac
deleted file mode 100644
index e74613444509..000000000000
--- a/sysutils/boxbackup/files/patch-configure.ac
+++ /dev/null
@@ -1,35 +0,0 @@
---- configure.ac.orig Thu Mar 16 22:26:39 2006
-+++ configure.ac Thu Mar 16 22:28:31 2006
-@@ -2,7 +2,7 @@
- # Process this file with autoconf to produce a configure script.
-
- AC_PREREQ(2.59)
--AC_INIT([Box Backup], 0.09, [box@fluffy.co.uk])
-+AC_INIT([Box Backup], 0.10, [box@fluffy.co.uk])
- AC_CONFIG_SRCDIR([lib/common/Box.h])
- AC_CONFIG_HEADERS([lib/common/BoxConfig.h])
-
-@@ -26,6 +26,12 @@
- # Use -rdynamic if we have gcc. This is needed for backtrace
- AC_SUBST([LDADD_RDYNAMIC], ['-rdynamic'])
- fi
-+AC_PATH_PROG([PERL], [perl], [no])
-+if test "x$PERL" != "xno"; then
-+ AC_DEFINE_UNQUOTED([PERL_EXECUTABLE], ["$PERL"], [Location of the perl executable])
-+else
-+ AC_MSG_ERROR([[perl executable was not found]])
-+fi
-
-
- ### Checks for libraries.
-@@ -208,8 +214,8 @@
-
- # Configure the Box build system
- echo
--perl ./infrastructure/makebuildenv.pl &&
-- perl ./infrastructure/makeparcels.pl
-+$PERL ./infrastructure/makebuildenv.pl &&
-+ $PERL ./infrastructure/makeparcels.pl
-
- # Write summary of important info
- cat <<EOC
diff --git a/sysutils/boxbackup/files/patch-lib-common-BoxPortsAndFiles.h b/sysutils/boxbackup/files/patch-lib-common-BoxPortsAndFiles.h
deleted file mode 100644
index 7dc6c8f43d83..000000000000
--- a/sysutils/boxbackup/files/patch-lib-common-BoxPortsAndFiles.h
+++ /dev/null
@@ -1,25 +0,0 @@
---- lib/common/BoxPortsAndFiles.h.orig Thu Mar 16 19:28:09 2006
-+++ lib/common/BoxPortsAndFiles.h Thu Mar 16 19:28:38 2006
-@@ -53,7 +53,7 @@
-
- // Backup store daemon
- #define BOX_PORT_BBSTORED (BOX_PORT_BASE+1)
--#define BOX_FILE_BBSTORED_DEFAULT_CONFIG "/etc/box/bbstored.conf"
-+#define BOX_FILE_BBSTORED_DEFAULT_CONFIG "%%PREFIX%%/etc/box/bbstored.conf"
- // directory within the RAIDFILE root for the backup store daemon
- #define BOX_RAIDFILE_ROOT_BBSTORED "backup"
-
-@@ -61,11 +61,11 @@
- #ifdef WIN32
- #define BOX_FILE_BBACKUPD_DEFAULT_CONFIG "C:\\Program Files\\Box Backup\\bbackupd.conf"
- #else
--#define BOX_FILE_BBACKUPD_DEFAULT_CONFIG "/etc/box/bbackupd.conf"
-+#define BOX_FILE_BBACKUPD_DEFAULT_CONFIG "%%PREFIX%%/etc/box/bbackupd.conf"
- #endif
-
- // RaidFile conf location default
--#define BOX_FILE_RAIDFILE_DEFAULT_CONFIG "/etc/box/raidfile.conf"
-+#define BOX_FILE_RAIDFILE_DEFAULT_CONFIG "%%PREFIX%%/etc/box/raidfile.conf"
-
- // Default name of the named pipe
- #define BOX_NAMED_PIPE_NAME L"\\\\.\\pipe\\boxbackup"
diff --git a/sysutils/boxbackup/files/pkg-message.client b/sysutils/boxbackup/files/pkg-message.client
index 2890641287b5..e804b44d94b9 100644
--- a/sysutils/boxbackup/files/pkg-message.client
+++ b/sysutils/boxbackup/files/pkg-message.client
@@ -1,4 +1,4 @@
To run bbackupd at startup, add bbackupd_enable="YES" to /etc/rc.conf
-Please see http://www.fluffy.co.uk/boxbackup/client.html for client
-configuration options
+Please see http://www.boxbackup.org/client.html for client configuration
+options
diff --git a/sysutils/boxbackup/files/pkg-message.server b/sysutils/boxbackup/files/pkg-message.server
index 7d39f96cd48f..872c82bf5ed8 100644
--- a/sysutils/boxbackup/files/pkg-message.server
+++ b/sysutils/boxbackup/files/pkg-message.server
@@ -1,4 +1,4 @@
To run bbstored at startup, add bbstored_enable="YES" to /etc/rc.conf
-Please see http://www.fluffy.co.uk/boxbackup/server.html for server
-configuration options
+Please see http://www.boxbackup.org/server.html for server configuration
+options
diff --git a/sysutils/boxbackup/pkg-deinstall b/sysutils/boxbackup/pkg-deinstall
deleted file mode 100644
index be8a67a2dad9..000000000000
--- a/sysutils/boxbackup/pkg-deinstall
+++ /dev/null
@@ -1,69 +0,0 @@
-#! /bin/sh
-#
-# ex:ts=4
-
-ask() {
- local question default answer
-
- question=$1
- default=$2
- if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then
- read -p "${question} [${default}]? " answer
- fi
- echo ${answer:-${default}}
-}
-
-yesno() {
- local question default answer
-
- question=$1
- default=$2
- while :; do
- answer=$(ask "${question}" "${default}")
- case "${answer}" in
- [Yy]*) return 0;;
- [Nn]*) return 1;;
- esac
- echo "Please answer yes or no."
- done
-}
-
-delete_account() {
- local u pw
-
- u=$1
- pw=`pw usershow ${u} >/dev/null 2>&1`
- if [ $? -eq 0 ]; then
- if yesno "Do you want me to remove user \"${u}\"" n; then
- pw userdel -n ${u}
- echo "Done."
- fi
- fi
-}
-
-case $2 in
-
-DEINSTALL)
- if ps -axc | grep -qw bbstored; then
- if yesno "bbstored is still running. Shall I stop it?" y; then
- killall bbstored
- sleep 2
- else
- echo "OK ... I hope you know what you are doing."
- fi
- fi
-
- if ps -axc | grep -qw bbackupd; then
- if yesno "bbackupd is still running. Shall I stop it?" y; then
- killall bbackupd
- sleep 2
- else
- echo "OK ... I hope you know what you are doing."
- fi
- fi
-
- delete_account _bbstored
-
- ;;
-
-esac
diff --git a/sysutils/boxbackup/pkg-descr b/sysutils/boxbackup/pkg-descr
index 6a1bfa41cf22..1d8c6ddbc5d5 100644
--- a/sysutils/boxbackup/pkg-descr
+++ b/sysutils/boxbackup/pkg-descr
@@ -10,4 +10,4 @@ The system is designed to be easy to set up and run, and cheap to use.
Once set up, there should be no need for user or administrative
intervention, apart from usual system maintenance.
-WWW: http://www.fluffy.co.uk/boxbackup/
+WWW: http://www.boxbackup.org/
diff --git a/sysutils/boxbackup/pkg-install b/sysutils/boxbackup/pkg-install
deleted file mode 100644
index 594c74b8202b..000000000000
--- a/sysutils/boxbackup/pkg-install
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/sh
-
-# $FreeBSD$
-
-case $2 in
-PRE-INSTALL)
- USER=_bbstored
- GROUP=${USER}
- UID=505
- GID=${UID}
-
- if pw group show "${GROUP}" 2>/dev/null; then
- echo "You already have a group \"${GROUP}\", so I will use it."
- else
- if pw groupadd ${GROUP} -g ${GID}; then
- echo "Added group \"${GROUP}\"."
- else
- echo "Adding group \"${GROUP}\" failed..."
- exit 1
- fi
- fi
-
- if pw user show "${USER}" 2>/dev/null; then
- echo "You already have a user \"${USER}\", so I will use it."
- else
- if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
- -d /nonexistent -c "Box Backup Store Daemon"
- then
- echo "Added user \"${USER}\"."
- else
- echo "Adding user \"${USER}\" failed..."
- exit 1
- fi
- fi
- ;;
-esac
diff --git a/sysutils/boxbackup/pkg-plist b/sysutils/boxbackup/pkg-plist
index 02884ee5eb40..94e5d889b6cc 100644
--- a/sysutils/boxbackup/pkg-plist
+++ b/sysutils/boxbackup/pkg-plist
@@ -1,14 +1,17 @@
-%%CLIENT%%bin/bbackupctl
-%%CLIENT%%bin/bbackupd
-%%CLIENT%%bin/bbackupd-config
-%%CLIENT%%bin/bbackupquery
-%%SERVER%%bin/bbstoreaccounts
-%%SERVER%%bin/bbstored
-%%SERVER%%bin/bbstored-certs
-%%SERVER%%bin/bbstored-config
-%%SERVER%%bin/raidfile-config
+%%CLIENT%%sbin/bbackupctl
+%%CLIENT%%sbin/bbackupd
+%%CLIENT%%sbin/bbackupd-config
+%%CLIENT%%sbin/bbackupquery
+%%SERVER%%sbin/bbstoreaccounts
+%%SERVER%%sbin/bbstored
+%%SERVER%%sbin/bbstored-certs
+%%SERVER%%sbin/bbstored-config
+%%SERVER%%sbin/raidfile-config
%%CLIENT%%@exec mkdir -p -m 0700 %D/etc/box/bbackupd
%%SERVER%%@exec mkdir -p -m 0700 %D/etc/box/bbstored
%%CLIENT%%@dirrmtry etc/box/bbackupd
%%SERVER%%@dirrmtry etc/box/bbstored
+etc/periodic/monthly/999.boxbackup
+@dirrmtry etc/periodic/monthly
+@dirrmtry etc/periodic
@dirrmtry etc/box