summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-backup')
-rw-r--r--app-backup/burp/Manifest1
-rw-r--r--app-backup/burp/burp-2.1.24.ebuild109
-rw-r--r--app-backup/burp/files/burp.initd45
-rw-r--r--app-backup/burp/files/burp.service1
4 files changed, 155 insertions, 1 deletions
diff --git a/app-backup/burp/Manifest b/app-backup/burp/Manifest
index 357a085e653e..5118ac92b565 100644
--- a/app-backup/burp/Manifest
+++ b/app-backup/burp/Manifest
@@ -1,2 +1,3 @@
DIST burp-2.0.54.tar.gz 558845 BLAKE2B f6a868b09ad73e3b8aa171993849c8fec43c141d14a64ba7919ad73890905647741688d2f0c0b01ef2a584474ecd1464423b07279160d86c7f37d1bf37a384a7 SHA512 dccc4d3679dd759028cd6b71d09ae4e49a511e5d94b4df2f112ad974abb507bbc8fffaf63ef85c847b0f9363b20a9e817179ab556c5a788acacb7a25e7600fa4
DIST burp-2.1.22.tar.gz 582938 BLAKE2B dbc0b7612e9cda2186d16426ec1a39559af965fcbc393259e5d4d1f376c666e8532f25dbe51d2ec816fc2e630f81b059c77aee572c562bf47f466f4114e875fd SHA512 028b48c585cdc607eb00af5f60e01541a54885b8084e0353d01b1e01744848967011cd330a443ae143884852c2dbc18fb25f364ce129a31ccbcf0f8d25ccb730
+DIST burp-2.1.24.tar.gz 586055 BLAKE2B 6186e791e8b0cea74ecfbd4a85624f2492bd2721e705d8f5fb6783eb03390c7c10d88e4e4e33095aff985c70e6da59b3bb3b0f652cc850f443dabef23517c05f SHA512 b23f5e33510493e08b9b6eda405a017c8f75811fa18c9bcb6f96fbf716a79934e6c714f1258c39a81dcc52ef1a88e3629a0862bbd2462fbdc30cc7fb1b117ba6
diff --git a/app-backup/burp/burp-2.1.24.ebuild b/app-backup/burp/burp-2.1.24.ebuild
new file mode 100644
index 000000000000..9f69e915ca54
--- /dev/null
+++ b/app-backup/burp/burp-2.1.24.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools systemd user versionator
+
+DESCRIPTION="Network backup and restore client and server for Unix and Windows"
+HOMEPAGE="http://burp.grke.org/"
+SRC_URI="https://github.com/grke/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="acl ipv6 libressl test xattr"
+
+CDEPEND="dev-libs/uthash
+ net-libs/librsync
+ sys-libs/ncurses:0=
+ sys-libs/zlib
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ acl? ( sys-apps/acl )
+ xattr? ( sys-apps/attr )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+ test? ( dev-libs/check )"
+RDEPEND="${CDEPEND}
+ virtual/logger"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.1.20-no_mkdir_run.patch
+ "${FILESDIR}"/${PN}-2.1.20-protocol1_by_default.patch
+ "${FILESDIR}"/${PN}-2.0.54-server_user.patch
+)
+
+pkg_setup() {
+ enewgroup "${PN}"
+ enewuser "${PN}" -1 "" "" "${PN}"
+}
+
+src_prepare() {
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --localstatedir=/var
+ --sysconfdir=/etc/burp
+ --enable-largefile
+ $(use_enable acl)
+ $(use_enable ipv6)
+ $(use_enable xattr)
+ )
+ # --runstatedir option will only work from autoconf-2.70 onwards
+ runstatedir='/run' \
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ fowners -R root:${PN} /var/spool/burp
+ fperms 0770 /var/spool/burp
+
+ emake DESTDIR="${D}" install-configs
+ fowners -R root:${PN} /etc/burp
+ fperms 0775 /etc/burp
+ fperms 0640 /etc/burp/burp-server.conf
+ fperms 0750 /etc/burp/clientconfdir
+
+ newinitd "${FILESDIR}"/${PN}.initd ${PN}
+ systemd_dounit "${FILESDIR}"/${PN}.service
+}
+
+pkg_postinst() {
+ elog "Burp ebuilds now support the autoupgrade mechanism in both"
+ elog "client and server mode. In both cases it is disabled by"
+ elog "default. You almost certainly do NOT want to enable it in"
+ elog "client mode because upgrades obtained this way will not be"
+ elog "managed by Portage."
+
+ if [[ ! -e /etc/burp/CA/index.txt ]]; then
+ elog ""
+ elog "At first run burp server will generate DH parameters and SSL"
+ elog "certificates. You should adjust configuration before."
+ elog "Server configuration is located at"
+ elog ""
+ elog " /etc/burp/burp-server.conf"
+ elog ""
+ fi
+
+ # According to PMS this can be a space-separated list of version
+ # numbers, even though in practice it is typically just one.
+ local oldver
+ for oldver in ${REPLACING_VERSIONS}; do
+ if [[ $(get_major_version ${oldver}) -lt 2 ]]; then
+ ewarn "Starting with version 2.0.54 we no longer patch bedup to use"
+ ewarn "the server config file by default. If you use bedup, please"
+ ewarn "update your scripts to invoke it as"
+ ewarn ""
+ ewarn " bedup -c /etc/burp/burp-server.conf"
+ ewarn ""
+ ewarn "Otherwise deduplication will not work!"
+ break
+ fi
+ done
+}
diff --git a/app-backup/burp/files/burp.initd b/app-backup/burp/files/burp.initd
new file mode 100644
index 000000000000..a0b0dccacbcc
--- /dev/null
+++ b/app-backup/burp/files/burp.initd
@@ -0,0 +1,45 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+BURP_CONFIG="/etc/burp/burp-server.conf"
+
+description="Burp is a network backup and restore program"
+
+command="/usr/sbin/burp"
+command_args="-c '${BURP_CONFIG}' -F"
+command_background="yes"
+pidfile="/run/burp.server.pid"
+start_stop_daemon_arg="--wait 500"
+
+extra_started_commands="reload summary"
+description_reload="Reloads configuration"
+description_summary="Displays main status monitor summary"
+
+get_backup_dir() {
+ grep '^directory = ' "${BURP_CONFIG}" \
+ | sed -e 's/^directory = //'
+}
+
+depend() {
+ need localmount
+ after bootmisc
+ use net
+}
+
+start_pre() {
+ checkpath -o root:burp -m 0775 -d /etc/burp
+ checkpath -o root:burp -m 0640 -f /etc/burp/burp-server.conf
+ checkpath -o root:burp -m 0750 -d /etc/burp/clientconfdir
+ checkpath -o root:burp -m 0770 -d "$(get_backup_dir)"
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME} configuration"
+ start-stop-daemon --exec ${command} --signal HUP
+ eend $?
+}
+
+summary() {
+ "${command}" -c "${BURP_CONFIG}" -a S
+}
diff --git a/app-backup/burp/files/burp.service b/app-backup/burp/files/burp.service
index 5a40b5e36781..121753629607 100644
--- a/app-backup/burp/files/burp.service
+++ b/app-backup/burp/files/burp.service
@@ -4,7 +4,6 @@ After=network.target
[Service]
Type=simple
-PIDFile=/run/burp/burp.server.pid
ExecStart=/usr/sbin/burp -F -c /etc/burp/burp-server.conf
[Install]