mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
129 lines
5.4 KiB
Tcl
129 lines
5.4 KiB
Tcl
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
|
|
|
|
PortSystem 1.0
|
|
|
|
name boxbackup
|
|
version 0.11.1
|
|
revision 4
|
|
categories sysutils net
|
|
license BSD-old
|
|
maintainers {ecronin @ecronin} openmaintainer
|
|
description completely automatic on-line backup system.
|
|
long_description The backup daemon, bbackupd, runs on all machines to \
|
|
be backed up. The store server daemon, bbstored runs \
|
|
on a central server. Data is sent to the store \
|
|
server, which stores all data on local filesystems, \
|
|
that is, only on local hard drives. Tape or other \
|
|
archive media is not used. \
|
|
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.
|
|
homepage http://www.boxbackup.org/
|
|
master_sites ${homepage}svn/box/packages/
|
|
extract.suffix .tgz
|
|
checksums rmd160 17553b3ff06d19f353dbadc0166b7dceaa11c271 \
|
|
sha256 1328b010477259c4767276dbfebab6580e883336cc9d25696c39991b09cc6d32
|
|
|
|
depends_lib path:bin/perl:perl5 path:lib/libssl.dylib:openssl port:libedit
|
|
|
|
configure.args --sysconfdir=${prefix}/etc \
|
|
--localstatedir=${prefix}/var/bbackupd \
|
|
--mandir=${prefix}/share/man
|
|
|
|
use_parallel_build no
|
|
build.type bsd
|
|
|
|
post-patch {
|
|
reinplace "s|man/man|share/man/man|g" \
|
|
${worksrcpath}/infrastructure/makeparcels.pl.in
|
|
}
|
|
|
|
# Update config.guess and config.sub to be able to build on arm64.
|
|
depends_build-append port:automake
|
|
post-patch {
|
|
set automake_dirs [glob -directory ${prefix}/share automake-*]
|
|
set automake_dir [lindex [lsort -command vercmp $automake_dirs] end]
|
|
copy -force ${automake_dir}/config.guess ${automake_dir}/config.sub \
|
|
${worksrcpath}
|
|
}
|
|
|
|
destroot.target install-backup-client
|
|
destroot.keepdirs ${destroot}${prefix}/etc/boxbackup/bbackupd \
|
|
${destroot}${prefix}/var/bbackupd
|
|
|
|
post-destroot {
|
|
xinstall -d -m 0700 ${destroot}${prefix}/etc/boxbackup/bbackupd
|
|
xinstall -d -m 0755 ${destroot}${prefix}/var/bbackupd
|
|
|
|
# Install the documentation
|
|
xinstall -d -m 0755 ${destroot}${prefix}/share/doc/${name}
|
|
file copy {*}[glob ${worksrcpath}/docs/htmlguide/*] \
|
|
${destroot}${prefix}/share/doc/${name}/
|
|
}
|
|
|
|
variant bdb description {Use Berkeley Data Base to cache bbackupd state} {
|
|
depends_lib-append port:db47
|
|
|
|
configure.args-append --with-bdb-headers=${prefix}/include/db47 \
|
|
--with-bdb-lib=${prefix}/lib/db47
|
|
}
|
|
|
|
variant server description {Install bbstored server} {
|
|
add_users bbstored group=bbstored realname=BoxBackup\ Server \
|
|
home=${prefix}/etc/boxbackup/bbstored
|
|
destroot.target-append install-backup-server
|
|
destroot.keepdirs-append ${destroot}${prefix}/etc/boxbackup/bbstored
|
|
post-destroot {
|
|
xinstall -o bbstored -g bbstored -d -m 0770 ${destroot}${prefix}/etc/boxbackup/bbstored
|
|
}
|
|
}
|
|
|
|
post-activate {
|
|
if {[file isdir ${prefix}/etc/box]} {
|
|
ui_warn "${prefix}/etc/box should be moved to ${prefix}/etc/boxbackup to complete upgrade."
|
|
}
|
|
if {[variant_isset server]} {
|
|
if {![file exists ${prefix}/etc/boxbackup/raidfile.conf]} {
|
|
ui_warn "${prefix}/etc/boxbackup/raidfile.conf is missing!"
|
|
ui_msg "You need to run 'raidfile-config' to create it."
|
|
ui_msg "See the documentation on server setup for details:"
|
|
#ui_msg " file://${prefix}/share/doc/boxbackup/server.html"
|
|
ui_msg " http://www.boxbackup.org/server.html"
|
|
}
|
|
if {![file exists ${prefix}/etc/boxbackup/bbstored.conf]} {
|
|
ui_warn "${prefix}/etc/boxbackup/bbstored.conf is missing!"
|
|
ui_msg "You need to run 'bbstored-config' to create it."
|
|
ui_msg "See the documentation on server setup for details:"
|
|
#ui_msg " file://${prefix}/share/doc/boxbackup/server.html"
|
|
ui_msg " http://www.boxbackup.org/server.html"
|
|
}
|
|
}
|
|
if {![file exists ${prefix}/etc/boxbackup/bbackupd.conf]} {
|
|
ui_warn "${prefix}/etc/boxbackup/bbackupd.conf is missing!"
|
|
ui_msg "You need to run 'bbackupd-config' to create it."
|
|
ui_msg "See the documentation on client setup for details:"
|
|
#ui_msg " file://${prefix}/share/doc/boxbackup/client.html"
|
|
ui_msg " http://www.boxbackup.org/client.html"
|
|
}
|
|
}
|
|
|
|
test.run yes
|
|
|
|
platform darwin {
|
|
startupitem.create yes
|
|
startupitem.name BoxBackup
|
|
startupitem.start "cd ${prefix}/etc/boxbackup"
|
|
if {[variant_isset server]} {
|
|
startupitem.start-append "\[ -f \"${prefix}/etc/boxbackup/bbstored.conf\" \] \\"
|
|
startupitem.start-append "\t&& \[ -f \"${prefix}/etc/boxbackup/raidfile.conf\" \] \\"
|
|
startupitem.start-append "\t&& ${prefix}/sbin/bbstored"
|
|
}
|
|
startupitem.start-append "\[ -f \"${prefix}/etc/boxbackup/bbackupd.conf\" \] \\"
|
|
startupitem.start-append "\t&& ${prefix}/sbin/bbackupd"
|
|
startupitem.stop "/usr/bin/killall -SIGUSR1 bbackupd"
|
|
if {[variant_isset server]} {
|
|
startupitem.stop-append "/usr/bin/killall -SIGUSR1 bbstored"
|
|
}
|
|
}
|