summaryrefslogtreecommitdiff
path: root/app-backup/backuppc
diff options
context:
space:
mode:
Diffstat (limited to 'app-backup/backuppc')
-rw-r--r--app-backup/backuppc/Manifest4
-rw-r--r--app-backup/backuppc/backuppc-4.4.0-r1.ebuild7
-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
4 files changed, 251 insertions, 3 deletions
diff --git a/app-backup/backuppc/Manifest b/app-backup/backuppc/Manifest
index 0443e14dc0fe..85af1f480dff 100644
--- a/app-backup/backuppc/Manifest
+++ b/app-backup/backuppc/Manifest
@@ -3,6 +3,7 @@ AUX 3.2.0/05-nicelevel.patch 764 BLAKE2B 2b5a98754ab1f35f5174273fa6374a917458c0f
AUX 3.3.0/01-fix-configure.pl.patch 1102 BLAKE2B 681cc2e69464dc7bf11f4a6d2e2c8b87912c35aad2d598752aeb0df53c47e95245bd04ea866bb93c631730bdb4a9455f6cd33474798bef6f87c887e8550a109e SHA512 fc3150771986abccb18733a649f6c39f4ebbd19d342df5bc9f45939786af7b6b6c5e2caf9020ff91d8553a4e986749de6f167628ec0826ea69928bcba401267a
AUX 3.3.0/02-fix-config.pl-formatting.patch 3904 BLAKE2B 27e5d220124bb5ca1a909d3d6a3c30e717e97ad97d121a9a00adbd31f9a729e00006b9cb1333138f2ab99ac7e3cc15ea3fdb9b785a317f2ffa95b896b65ad478 SHA512 d334d1327d08c834894a7fc8ace3bac232e36087b3c21c8d7c98acc5aa84d70e83c9293833262b7e77f7a06f901e0f7ac6e8bd02c9abbe4cdfc1e44d7e4e7f61
AUX 3.3.0/03-reasonable-config.pl-defaults.patch 1908 BLAKE2B e26b4c9dcda7416f09516dc5b2e4ea7b6a690d00ef60f5a8bd34090d8178074e560a486b00435593a9da832db0d70bedf6d48f2f8c93928b55b96dd2041deebe SHA512 d9fe509d59b3c0f0fab265dd1eab2da7d499fd5e9838e04f413b56d4e116337f8781815e3ac9c2ab0dd8e103ce49fa78a398ebf7e1b2475d0b7c869d468ddf2e
+AUX 4.4.0/backuppc-4.4.0-fix-config-write.patch 1746 BLAKE2B cfa4e508f120f647092fa90407cc50a670e9821ea6b80549cd72edd41dbf3d0ba6e678dd592f105d0a0cc5e166ba79c0b09feeec8d158fc7558daa26443cdf06 SHA512 d4f6782a5e74dfaf34ef2d1f747d0a8a2f8172f36e2642d22bec313b29dd2464e83973795c5eb9f25407b674e71c50a3b79ef3cd1371e914e8d72860dc685df0
AUX 99_backuppc.conf 718 BLAKE2B 3075731b3bd580e9e9f864391d8a65716f43826d801bdf95082dc2168120419346b09322292eecf9de0bac6708dcba606347142238a65f11676ec553ca278b75 SHA512 cb68dfbb635564740428850ea3f026ebc0b8e22b2bca52640b2f367e5487fa205b00ec82e4e192b311e2886686b81f9ea52de54886994c6cce1cd154937fa0ee
AUX backuppc-3.3.1-perl522.patch 611 BLAKE2B a363952b76c8514ceeb31ae71b134ad37004422eeb905bf243aa86dc85795782066d9ee3aca266b7bbe62308bf421f7e6c5c006f2cff2182f4d56dba8eb3c063 SHA512 c7425c9eec316049b02226be02bcaefc6204016a7d0da876cab2094a5f1572ba42195dc0395ad42755b7dfbe11e28bcef59c04e85821e3b8e7ce428966f418bd
AUX backuppc-3.3.1-perl526.patch 907 BLAKE2B 80da3a7d9710c8ef55fac9e11859604584d1d2909dbd36201a206e96624aceb4ff362292914fda7bd5d513a27bbf338f6476ee2a49914fd06a449077318a71f7 SHA512 b697d756659f80d665d7c57132a44aa97411617988220e93360e6f3cc9c3b03059ecc4326fb6fa4016e55b4641694299122b8ca224ab1048986e5f29156b849f
@@ -10,5 +11,6 @@ AUX backuppc.service 231 BLAKE2B 948543a9fc9accff40868e930680c4eb9c0ff89c2912540
DIST BackupPC-3.3.1.tar.gz 556461 BLAKE2B 91477196506291fb542a266aca4182ad727758ccf8379c135dcd5147d42b5f1f58d094473430fee64f67e0fc75e077fdf92bfcdaf2313dd53480737666746160 SHA512 b6bb9de3103c5062098d80755055b7461ae9133a4a46a66b3d0af89d081086571694db1898e7d85880defa15b030bad522812116ae5361c0fbde90b877d139c6
DIST BackupPC-4.4.0.tar.gz 657309 BLAKE2B db977b73b09e1b2a051e38ecc94567cb516e2b11eca79c23bb0c4eef508e78cbbc984aaee4c84dc4ecd0524d849195c14dfe395ff97f77b6c7cf8adff152d75e SHA512 0c88447ab000c4a452034d5d8a074cd56801c7b38b0886e686e446c73ecfd0a40f0aa08703f76d16c31b24aec85c10c4ed1815d0cb67be5a1d66e5caeb3de418
EBUILD backuppc-3.3.1-r6.ebuild 5448 BLAKE2B 473a11c0a125b5d87badb514f25aff1e991d09a580e2953ba9073bba7c01a9817c7a698e06590ec227a01cb82bd791b2e0c5515ae988b343c9301ae980fc8dee SHA512 ed152a7f3a236b4326dd3c2da17e963c328c835617a6c259069c40fd8a3e15038d2f4898ad7ffa513cea381c2aef08704b5ea0d5aa8869c28237712086fde7f2
-EBUILD backuppc-4.4.0-r1.ebuild 5100 BLAKE2B 9e4b84f5d341892f1c03fd92db40036e1f52b9346140502ab88b790090dd38ab65767d29c9ab60b78155911ffaebce685a123bf8f6ec2989a056bdaf3417de68 SHA512 31453e810fdbc6ed24666de62d629ee8a8c4f9cf7c86a8ac56fc0beddf88963cb97bec7908286601927df12479c8ab8ed2abb852dac3fe8e0bf9cd4d69cf899c
+EBUILD backuppc-4.4.0-r1.ebuild 5309 BLAKE2B 2b570c2802651ce4eb508431b2804c93b1fb4ebdb955e71d3e8946b0a3771245d0e707df9c5c0520c93a1ec9421d2b3d672aca6bff19d21fbe9e4a3c266c99c9 SHA512 34c2068c9707d5382dc6471584e9d70c97a0237146b002e2ce223e12eedd124d5ea6256e129189cd184396cbfeed49668bf7f07355c32afa13513b117d7d53b5
+EBUILD backuppc-4.4.0-r2.ebuild 5381 BLAKE2B 413fa671626a5d42150198dc5a6ebef14b0a521b71548e6a6354106994f1f13393c9de3dcf7219cd7f985192e91f0e6697b37efb9b1d111e4816e6d3aa4db26f SHA512 8fb0561d8412d9c5e42174008ae6b69bb14f4f26d084b300d0ab6c9862e3154673a0fdfbf0b1112511a5c7d44b5d4ffdd6beb7204d4dc26b3435b67749d15018
MISC metadata.xml 539 BLAKE2B c702c033b6ffe694fc3297d786adc3078d89d882eb88a4524411f202eabd14bf95ad7b31ad122e7249a038cd96f511c288c07fa192bb4e56e5edef43e4131675 SHA512 8f96ed324e67f5548f9dbd0b9a56206a902fc8e0cc0feccaf6e7a29d76050c8568f97fbee5a394ecfb121e54e133fe93afd2c26d33af68a9766f4726a1696354
diff --git a/app-backup/backuppc/backuppc-4.4.0-r1.ebuild b/app-backup/backuppc/backuppc-4.4.0-r1.ebuild
index 3d1f23482625..3e0e0aebb803 100644
--- a/app-backup/backuppc/backuppc-4.4.0-r1.ebuild
+++ b/app-backup/backuppc/backuppc-4.4.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -64,7 +64,6 @@ 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
}
@@ -145,6 +144,10 @@ src_install() {
}
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"
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
+