summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-backup/backuppc')
-rw-r--r--app-backup/backuppc/Manifest1
-rw-r--r--app-backup/backuppc/backuppc-3.3.1-r6.ebuild4
-rw-r--r--app-backup/backuppc/backuppc-4.4.0-r1.ebuild191
-rw-r--r--app-backup/backuppc/backuppc-4.4.0-r2.ebuild195
-rw-r--r--app-backup/backuppc/files/4.4.0/backuppc-4.4.0-fix-config-write.patch48
-rw-r--r--app-backup/backuppc/metadata.xml9
6 files changed, 445 insertions, 3 deletions
diff --git a/app-backup/backuppc/Manifest b/app-backup/backuppc/Manifest
index f08fa93f29ea..81a72c05dff6 100644
--- a/app-backup/backuppc/Manifest
+++ b/app-backup/backuppc/Manifest
@@ -1 +1,2 @@
DIST BackupPC-3.3.1.tar.gz 556461 BLAKE2B 91477196506291fb542a266aca4182ad727758ccf8379c135dcd5147d42b5f1f58d094473430fee64f67e0fc75e077fdf92bfcdaf2313dd53480737666746160 SHA512 b6bb9de3103c5062098d80755055b7461ae9133a4a46a66b3d0af89d081086571694db1898e7d85880defa15b030bad522812116ae5361c0fbde90b877d139c6
+DIST BackupPC-4.4.0.tar.gz 657309 BLAKE2B db977b73b09e1b2a051e38ecc94567cb516e2b11eca79c23bb0c4eef508e78cbbc984aaee4c84dc4ecd0524d849195c14dfe395ff97f77b6c7cf8adff152d75e SHA512 0c88447ab000c4a452034d5d8a074cd56801c7b38b0886e686e446c73ecfd0a40f0aa08703f76d16c31b24aec85c10c4ed1815d0cb67be5a1d66e5caeb3de418
diff --git a/app-backup/backuppc/backuppc-3.3.1-r6.ebuild b/app-backup/backuppc/backuppc-3.3.1-r6.ebuild
index 5d45affdb88d..3268596ed982 100644
--- a/app-backup/backuppc/backuppc-3.3.1-r6.ebuild
+++ b/app-backup/backuppc/backuppc-3.3.1-r6.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -8,7 +8,7 @@ MY_P="BackupPC-${PV}"
inherit depend.apache systemd
DESCRIPTION="High-performance backups to a server's disk"
-HOMEPAGE="http://backuppc.sourceforge.net/"
+HOMEPAGE="https://backuppc.github.io/backuppc/index.html"
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${MY_P}.tar.gz"
S="${WORKDIR}/${MY_P}"
diff --git a/app-backup/backuppc/backuppc-4.4.0-r1.ebuild b/app-backup/backuppc/backuppc-4.4.0-r1.ebuild
new file mode 100644
index 000000000000..3e0e0aebb803
--- /dev/null
+++ b/app-backup/backuppc/backuppc-4.4.0-r1.ebuild
@@ -0,0 +1,191 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_P="BackupPC-${PV}"
+MY_PN="BackupPC"
+
+inherit depend.apache systemd
+
+DESCRIPTION="High-performance backups to a server's disk"
+HOMEPAGE="https://backuppc.github.io/backuppc/index.html"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="rss samba"
+
+DEPEND="
+ acct-group/backuppc
+ acct-user/backuppc
+ app-admin/apache-tools
+ app-admin/makepasswd
+ dev-lang/perl
+"
+
+# The CGI modules are handled in ${RDEPEND}.
+APACHE_MODULES="apache2_modules_alias," # RedirectMatch
+APACHE_MODULES+="apache2_modules_authn_core," # AuthType
+APACHE_MODULES+="apache2_modules_authz_core," # Require
+APACHE_MODULES+="apache2_modules_authz_host," # Require host
+APACHE_MODULES+="apache2_modules_authz_user" # Require valid-user
+
+# Older versions of mod_perl think they're compatible with apache-2.4,
+# so we require the new one explicitly.
+RDEPEND="
+ ${DEPEND}
+ app-arch/par2cmdline
+ dev-perl/Archive-Zip
+ dev-perl/CGI
+ dev-perl/File-RsyncP
+ dev-perl/libwww-perl
+ dev-perl/BackupPC-XS
+ net-misc/rsync-bpc
+ virtual/mta
+ virtual/perl-IO-Compress
+ www-apache/mod_perl
+ www-apache/mpm_itk
+ || (
+ >=www-servers/apache-2.4[${APACHE_MODULES},apache2_modules_cgi]
+ >=www-servers/apache-2.4[${APACHE_MODULES},apache2_modules_cgid]
+ )
+ rss? ( dev-perl/XML-RSS )
+ samba? ( net-fs/samba )"
+
+CGIDIR="${EROOT}/usr/lib/backuppc/htdocs"
+CONFDIR="${EROOT}/etc/${MY_PN}"
+DATADIR="${EROOT}/var/lib/backuppc"
+DOCDIR="${EROOT}/usr/share/doc/${PF}"
+LOGDIR="${EROOT}/var/log/BackupPC"
+need_apache2_4
+
+src_prepare() {
+ default
+ # Fix docs location using the marker that we've patched in.
+ sed "s+__DOCDIR__+${DOCDIR}+" -i lib/BackupPC/CGI/View.pm || die
+}
+
+src_install() {
+ local myconf
+ if use samba ; then
+ myconf=(
+ --bin-path smbclient=$(type -p smbclient)
+ --bin-path nmblookup=$(type -p nmblookup)
+ )
+ fi
+
+ /usr/bin/env perl ./configure.pl \
+ --batch \
+ --bin-path perl=$(type -p perl) \
+ --bin-path tar=$(type -p tar) \
+ --bin-path rsync=$(type -p rsync) \
+ --bin-path ping=$(type -p ping) \
+ --bin-path df=$(type -p df) \
+ --bin-path ssh=$(type -p ssh) \
+ --bin-path sendmail=$(type -p sendmail) \
+ --bin-path hostname=$(type -p hostname) \
+ --bin-path gzip=$(type -p gzip) \
+ --bin-path bzip2=$(type -p bzip2) \
+ --config-dir "${CONFDIR}" \
+ --install-dir /usr \
+ --data-dir "${DATADIR}" \
+ --hostname 127.0.0.1 \
+ --uid-ignore \
+ --dest-dir "${D}" \
+ --html-dir "${CGIDIR}"/image \
+ --html-dir-url /image \
+ --cgi-dir "${CGIDIR}" \
+ --fhs \
+ ${myconf[@]} || die "failed the configure.pl script"
+
+ ebegin "Installing documentation"
+
+ pod2man \
+ -errors=none \
+ --section=8 \
+ --center="BackupPC manual" \
+ "${S}"/doc/BackupPC.pod backuppc.8 \
+ || die "failed to generate man page"
+
+ doman backuppc.8
+
+ # Place the documentation in the correct location
+ dodoc "${ED}/usr/share/doc/BackupPC/BackupPC.html"
+ dodoc "${ED}/usr/share/doc/BackupPC/BackupPC.pod"
+ rm -rf "${ED}/usr/share/doc" || die
+
+ eend 0
+
+ # Setup directories
+ dodir "${CONFDIR}/pc"
+
+ keepdir "${CONFDIR}"
+ keepdir "${CONFDIR}/pc"
+ keepdir "${DATADIR}"/{trash,pool,pc,cpool}
+ keepdir "${LOGDIR}"
+
+ ebegin "Setting up init.d/conf.d/systemd scripts"
+ newinitd "${S}"/systemd/init.d/gentoo-backuppc backuppc
+ newconfd "${S}"/systemd/init.d/gentoo-backuppc.conf backuppc
+ systemd_dounit "${FILESDIR}/${PN}.service"
+
+ insinto "${APACHE_MODULES_CONFDIR}"
+ doins "${FILESDIR}"/99_backuppc.conf
+
+ # Make sure that the ownership is correct
+ chown -R backuppc:backuppc "${D}${CONFDIR}" || die
+ chown -R backuppc:backuppc "${D}${DATADIR}" || die
+ chown -R backuppc:backuppc "${D}${LOGDIR}" || die
+
+ eend 0
+}
+
+pkg_postinst() {
+ ewarn "WARNING: The --one-file-system option was added to RsyncArgs."
+ ewarn "If you update from a prior version keep in mind that"
+ ewarn "this prevents data of mounted partitions from being updated."
+ ewarn
+ elog "Installation finished, you may now start using BackupPC."
+ elog
+ elog "- Read the documentation in ${EROOT}/usr/share/doc/${PF}/BackupPC.html"
+ elog " Please pay special attention to the security section."
+ elog
+ elog "- You can launch backuppc by running:"
+ elog
+ elog " # /etc/init.d/backuppc start"
+ elog
+ elog "- To enable the GUI, first edit ${EROOT}/etc/conf.d/apache2 and add,"
+ elog
+ elog " \"-D BACKUPPC -D PERL -D MPM_ITK\""
+ elog
+ elog " to the APACHE2_OPTS line."
+ elog
+ elog " Then you must edit ${EROOT}/etc/apache2/modules.d/00_mpm_itk.conf"
+ elog " and adjust the values of LimitUIDRange/LimitGIDRange to include"
+ elog " the UID and GID of the backuppc user."
+ elog
+ elog " Finally, start apache:"
+ elog
+ elog " # /etc/init.d/apache2 start"
+ elog
+ elog " The web interface should now be running on,"
+ elog
+ elog " http://127.0.0.1:8080/"
+ elog
+
+ # Generate a new password if there's no auth file
+ if [[ ! -f "${CONFDIR}/users.htpasswd" ]]; then
+ adminuser="backuppc"
+ adminpass=$(makepasswd --chars=12)
+ htpasswd -bc "${CONFDIR}/users.htpasswd" ${adminuser} ${adminpass}
+
+ elog ""
+ elog "- Created admin user ${adminuser} with password ${adminpass}"
+ elog " To add new users, run: "
+ elog ""
+ elog " # htpasswd ${CONFDIR}/users.htpasswd newUser"
+ fi
+}
diff --git a/app-backup/backuppc/backuppc-4.4.0-r2.ebuild b/app-backup/backuppc/backuppc-4.4.0-r2.ebuild
new file mode 100644
index 000000000000..f367192beefc
--- /dev/null
+++ b/app-backup/backuppc/backuppc-4.4.0-r2.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_P="BackupPC-${PV}"
+MY_PN="BackupPC"
+
+inherit depend.apache systemd
+
+DESCRIPTION="High-performance backups to a server's disk"
+HOMEPAGE="https://backuppc.github.io/backuppc/index.html"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/${PV}/${MY_P}.tar.gz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="rss samba"
+
+DEPEND="
+ acct-group/backuppc
+ acct-user/backuppc
+ app-admin/apache-tools
+ app-admin/makepasswd
+ dev-lang/perl
+"
+
+# The CGI modules are handled in ${RDEPEND}.
+APACHE_MODULES="apache2_modules_alias," # RedirectMatch
+APACHE_MODULES+="apache2_modules_authn_core," # AuthType
+APACHE_MODULES+="apache2_modules_authz_core," # Require
+APACHE_MODULES+="apache2_modules_authz_host," # Require host
+APACHE_MODULES+="apache2_modules_authz_user" # Require valid-user
+
+# Older versions of mod_perl think they're compatible with apache-2.4,
+# so we require the new one explicitly.
+RDEPEND="
+ ${DEPEND}
+ app-arch/par2cmdline
+ dev-perl/Archive-Zip
+ dev-perl/CGI
+ dev-perl/File-RsyncP
+ dev-perl/libwww-perl
+ dev-perl/BackupPC-XS
+ net-misc/rsync-bpc
+ virtual/mta
+ virtual/perl-IO-Compress
+ www-apache/mod_perl
+ www-apache/mpm_itk
+ || (
+ >=www-servers/apache-2.4[${APACHE_MODULES},apache2_modules_cgi]
+ >=www-servers/apache-2.4[${APACHE_MODULES},apache2_modules_cgid]
+ )
+ rss? ( dev-perl/XML-RSS )
+ samba? ( net-fs/samba )"
+
+PATCHES=(
+ "${FILESDIR}/4.4.0/${P}-fix-config-write.patch" #888085
+)
+
+CGIDIR="${EROOT}/usr/lib/backuppc/htdocs"
+CONFDIR="${EROOT}/etc/${MY_PN}"
+DATADIR="${EROOT}/var/lib/backuppc"
+DOCDIR="${EROOT}/usr/share/doc/${PF}"
+LOGDIR="${EROOT}/var/log/BackupPC"
+need_apache2_4
+
+src_prepare() {
+ default
+ # Fix docs location using the marker that we've patched in.
+ sed "s+__DOCDIR__+${DOCDIR}+" -i lib/BackupPC/CGI/View.pm || die
+}
+
+src_install() {
+ local myconf
+ if use samba ; then
+ myconf=(
+ --bin-path smbclient=$(type -p smbclient)
+ --bin-path nmblookup=$(type -p nmblookup)
+ )
+ fi
+
+ /usr/bin/env perl ./configure.pl \
+ --batch \
+ --bin-path perl=$(type -p perl) \
+ --bin-path tar=$(type -p tar) \
+ --bin-path rsync=$(type -p rsync) \
+ --bin-path ping=$(type -p ping) \
+ --bin-path df=$(type -p df) \
+ --bin-path ssh=$(type -p ssh) \
+ --bin-path sendmail=$(type -p sendmail) \
+ --bin-path hostname=$(type -p hostname) \
+ --bin-path gzip=$(type -p gzip) \
+ --bin-path bzip2=$(type -p bzip2) \
+ --config-dir "${CONFDIR}" \
+ --install-dir /usr \
+ --data-dir "${DATADIR}" \
+ --hostname 127.0.0.1 \
+ --uid-ignore \
+ --dest-dir "${D}" \
+ --html-dir "${CGIDIR}"/image \
+ --html-dir-url /image \
+ --cgi-dir "${CGIDIR}" \
+ --fhs \
+ ${myconf[@]} || die "failed the configure.pl script"
+
+ ebegin "Installing documentation"
+
+ pod2man \
+ -errors=none \
+ --section=8 \
+ --center="BackupPC manual" \
+ "${S}"/doc/BackupPC.pod backuppc.8 \
+ || die "failed to generate man page"
+
+ doman backuppc.8
+
+ # Place the documentation in the correct location
+ dodoc "${ED}/usr/share/doc/BackupPC/BackupPC.html"
+ dodoc "${ED}/usr/share/doc/BackupPC/BackupPC.pod"
+ rm -rf "${ED}/usr/share/doc" || die
+
+ eend 0
+
+ # Setup directories
+ dodir "${CONFDIR}/pc"
+
+ keepdir "${CONFDIR}"
+ keepdir "${CONFDIR}/pc"
+ keepdir "${DATADIR}"/{trash,pool,pc,cpool}
+ keepdir "${LOGDIR}"
+
+ ebegin "Setting up init.d/conf.d/systemd scripts"
+ newinitd "${S}"/systemd/init.d/gentoo-backuppc backuppc
+ newconfd "${S}"/systemd/init.d/gentoo-backuppc.conf backuppc
+ systemd_dounit "${FILESDIR}/${PN}.service"
+
+ insinto "${APACHE_MODULES_CONFDIR}"
+ doins "${FILESDIR}"/99_backuppc.conf
+
+ # Make sure that the ownership is correct
+ chown -R backuppc:backuppc "${D}${CONFDIR}" || die
+ chown -R backuppc:backuppc "${D}${DATADIR}" || die
+ chown -R backuppc:backuppc "${D}${LOGDIR}" || die
+
+ eend 0
+}
+
+pkg_postinst() {
+ ewarn "WARNING: The --one-file-system option was added to RsyncArgs."
+ ewarn "If you update from a prior version keep in mind that"
+ ewarn "this prevents data of mounted partitions from being updated."
+ ewarn
+ elog "Installation finished, you may now start using BackupPC."
+ elog
+ elog "- Read the documentation in ${EROOT}/usr/share/doc/${PF}/BackupPC.html"
+ elog " Please pay special attention to the security section."
+ elog
+ elog "- You can launch backuppc by running:"
+ elog
+ elog " # /etc/init.d/backuppc start"
+ elog
+ elog "- To enable the GUI, first edit ${EROOT}/etc/conf.d/apache2 and add,"
+ elog
+ elog " \"-D BACKUPPC -D PERL -D MPM_ITK\""
+ elog
+ elog " to the APACHE2_OPTS line."
+ elog
+ elog " Then you must edit ${EROOT}/etc/apache2/modules.d/00_mpm_itk.conf"
+ elog " and adjust the values of LimitUIDRange/LimitGIDRange to include"
+ elog " the UID and GID of the backuppc user."
+ elog
+ elog " Finally, start apache:"
+ elog
+ elog " # /etc/init.d/apache2 start"
+ elog
+ elog " The web interface should now be running on,"
+ elog
+ elog " http://127.0.0.1:8080/"
+ elog
+
+ # Generate a new password if there's no auth file
+ if [[ ! -f "${CONFDIR}/users.htpasswd" ]]; then
+ adminuser="backuppc"
+ adminpass=$(makepasswd --chars=12)
+ htpasswd -bc "${CONFDIR}/users.htpasswd" ${adminuser} ${adminpass}
+
+ elog ""
+ elog "- Created admin user ${adminuser} with password ${adminpass}"
+ elog " To add new users, run: "
+ elog ""
+ elog " # htpasswd ${CONFDIR}/users.htpasswd newUser"
+ fi
+}
diff --git a/app-backup/backuppc/files/4.4.0/backuppc-4.4.0-fix-config-write.patch b/app-backup/backuppc/files/4.4.0/backuppc-4.4.0-fix-config-write.patch
new file mode 100644
index 000000000000..d659c036ce45
--- /dev/null
+++ b/app-backup/backuppc/files/4.4.0/backuppc-4.4.0-fix-config-write.patch
@@ -0,0 +1,48 @@
+From 2c9270b9b849b2c86ae6301dd722c97757bc9256 Mon Sep 17 00:00:00 2001
+From: Craig Barratt <19445341+craigbarratt@users.noreply.github.com>
+Date: Fri, 15 Apr 2022 11:45:57 -0700
+Subject: [PATCH] remove erroneous 2nd argument to Data::Dumper; see #466
+
+---
+ configure.pl | 2 +-
+ lib/BackupPC/Storage/Text.pm | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure.pl b/configure.pl
+index 6826ebc..d5deef5 100755
+--- a/configure.pl
++++ b/configure.pl
+@@ -668,7 +668,7 @@ if ( defined($Conf{CgiUserConfigEdit}) ) {
+ if ( defined($Conf{CgiUserConfigEdit}{$p}) );
+ }
+ $Conf{CgiUserConfigEdit} = $new;
+- my $d = Data::Dumper->new([$new], [*value]);
++ my $d = Data::Dumper->new([$new]);
+ $d->Indent(1);
+ $d->Terse(1);
+ $d->Sortkeys(1);
+diff --git a/lib/BackupPC/Storage/Text.pm b/lib/BackupPC/Storage/Text.pm
+index e9df664..09fcb24 100644
+--- a/lib/BackupPC/Storage/Text.pm
++++ b/lib/BackupPC/Storage/Text.pm
+@@ -422,7 +422,7 @@ sub ConfigFileMerge
+ my $var = $1;
+ $skipExpr = "\$fakeVar = $2\n";
+ if ( exists($newConf->{$var}) ) {
+- my $d = Data::Dumper->new([$newConf->{$var}], [*value]);
++ my $d = Data::Dumper->new([$newConf->{$var}]);
+ $d->Indent(1);
+ $d->Terse(1);
+ $d->Sortkeys(1);
+@@ -454,7 +454,7 @@ sub ConfigFileMerge
+ #
+ foreach my $var ( sort(keys(%$newConf)) ) {
+ next if ( $done->{$var} );
+- my $d = Data::Dumper->new([$newConf->{$var}], [*value]);
++ my $d = Data::Dumper->new([$newConf->{$var}]);
+ $d->Indent(1);
+ $d->Terse(1);
+ $d->Sortkeys(1);
+--
+2.43.2
+
diff --git a/app-backup/backuppc/metadata.xml b/app-backup/backuppc/metadata.xml
index 63af74d14b21..4d83df8d74ca 100644
--- a/app-backup/backuppc/metadata.xml
+++ b/app-backup/backuppc/metadata.xml
@@ -1,7 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person" proxied="yes">
+ <email>kernlpanic@dennis-eisele.de</email>
+ <name>Dennis Eisele</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<upstream>
<remote-id type="sourceforge">backuppc</remote-id>
<remote-id type="github">backuppc/backuppc</remote-id>