[arch-commits] Commit in backuppc/repos (20 files)

Sébastien Luttringer seblu at archlinux.org
Thu May 25 23:39:19 UTC 2017


    Date: Thursday, May 25, 2017 @ 23:39:16
  Author: seblu
Revision: 230328

archrelease: copy trunk to community-x86_64, community-i686

Added:
  backuppc/repos/community-i686/01-fix-edit-compound.patch
    (from rev 230327, backuppc/trunk/01-fix-edit-compound.patch)
  backuppc/repos/community-i686/PKGBUILD
    (from rev 230327, backuppc/trunk/PKGBUILD)
  backuppc/repos/community-i686/backuppc.httpd
    (from rev 230327, backuppc/trunk/backuppc.httpd)
  backuppc/repos/community-i686/backuppc.install
    (from rev 230327, backuppc/trunk/backuppc.install)
  backuppc/repos/community-i686/backuppc.profile.csh
    (from rev 230327, backuppc/trunk/backuppc.profile.csh)
  backuppc/repos/community-i686/backuppc.profile.sh
    (from rev 230327, backuppc/trunk/backuppc.profile.sh)
  backuppc/repos/community-i686/backuppc.service
    (from rev 230327, backuppc/trunk/backuppc.service)
  backuppc/repos/community-i686/backuppc.sysusers
    (from rev 230327, backuppc/trunk/backuppc.sysusers)
  backuppc/repos/community-i686/backuppc.tmpfiles
    (from rev 230327, backuppc/trunk/backuppc.tmpfiles)
  backuppc/repos/community-x86_64/01-fix-edit-compound.patch
    (from rev 230327, backuppc/trunk/01-fix-edit-compound.patch)
  backuppc/repos/community-x86_64/PKGBUILD
    (from rev 230327, backuppc/trunk/PKGBUILD)
  backuppc/repos/community-x86_64/backuppc.httpd
    (from rev 230327, backuppc/trunk/backuppc.httpd)
  backuppc/repos/community-x86_64/backuppc.install
    (from rev 230327, backuppc/trunk/backuppc.install)
  backuppc/repos/community-x86_64/backuppc.profile.csh
    (from rev 230327, backuppc/trunk/backuppc.profile.csh)
  backuppc/repos/community-x86_64/backuppc.profile.sh
    (from rev 230327, backuppc/trunk/backuppc.profile.sh)
  backuppc/repos/community-x86_64/backuppc.service
    (from rev 230327, backuppc/trunk/backuppc.service)
  backuppc/repos/community-x86_64/backuppc.sysusers
    (from rev 230327, backuppc/trunk/backuppc.sysusers)
  backuppc/repos/community-x86_64/backuppc.tmpfiles
    (from rev 230327, backuppc/trunk/backuppc.tmpfiles)
Deleted:
  backuppc/repos/community-i686/01-fix-edit-compound.patch
  backuppc/repos/community-x86_64/01-fix-edit-compound.patch

---------------------------------------------+
 /01-fix-edit-compound.patch                 |  296 ++++++++++++++++++++++++++
 community-i686/01-fix-edit-compound.patch   |  148 -------------
 community-i686/PKGBUILD                     |  131 +++++++++++
 community-i686/backuppc.httpd               |   21 +
 community-i686/backuppc.install             |   23 ++
 community-i686/backuppc.profile.csh         |    1 
 community-i686/backuppc.profile.sh          |    3 
 community-i686/backuppc.service             |   11 
 community-i686/backuppc.sysusers            |    1 
 community-i686/backuppc.tmpfiles            |    1 
 community-x86_64/01-fix-edit-compound.patch |  148 -------------
 community-x86_64/PKGBUILD                   |  131 +++++++++++
 community-x86_64/backuppc.httpd             |   21 +
 community-x86_64/backuppc.install           |   23 ++
 community-x86_64/backuppc.profile.csh       |    1 
 community-x86_64/backuppc.profile.sh        |    3 
 community-x86_64/backuppc.service           |   11 
 community-x86_64/backuppc.sysusers          |    1 
 community-x86_64/backuppc.tmpfiles          |    1 
 19 files changed, 680 insertions(+), 296 deletions(-)

Deleted: community-i686/01-fix-edit-compound.patch
===================================================================
--- community-i686/01-fix-edit-compound.patch	2017-05-25 23:35:56 UTC (rev 230327)
+++ community-i686/01-fix-edit-compound.patch	2017-05-25 23:39:16 UTC (rev 230328)
@@ -1,148 +0,0 @@
-From 7936184a9ec049fef3d0d67e012b23d79eb336f1 Mon Sep 17 00:00:00 2001
-From: Craig Barratt <craigb at gmail.com>
-Date: Fri, 12 May 2017 01:00:41 -0700
-Subject: [PATCH] fixed editing of compound variables (eg, BackupFilesOnly)
- when main config.pl value is non-empty
-
----
- lib/BackupPC/CGI/EditConfig.pm | 58 +++++++++++++++++++++++++++---------------
- 1 file changed, 37 insertions(+), 21 deletions(-)
-
-diff --git a/lib/BackupPC/CGI/EditConfig.pm b/lib/BackupPC/CGI/EditConfig.pm
-index 5868dc2..747c488 100644
---- a/lib/BackupPC/CGI/EditConfig.pm
-+++ b/lib/BackupPC/CGI/EditConfig.pm
-@@ -411,14 +411,14 @@ sub action
-             #
-             #print STDERR Dumper(\%In);
-             foreach my $v ( sort(keys(%In)) ) {
--                if ( $v =~ /^v_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
--                    delete($In{$v}) if ( !defined($In{"orig_zZ_$1"}) );
-+                if ( $v =~ /^v_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
-+                    delete($In{$v}) if ( !defined($In{"orig_$1"}) );
-                 }
--                if ( $v =~ /^orig_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
--                    $In{"v_zZ_$1"} = $In{$v};
-+                if ( $v =~ /^orig_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
-+                    $In{"v_$1"} = $In{$v};
-                 }
-             }
--            delete($In{"vflds.$var"});
-+            #delete($In{"v_flds_$var"});
-         }
- 
-         ($newConf, $override) = inputParse($bpc, $userHost);
-@@ -614,8 +614,9 @@ EOF
- 	    return false;
- 	}
- 	var allVars = {};
--	var varRE  = new RegExp("^v_zZ_(" + varName + ".*)");
--	var origRE = new RegExp("^orig_zZ_(" + varName + ".*)");
-+	var varRE  = new RegExp("^v_((zZ_|flds_)" + varName + ".*)");
-+	var origRE = new RegExp("^orig_((zZ_|flds_)" + varName + ".*)");
-+	var fldsRE = new RegExp("^flds_");
-         for ( var i = 0 ; i < document.editForm.elements.length ; i++ ) {
- 	    var e = document.editForm.elements[i];
- 	    var re;
-@@ -624,7 +625,7 @@ EOF
- 		    allVars[re[1]] = 0;
- 		}
- 		allVars[re[1]]++;
--		//debugMsg("found v_zZ_ match with " + re[1]);
-+		//debugMsg("found v_ match with " + re[1]);
- 		//debugMsg("allVars[" + re[1] + "] = " + allVars[re[1]]);
- 	    } else if ( (re = origRE.exec(e.name)) != null ) {
- 		if ( allVars[re[1]] == null ) {
-@@ -639,13 +640,20 @@ EOF
- 	    if ( allVars[v] != 0 ) {
- 		//debugMsg("Not the same shape because of " + v);
- 		sameShape = 0;
--	    } else {
-+                break;
-+            }
-+            if ( fldsRE.exec(v) != null ) {
-+                // always rebuild a compound variable
-+		sameShape = 0;
-+                break;
-+            }
-+        }
-+	if ( sameShape ) {
-+            for ( v in allVars ) {
-                 // copy the original variable values
- 		//debugMsg("setting " + v);
--		eval("document.editForm.v_zZ_" + v + ".value = document.editForm.orig_zZ_" + v + ".value");
-+		eval("document.editForm.v_" + v + ".value = document.editForm.orig_" + v + ".value");
-             }
--	}
--	if ( sameShape ) {
- 	    return true;
- 	} else {
-             // need to rebuild the form since the compound variable
-@@ -915,11 +923,19 @@ EOF
-             # Just switching menus: copy all the orig_zZ_ input parameters
-             #
-             foreach my $var ( sort(keys(%In)) ) {
--                next if ( $var !~ /^orig_zZ_/ );
--                my $val = decode_utf8($In{$var});
--                $contentHidden .= <<EOF;
-+                if ( $var =~ /^orig_zZ_/ ) {
-+                    my $val = decode_utf8($In{$var});
-+                    $contentHidden .= <<EOF;
-+<input type="hidden" name="$var" value="${EscHTML($val)}">
-+EOF
-+                } elsif ( $var =~ /^orig_flds_/ ) {
-+                    foreach my $v ( split(/\0/, $In{$var}) ) {
-+                        my $val = decode_utf8($v);
-+                        $contentHidden .= <<EOF;
- <input type="hidden" name="$var" value="${EscHTML($val)}">
- EOF
-+                    }
-+                }
-             }
- 	}
-     } else {
-@@ -991,7 +1007,7 @@ sub fieldHiddenBuild
-                 # rather than hard-coded
-                 #
-                 $content .= <<EOF;
--<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
-+<input type="hidden" name="${prefix}_flds_$varName" value="${EscHTML($fld)}">
- EOF
-             }
-             $content .= fieldHiddenBuild($childType, "${varName}_zZ_$fldNum",
-@@ -1194,7 +1210,7 @@ EOF
-                 # rather than hard-coded
-                 #
-                 $content .= <<EOF;
--<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
-+<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
- EOF
-             }
-             $content .= "</td>\n";
-@@ -1239,7 +1255,7 @@ EOF
-                 # rather than hard-coded
-                 #
-                 $content .= <<EOF;
--<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
-+<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
- EOF
-             }
-             $content .= fieldEditBuild($childType, "${varName}_zZ_$fldNum",
-@@ -1346,7 +1362,7 @@ sub fieldErrorCheck
-         } elsif ( defined($type->{child}) ) {
-             @order = sort(keys(%{$type->{child}}));
-         } else {
--            @order = split(/\0/, $In{"vflds.$varName"});
-+            @order = split(/\0/, $In{"v_flds_$varName"});
-         }
-         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {
-             my $fld = $order[$fldNum];
-@@ -1459,7 +1475,7 @@ sub fieldInputParse
-         } elsif ( defined($type->{child}) ) {
-             @order = sort(keys(%{$type->{child}}));
-         } else {
--            @order = split(/\0/, $In{"vflds.$varName"});
-+            @order = split(/\0/, $In{"v_flds_$varName"});
-         }
- 
-         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {

Copied: backuppc/repos/community-i686/01-fix-edit-compound.patch (from rev 230327, backuppc/trunk/01-fix-edit-compound.patch)
===================================================================
--- community-i686/01-fix-edit-compound.patch	                        (rev 0)
+++ community-i686/01-fix-edit-compound.patch	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,148 @@
+From 7936184a9ec049fef3d0d67e012b23d79eb336f1 Mon Sep 17 00:00:00 2001
+From: Craig Barratt <craigb at gmail.com>
+Date: Fri, 12 May 2017 01:00:41 -0700
+Subject: [PATCH] fixed editing of compound variables (eg, BackupFilesOnly)
+ when main config.pl value is non-empty
+
+---
+ lib/BackupPC/CGI/EditConfig.pm | 58 +++++++++++++++++++++++++++---------------
+ 1 file changed, 37 insertions(+), 21 deletions(-)
+
+diff --git a/lib/BackupPC/CGI/EditConfig.pm b/lib/BackupPC/CGI/EditConfig.pm
+index 5868dc2..747c488 100644
+--- a/lib/BackupPC/CGI/EditConfig.pm
++++ b/lib/BackupPC/CGI/EditConfig.pm
+@@ -411,14 +411,14 @@ sub action
+             #
+             #print STDERR Dumper(\%In);
+             foreach my $v ( sort(keys(%In)) ) {
+-                if ( $v =~ /^v_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
+-                    delete($In{$v}) if ( !defined($In{"orig_zZ_$1"}) );
++                if ( $v =~ /^v_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
++                    delete($In{$v}) if ( !defined($In{"orig_$1"}) );
+                 }
+-                if ( $v =~ /^orig_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
+-                    $In{"v_zZ_$1"} = $In{$v};
++                if ( $v =~ /^orig_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
++                    $In{"v_$1"} = $In{$v};
+                 }
+             }
+-            delete($In{"vflds.$var"});
++            #delete($In{"v_flds_$var"});
+         }
+ 
+         ($newConf, $override) = inputParse($bpc, $userHost);
+@@ -614,8 +614,9 @@ EOF
+ 	    return false;
+ 	}
+ 	var allVars = {};
+-	var varRE  = new RegExp("^v_zZ_(" + varName + ".*)");
+-	var origRE = new RegExp("^orig_zZ_(" + varName + ".*)");
++	var varRE  = new RegExp("^v_((zZ_|flds_)" + varName + ".*)");
++	var origRE = new RegExp("^orig_((zZ_|flds_)" + varName + ".*)");
++	var fldsRE = new RegExp("^flds_");
+         for ( var i = 0 ; i < document.editForm.elements.length ; i++ ) {
+ 	    var e = document.editForm.elements[i];
+ 	    var re;
+@@ -624,7 +625,7 @@ EOF
+ 		    allVars[re[1]] = 0;
+ 		}
+ 		allVars[re[1]]++;
+-		//debugMsg("found v_zZ_ match with " + re[1]);
++		//debugMsg("found v_ match with " + re[1]);
+ 		//debugMsg("allVars[" + re[1] + "] = " + allVars[re[1]]);
+ 	    } else if ( (re = origRE.exec(e.name)) != null ) {
+ 		if ( allVars[re[1]] == null ) {
+@@ -639,13 +640,20 @@ EOF
+ 	    if ( allVars[v] != 0 ) {
+ 		//debugMsg("Not the same shape because of " + v);
+ 		sameShape = 0;
+-	    } else {
++                break;
++            }
++            if ( fldsRE.exec(v) != null ) {
++                // always rebuild a compound variable
++		sameShape = 0;
++                break;
++            }
++        }
++	if ( sameShape ) {
++            for ( v in allVars ) {
+                 // copy the original variable values
+ 		//debugMsg("setting " + v);
+-		eval("document.editForm.v_zZ_" + v + ".value = document.editForm.orig_zZ_" + v + ".value");
++		eval("document.editForm.v_" + v + ".value = document.editForm.orig_" + v + ".value");
+             }
+-	}
+-	if ( sameShape ) {
+ 	    return true;
+ 	} else {
+             // need to rebuild the form since the compound variable
+@@ -915,11 +923,19 @@ EOF
+             # Just switching menus: copy all the orig_zZ_ input parameters
+             #
+             foreach my $var ( sort(keys(%In)) ) {
+-                next if ( $var !~ /^orig_zZ_/ );
+-                my $val = decode_utf8($In{$var});
+-                $contentHidden .= <<EOF;
++                if ( $var =~ /^orig_zZ_/ ) {
++                    my $val = decode_utf8($In{$var});
++                    $contentHidden .= <<EOF;
++<input type="hidden" name="$var" value="${EscHTML($val)}">
++EOF
++                } elsif ( $var =~ /^orig_flds_/ ) {
++                    foreach my $v ( split(/\0/, $In{$var}) ) {
++                        my $val = decode_utf8($v);
++                        $contentHidden .= <<EOF;
+ <input type="hidden" name="$var" value="${EscHTML($val)}">
+ EOF
++                    }
++                }
+             }
+ 	}
+     } else {
+@@ -991,7 +1007,7 @@ sub fieldHiddenBuild
+                 # rather than hard-coded
+                 #
+                 $content .= <<EOF;
+-<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
++<input type="hidden" name="${prefix}_flds_$varName" value="${EscHTML($fld)}">
+ EOF
+             }
+             $content .= fieldHiddenBuild($childType, "${varName}_zZ_$fldNum",
+@@ -1194,7 +1210,7 @@ EOF
+                 # rather than hard-coded
+                 #
+                 $content .= <<EOF;
+-<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
++<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
+ EOF
+             }
+             $content .= "</td>\n";
+@@ -1239,7 +1255,7 @@ EOF
+                 # rather than hard-coded
+                 #
+                 $content .= <<EOF;
+-<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
++<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
+ EOF
+             }
+             $content .= fieldEditBuild($childType, "${varName}_zZ_$fldNum",
+@@ -1346,7 +1362,7 @@ sub fieldErrorCheck
+         } elsif ( defined($type->{child}) ) {
+             @order = sort(keys(%{$type->{child}}));
+         } else {
+-            @order = split(/\0/, $In{"vflds.$varName"});
++            @order = split(/\0/, $In{"v_flds_$varName"});
+         }
+         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {
+             my $fld = $order[$fldNum];
+@@ -1459,7 +1475,7 @@ sub fieldInputParse
+         } elsif ( defined($type->{child}) ) {
+             @order = sort(keys(%{$type->{child}}));
+         } else {
+-            @order = split(/\0/, $In{"vflds.$varName"});
++            @order = split(/\0/, $In{"v_flds_$varName"});
+         }
+ 
+         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {

Copied: backuppc/repos/community-i686/PKGBUILD (from rev 230327, backuppc/trunk/PKGBUILD)
===================================================================
--- community-i686/PKGBUILD	                        (rev 0)
+++ community-i686/PKGBUILD	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,131 @@
+# $Id$
+# Maintainer: Sébastien Luttringer
+
+pkgname=backuppc
+pkgver=4.1.2
+_xsver=0.53
+_rbpcver=3.0.9.6
+pkgrel=2
+pkgdesc='Enterprise-grade system for backing up Linux, Windows and MacOS PCs'
+url='https://github.com/backuppc/backuppc/'
+license=('GPL2')
+arch=('x86_64' 'i686')
+makedepends=('git')
+depends=('glibc' 'popt' 'perl' 'par2cmdline' 'perl-archive-zip' 'perl-io-dirent'
+         'perl-file-listing' 'perl-time-modules' 'perl-cgi' 'perl-xml-rss')
+optdepends=('openssh: ssh transfert support'
+            'rsync: rsync transfert support'
+            'smbclient: smb/cifs transfert support'
+            'rrdtool: graphs of the pool usage ')
+source=("https://github.com/backuppc/backuppc/releases/download/$pkgver/BackupPC-$pkgver.tar.gz"
+        "https://github.com/backuppc/backuppc-xs/releases/download/v${_xsver//./_}/BackupPC-XS-${_xsver}.tar.gz"
+        "https://github.com/backuppc/rsync-bpc/releases/download/v${_rbpcver//./_}/rsync-bpc-${_rbpcver}.tar.gz"
+        '01-fix-edit-compound.patch'
+        "$pkgname.service"
+        "$pkgname.sysusers"
+        "$pkgname.tmpfiles"
+        "$pkgname.profile.sh"
+        "$pkgname.profile.csh"
+        "$pkgname.httpd")
+install=$pkgname.install
+backup=("etc/$pkgname/config.pl"
+        "etc/$pkgname/hosts"
+        "etc/httpd/conf/extra/$pkgname.conf"
+        "etc/$pkgname/$pkgname.users")
+md5sums=('51b6328747d7329fe0278329eaa22ac6'
+         'a6e58a97994e0128064ab16ee337f2f0'
+         'c3e4b850d5d522bd1df21555c4287448'
+         '24f8fbf9732fb9c523d71fa3349211d4'
+         '9d798d275eb737bcfd035d5277b6b4ce'
+         'd90840387358e5dd230cace0b2d6b53a'
+         'bda3ec3f4c75521c6869279eb16af2f8'
+         '67a939aa63740c52d12bbdca72d37891'
+         'ef09e4dae5b4197998f5c3a74e0ec86d'
+         '99e641c4f3ba4fbcc53e046ce7290ad5')
+
+prepare() {
+  cd BackupPC-$pkgver
+  # apply patch from the source array (should be a pacman feature)
+  local filename
+  for filename in "${source[@]}"; do
+    if [[ "$filename" =~ \.patch$ ]]; then
+      msg2 "Applying patch ${filename##*/}"
+      patch -p1 -N -i "$srcdir/${filename##*/}"
+    fi
+  done
+  :
+}
+
+build() {
+  msg2 'rsync-bpc'
+  cd "$srcdir"/rsync-bpc-$_rbpcver
+  ./configure --prefix=/usr/share/backuppc
+  make
+}
+
+package() {
+  msg2 'rsync-bpc'
+  cd "$srcdir"/rsync-bpc-$_rbpcver
+  make install DESTDIR="$pkgdir"
+
+  msg2 'backuppc-xs'
+  cd "$srcdir"/BackupPC-XS-$_xsver
+  perl Makefile.PL
+  make -j1 # parallel build fail
+  make install DESTDIR="$pkgdir"
+
+  msg2 'backuppc'
+  cd "$srcdir"/BackupPC-$pkgver
+  export PERLLIB="$pkgdir/usr/lib/perl5/site_perl/"
+  perl configure.pl \
+    --batch \
+    --no-set-perms \
+    --uid-ignore \
+    --hostname __HOSTNAME__ \
+    --compress-level 5 \
+    --backuppc-user=backuppc \
+    --dest-dir "$pkgdir" \
+    --fhs \
+    --install-dir /usr/share/$pkgname \
+    --config-dir /etc/$pkgname \
+    --cgi-dir /usr/share/$pkgname/cgi-bin \
+    --html-dir /usr/share/$pkgname/html \
+    --html-dir-url /backuppc \
+    --data-dir /var/lib/$pkgname \
+    --log-dir /var/log/$pkgname \
+    --run-dir /run/$pkgname \
+    --bin-path rsync_bpc=/usr/share/backuppc/bin/rsync_bpc \
+    --bin-path smbclient=/usr/bin/smbclient \
+    --bin-path nmblookup=/usr/bin/nmblookup \
+    --bin-path rsync=/usr/bin/rsync \
+    --bin-path ssh=/usr/bin/ssh \
+    --bin-path sendmail=/usr/bin/sendmail \
+    --bin-path ping=/usr/bin/ping \
+    --bin-path ping6=/usr/bin/ping \
+    --bin-path rrdtool=/usr/bin/rrdtool \
+    --
+  cd "$srcdir"
+  # systemd
+  install -D -m 644 $pkgname.service "$pkgdir/usr/lib/systemd/system/$pkgname.service"
+  install -D -m 644 $pkgname.sysusers "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
+  install -D -m 644 $pkgname.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
+  # install shell profiles
+  install -D -m 755 $pkgname.profile.sh "$pkgdir/etc/profile.d/$pkgname.sh"
+  install -D -m 755 $pkgname.profile.csh "$pkgdir/etc/profile.d/$pkgname.csh"
+  # install apache http
+  install -D -m 644 $pkgname.httpd "$pkgdir/etc/httpd/conf/extra/$pkgname.conf"
+  install -D -m 640 /dev/null "$pkgdir/etc/$pkgname/$pkgname.users"
+  # set correct permissions
+  cd "$pkgdir"
+  chown 126:126 -R etc/$pkgname
+  chown 126:126 -R var/{log,lib}/$pkgname
+  chmod 755 etc
+  chmod 755 -R var usr/share/$pkgname/{cgi-,}bin
+  chmod 750 var/log/$pkgname etc/$pkgname
+  chmod 750 -R var/lib/$pkgname
+  chmod 640 etc/$pkgname/{config.pl,hosts}
+  # no /run
+  rm -r "$pkgdir"/run
+}
+
+# vim:set ts=2 sw=2 et:

Copied: backuppc/repos/community-i686/backuppc.httpd (from rev 230327, backuppc/trunk/backuppc.httpd)
===================================================================
--- community-i686/backuppc.httpd	                        (rev 0)
+++ community-i686/backuppc.httpd	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,21 @@
+<Directory /usr/share/backuppc/cgi-bin>
+  # This section tells apache which machines can access the interface.
+  # You can change the allow line to allow access from your local
+  # network, or comment out this region to allow access from all
+  # machines.
+  Require ip 127.0.0.1
+
+  # You can change the authorization method to LDAP or another method
+  # besides htaccess here if you are so inclined.
+  AuthType Basic
+  AuthUserFile /etc/backuppc/backuppc.users
+  AuthName "BackupPC Community Edition Administrative Interface"
+  require valid-user
+</Directory>
+
+<Directory /usr/share/backuppc/html>
+  Require ip 127.0.0.1
+</Directory>
+
+Alias           /backuppc         /usr/share/backuppc/html
+ScriptAlias     /BackupPC_Admin         /usr/share/backuppc/cgi-bin/BackupPC_Admin

Copied: backuppc/repos/community-i686/backuppc.install (from rev 230327, backuppc/trunk/backuppc.install)
===================================================================
--- community-i686/backuppc.install	                        (rev 0)
+++ community-i686/backuppc.install	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,23 @@
+#/bin/bash
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+post_upgrade() {
+  # change uid of old version
+  if (( $(vercmp $2 3.2.1-8) < 0 )); then
+    if pgrep -u backuppc >/dev/null; then
+      echo '==> backuppc user is running.'
+      echo '==> You must manually change uid and gid of backuppc!'
+      echo '==> e.g: usermod -u 126 -g 126 backuppc'
+    else
+      usermod -u 126 -g 126 backuppc
+      echo '==> backuppc uid/gid have changed. Check your filesystem permissions.'
+    fi
+  fi
+  if (( $(vercmp $2 4.0.0-1) <= 0 )); then
+    echo '==> Major update. Remember to merge new variables in config.pl!'
+  fi
+  :
+}
+
+# vim:set ts=2 sw=2 ft=sh et:

Copied: backuppc/repos/community-i686/backuppc.profile.csh (from rev 230327, backuppc/trunk/backuppc.profile.csh)
===================================================================
--- community-i686/backuppc.profile.csh	                        (rev 0)
+++ community-i686/backuppc.profile.csh	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1 @@
+[ -d /usr/share/backuppc/bin ] && setenv PATH ${PATH}:/usr/share/backuppc/bin

Copied: backuppc/repos/community-i686/backuppc.profile.sh (from rev 230327, backuppc/trunk/backuppc.profile.sh)
===================================================================
--- community-i686/backuppc.profile.sh	                        (rev 0)
+++ community-i686/backuppc.profile.sh	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,3 @@
+[ -d /usr/share/backuppc/bin ] && PATH=$PATH:/usr/share/backuppc/bin
+
+export PATH

Copied: backuppc/repos/community-i686/backuppc.service (from rev 230327, backuppc/trunk/backuppc.service)
===================================================================
--- community-i686/backuppc.service	                        (rev 0)
+++ community-i686/backuppc.service	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,11 @@
+[Unit]
+Description=BackupPC
+
+[Service]
+User=backuppc
+PIDFile=/run/backuppc/BackupPC.pid
+ExecStart=/usr/share/backuppc/bin/BackupPC
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target

Copied: backuppc/repos/community-i686/backuppc.sysusers (from rev 230327, backuppc/trunk/backuppc.sysusers)
===================================================================
--- community-i686/backuppc.sysusers	                        (rev 0)
+++ community-i686/backuppc.sysusers	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1 @@
+u backuppc 126 - /var/lib/backuppc

Copied: backuppc/repos/community-i686/backuppc.tmpfiles (from rev 230327, backuppc/trunk/backuppc.tmpfiles)
===================================================================
--- community-i686/backuppc.tmpfiles	                        (rev 0)
+++ community-i686/backuppc.tmpfiles	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1 @@
+d /run/backuppc 0750 backuppc backuppc

Deleted: community-x86_64/01-fix-edit-compound.patch
===================================================================
--- community-x86_64/01-fix-edit-compound.patch	2017-05-25 23:35:56 UTC (rev 230327)
+++ community-x86_64/01-fix-edit-compound.patch	2017-05-25 23:39:16 UTC (rev 230328)
@@ -1,148 +0,0 @@
-From 7936184a9ec049fef3d0d67e012b23d79eb336f1 Mon Sep 17 00:00:00 2001
-From: Craig Barratt <craigb at gmail.com>
-Date: Fri, 12 May 2017 01:00:41 -0700
-Subject: [PATCH] fixed editing of compound variables (eg, BackupFilesOnly)
- when main config.pl value is non-empty
-
----
- lib/BackupPC/CGI/EditConfig.pm | 58 +++++++++++++++++++++++++++---------------
- 1 file changed, 37 insertions(+), 21 deletions(-)
-
-diff --git a/lib/BackupPC/CGI/EditConfig.pm b/lib/BackupPC/CGI/EditConfig.pm
-index 5868dc2..747c488 100644
---- a/lib/BackupPC/CGI/EditConfig.pm
-+++ b/lib/BackupPC/CGI/EditConfig.pm
-@@ -411,14 +411,14 @@ sub action
-             #
-             #print STDERR Dumper(\%In);
-             foreach my $v ( sort(keys(%In)) ) {
--                if ( $v =~ /^v_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
--                    delete($In{$v}) if ( !defined($In{"orig_zZ_$1"}) );
-+                if ( $v =~ /^v_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
-+                    delete($In{$v}) if ( !defined($In{"orig_$1"}) );
-                 }
--                if ( $v =~ /^orig_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
--                    $In{"v_zZ_$1"} = $In{$v};
-+                if ( $v =~ /^orig_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
-+                    $In{"v_$1"} = $In{$v};
-                 }
-             }
--            delete($In{"vflds.$var"});
-+            #delete($In{"v_flds_$var"});
-         }
- 
-         ($newConf, $override) = inputParse($bpc, $userHost);
-@@ -614,8 +614,9 @@ EOF
- 	    return false;
- 	}
- 	var allVars = {};
--	var varRE  = new RegExp("^v_zZ_(" + varName + ".*)");
--	var origRE = new RegExp("^orig_zZ_(" + varName + ".*)");
-+	var varRE  = new RegExp("^v_((zZ_|flds_)" + varName + ".*)");
-+	var origRE = new RegExp("^orig_((zZ_|flds_)" + varName + ".*)");
-+	var fldsRE = new RegExp("^flds_");
-         for ( var i = 0 ; i < document.editForm.elements.length ; i++ ) {
- 	    var e = document.editForm.elements[i];
- 	    var re;
-@@ -624,7 +625,7 @@ EOF
- 		    allVars[re[1]] = 0;
- 		}
- 		allVars[re[1]]++;
--		//debugMsg("found v_zZ_ match with " + re[1]);
-+		//debugMsg("found v_ match with " + re[1]);
- 		//debugMsg("allVars[" + re[1] + "] = " + allVars[re[1]]);
- 	    } else if ( (re = origRE.exec(e.name)) != null ) {
- 		if ( allVars[re[1]] == null ) {
-@@ -639,13 +640,20 @@ EOF
- 	    if ( allVars[v] != 0 ) {
- 		//debugMsg("Not the same shape because of " + v);
- 		sameShape = 0;
--	    } else {
-+                break;
-+            }
-+            if ( fldsRE.exec(v) != null ) {
-+                // always rebuild a compound variable
-+		sameShape = 0;
-+                break;
-+            }
-+        }
-+	if ( sameShape ) {
-+            for ( v in allVars ) {
-                 // copy the original variable values
- 		//debugMsg("setting " + v);
--		eval("document.editForm.v_zZ_" + v + ".value = document.editForm.orig_zZ_" + v + ".value");
-+		eval("document.editForm.v_" + v + ".value = document.editForm.orig_" + v + ".value");
-             }
--	}
--	if ( sameShape ) {
- 	    return true;
- 	} else {
-             // need to rebuild the form since the compound variable
-@@ -915,11 +923,19 @@ EOF
-             # Just switching menus: copy all the orig_zZ_ input parameters
-             #
-             foreach my $var ( sort(keys(%In)) ) {
--                next if ( $var !~ /^orig_zZ_/ );
--                my $val = decode_utf8($In{$var});
--                $contentHidden .= <<EOF;
-+                if ( $var =~ /^orig_zZ_/ ) {
-+                    my $val = decode_utf8($In{$var});
-+                    $contentHidden .= <<EOF;
-+<input type="hidden" name="$var" value="${EscHTML($val)}">
-+EOF
-+                } elsif ( $var =~ /^orig_flds_/ ) {
-+                    foreach my $v ( split(/\0/, $In{$var}) ) {
-+                        my $val = decode_utf8($v);
-+                        $contentHidden .= <<EOF;
- <input type="hidden" name="$var" value="${EscHTML($val)}">
- EOF
-+                    }
-+                }
-             }
- 	}
-     } else {
-@@ -991,7 +1007,7 @@ sub fieldHiddenBuild
-                 # rather than hard-coded
-                 #
-                 $content .= <<EOF;
--<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
-+<input type="hidden" name="${prefix}_flds_$varName" value="${EscHTML($fld)}">
- EOF
-             }
-             $content .= fieldHiddenBuild($childType, "${varName}_zZ_$fldNum",
-@@ -1194,7 +1210,7 @@ EOF
-                 # rather than hard-coded
-                 #
-                 $content .= <<EOF;
--<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
-+<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
- EOF
-             }
-             $content .= "</td>\n";
-@@ -1239,7 +1255,7 @@ EOF
-                 # rather than hard-coded
-                 #
-                 $content .= <<EOF;
--<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
-+<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
- EOF
-             }
-             $content .= fieldEditBuild($childType, "${varName}_zZ_$fldNum",
-@@ -1346,7 +1362,7 @@ sub fieldErrorCheck
-         } elsif ( defined($type->{child}) ) {
-             @order = sort(keys(%{$type->{child}}));
-         } else {
--            @order = split(/\0/, $In{"vflds.$varName"});
-+            @order = split(/\0/, $In{"v_flds_$varName"});
-         }
-         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {
-             my $fld = $order[$fldNum];
-@@ -1459,7 +1475,7 @@ sub fieldInputParse
-         } elsif ( defined($type->{child}) ) {
-             @order = sort(keys(%{$type->{child}}));
-         } else {
--            @order = split(/\0/, $In{"vflds.$varName"});
-+            @order = split(/\0/, $In{"v_flds_$varName"});
-         }
- 
-         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {

Copied: backuppc/repos/community-x86_64/01-fix-edit-compound.patch (from rev 230327, backuppc/trunk/01-fix-edit-compound.patch)
===================================================================
--- community-x86_64/01-fix-edit-compound.patch	                        (rev 0)
+++ community-x86_64/01-fix-edit-compound.patch	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,148 @@
+From 7936184a9ec049fef3d0d67e012b23d79eb336f1 Mon Sep 17 00:00:00 2001
+From: Craig Barratt <craigb at gmail.com>
+Date: Fri, 12 May 2017 01:00:41 -0700
+Subject: [PATCH] fixed editing of compound variables (eg, BackupFilesOnly)
+ when main config.pl value is non-empty
+
+---
+ lib/BackupPC/CGI/EditConfig.pm | 58 +++++++++++++++++++++++++++---------------
+ 1 file changed, 37 insertions(+), 21 deletions(-)
+
+diff --git a/lib/BackupPC/CGI/EditConfig.pm b/lib/BackupPC/CGI/EditConfig.pm
+index 5868dc2..747c488 100644
+--- a/lib/BackupPC/CGI/EditConfig.pm
++++ b/lib/BackupPC/CGI/EditConfig.pm
+@@ -411,14 +411,14 @@ sub action
+             #
+             #print STDERR Dumper(\%In);
+             foreach my $v ( sort(keys(%In)) ) {
+-                if ( $v =~ /^v_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
+-                    delete($In{$v}) if ( !defined($In{"orig_zZ_$1"}) );
++                if ( $v =~ /^v_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
++                    delete($In{$v}) if ( !defined($In{"orig_$1"}) );
+                 }
+-                if ( $v =~ /^orig_zZ_(\Q$var\E(_zZ_.*|$))/ ) {
+-                    $In{"v_zZ_$1"} = $In{$v};
++                if ( $v =~ /^orig_((zZ_|flds_)\Q$var\E(_zZ_.*|$))/ ) {
++                    $In{"v_$1"} = $In{$v};
+                 }
+             }
+-            delete($In{"vflds.$var"});
++            #delete($In{"v_flds_$var"});
+         }
+ 
+         ($newConf, $override) = inputParse($bpc, $userHost);
+@@ -614,8 +614,9 @@ EOF
+ 	    return false;
+ 	}
+ 	var allVars = {};
+-	var varRE  = new RegExp("^v_zZ_(" + varName + ".*)");
+-	var origRE = new RegExp("^orig_zZ_(" + varName + ".*)");
++	var varRE  = new RegExp("^v_((zZ_|flds_)" + varName + ".*)");
++	var origRE = new RegExp("^orig_((zZ_|flds_)" + varName + ".*)");
++	var fldsRE = new RegExp("^flds_");
+         for ( var i = 0 ; i < document.editForm.elements.length ; i++ ) {
+ 	    var e = document.editForm.elements[i];
+ 	    var re;
+@@ -624,7 +625,7 @@ EOF
+ 		    allVars[re[1]] = 0;
+ 		}
+ 		allVars[re[1]]++;
+-		//debugMsg("found v_zZ_ match with " + re[1]);
++		//debugMsg("found v_ match with " + re[1]);
+ 		//debugMsg("allVars[" + re[1] + "] = " + allVars[re[1]]);
+ 	    } else if ( (re = origRE.exec(e.name)) != null ) {
+ 		if ( allVars[re[1]] == null ) {
+@@ -639,13 +640,20 @@ EOF
+ 	    if ( allVars[v] != 0 ) {
+ 		//debugMsg("Not the same shape because of " + v);
+ 		sameShape = 0;
+-	    } else {
++                break;
++            }
++            if ( fldsRE.exec(v) != null ) {
++                // always rebuild a compound variable
++		sameShape = 0;
++                break;
++            }
++        }
++	if ( sameShape ) {
++            for ( v in allVars ) {
+                 // copy the original variable values
+ 		//debugMsg("setting " + v);
+-		eval("document.editForm.v_zZ_" + v + ".value = document.editForm.orig_zZ_" + v + ".value");
++		eval("document.editForm.v_" + v + ".value = document.editForm.orig_" + v + ".value");
+             }
+-	}
+-	if ( sameShape ) {
+ 	    return true;
+ 	} else {
+             // need to rebuild the form since the compound variable
+@@ -915,11 +923,19 @@ EOF
+             # Just switching menus: copy all the orig_zZ_ input parameters
+             #
+             foreach my $var ( sort(keys(%In)) ) {
+-                next if ( $var !~ /^orig_zZ_/ );
+-                my $val = decode_utf8($In{$var});
+-                $contentHidden .= <<EOF;
++                if ( $var =~ /^orig_zZ_/ ) {
++                    my $val = decode_utf8($In{$var});
++                    $contentHidden .= <<EOF;
++<input type="hidden" name="$var" value="${EscHTML($val)}">
++EOF
++                } elsif ( $var =~ /^orig_flds_/ ) {
++                    foreach my $v ( split(/\0/, $In{$var}) ) {
++                        my $val = decode_utf8($v);
++                        $contentHidden .= <<EOF;
+ <input type="hidden" name="$var" value="${EscHTML($val)}">
+ EOF
++                    }
++                }
+             }
+ 	}
+     } else {
+@@ -991,7 +1007,7 @@ sub fieldHiddenBuild
+                 # rather than hard-coded
+                 #
+                 $content .= <<EOF;
+-<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
++<input type="hidden" name="${prefix}_flds_$varName" value="${EscHTML($fld)}">
+ EOF
+             }
+             $content .= fieldHiddenBuild($childType, "${varName}_zZ_$fldNum",
+@@ -1194,7 +1210,7 @@ EOF
+                 # rather than hard-coded
+                 #
+                 $content .= <<EOF;
+-<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
++<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
+ EOF
+             }
+             $content .= "</td>\n";
+@@ -1239,7 +1255,7 @@ EOF
+                 # rather than hard-coded
+                 #
+                 $content .= <<EOF;
+-<input type="hidden" name="vflds.$varName" value="${EscHTML($fld)}">
++<input type="hidden" name="v_flds_$varName" value="${EscHTML($fld)}">
+ EOF
+             }
+             $content .= fieldEditBuild($childType, "${varName}_zZ_$fldNum",
+@@ -1346,7 +1362,7 @@ sub fieldErrorCheck
+         } elsif ( defined($type->{child}) ) {
+             @order = sort(keys(%{$type->{child}}));
+         } else {
+-            @order = split(/\0/, $In{"vflds.$varName"});
++            @order = split(/\0/, $In{"v_flds_$varName"});
+         }
+         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {
+             my $fld = $order[$fldNum];
+@@ -1459,7 +1475,7 @@ sub fieldInputParse
+         } elsif ( defined($type->{child}) ) {
+             @order = sort(keys(%{$type->{child}}));
+         } else {
+-            @order = split(/\0/, $In{"vflds.$varName"});
++            @order = split(/\0/, $In{"v_flds_$varName"});
+         }
+ 
+         for ( my $fldNum = 0 ; $fldNum < @order ; $fldNum++ ) {

Copied: backuppc/repos/community-x86_64/PKGBUILD (from rev 230327, backuppc/trunk/PKGBUILD)
===================================================================
--- community-x86_64/PKGBUILD	                        (rev 0)
+++ community-x86_64/PKGBUILD	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,131 @@
+# $Id$
+# Maintainer: Sébastien Luttringer
+
+pkgname=backuppc
+pkgver=4.1.2
+_xsver=0.53
+_rbpcver=3.0.9.6
+pkgrel=2
+pkgdesc='Enterprise-grade system for backing up Linux, Windows and MacOS PCs'
+url='https://github.com/backuppc/backuppc/'
+license=('GPL2')
+arch=('x86_64' 'i686')
+makedepends=('git')
+depends=('glibc' 'popt' 'perl' 'par2cmdline' 'perl-archive-zip' 'perl-io-dirent'
+         'perl-file-listing' 'perl-time-modules' 'perl-cgi' 'perl-xml-rss')
+optdepends=('openssh: ssh transfert support'
+            'rsync: rsync transfert support'
+            'smbclient: smb/cifs transfert support'
+            'rrdtool: graphs of the pool usage ')
+source=("https://github.com/backuppc/backuppc/releases/download/$pkgver/BackupPC-$pkgver.tar.gz"
+        "https://github.com/backuppc/backuppc-xs/releases/download/v${_xsver//./_}/BackupPC-XS-${_xsver}.tar.gz"
+        "https://github.com/backuppc/rsync-bpc/releases/download/v${_rbpcver//./_}/rsync-bpc-${_rbpcver}.tar.gz"
+        '01-fix-edit-compound.patch'
+        "$pkgname.service"
+        "$pkgname.sysusers"
+        "$pkgname.tmpfiles"
+        "$pkgname.profile.sh"
+        "$pkgname.profile.csh"
+        "$pkgname.httpd")
+install=$pkgname.install
+backup=("etc/$pkgname/config.pl"
+        "etc/$pkgname/hosts"
+        "etc/httpd/conf/extra/$pkgname.conf"
+        "etc/$pkgname/$pkgname.users")
+md5sums=('51b6328747d7329fe0278329eaa22ac6'
+         'a6e58a97994e0128064ab16ee337f2f0'
+         'c3e4b850d5d522bd1df21555c4287448'
+         '24f8fbf9732fb9c523d71fa3349211d4'
+         '9d798d275eb737bcfd035d5277b6b4ce'
+         'd90840387358e5dd230cace0b2d6b53a'
+         'bda3ec3f4c75521c6869279eb16af2f8'
+         '67a939aa63740c52d12bbdca72d37891'
+         'ef09e4dae5b4197998f5c3a74e0ec86d'
+         '99e641c4f3ba4fbcc53e046ce7290ad5')
+
+prepare() {
+  cd BackupPC-$pkgver
+  # apply patch from the source array (should be a pacman feature)
+  local filename
+  for filename in "${source[@]}"; do
+    if [[ "$filename" =~ \.patch$ ]]; then
+      msg2 "Applying patch ${filename##*/}"
+      patch -p1 -N -i "$srcdir/${filename##*/}"
+    fi
+  done
+  :
+}
+
+build() {
+  msg2 'rsync-bpc'
+  cd "$srcdir"/rsync-bpc-$_rbpcver
+  ./configure --prefix=/usr/share/backuppc
+  make
+}
+
+package() {
+  msg2 'rsync-bpc'
+  cd "$srcdir"/rsync-bpc-$_rbpcver
+  make install DESTDIR="$pkgdir"
+
+  msg2 'backuppc-xs'
+  cd "$srcdir"/BackupPC-XS-$_xsver
+  perl Makefile.PL
+  make -j1 # parallel build fail
+  make install DESTDIR="$pkgdir"
+
+  msg2 'backuppc'
+  cd "$srcdir"/BackupPC-$pkgver
+  export PERLLIB="$pkgdir/usr/lib/perl5/site_perl/"
+  perl configure.pl \
+    --batch \
+    --no-set-perms \
+    --uid-ignore \
+    --hostname __HOSTNAME__ \
+    --compress-level 5 \
+    --backuppc-user=backuppc \
+    --dest-dir "$pkgdir" \
+    --fhs \
+    --install-dir /usr/share/$pkgname \
+    --config-dir /etc/$pkgname \
+    --cgi-dir /usr/share/$pkgname/cgi-bin \
+    --html-dir /usr/share/$pkgname/html \
+    --html-dir-url /backuppc \
+    --data-dir /var/lib/$pkgname \
+    --log-dir /var/log/$pkgname \
+    --run-dir /run/$pkgname \
+    --bin-path rsync_bpc=/usr/share/backuppc/bin/rsync_bpc \
+    --bin-path smbclient=/usr/bin/smbclient \
+    --bin-path nmblookup=/usr/bin/nmblookup \
+    --bin-path rsync=/usr/bin/rsync \
+    --bin-path ssh=/usr/bin/ssh \
+    --bin-path sendmail=/usr/bin/sendmail \
+    --bin-path ping=/usr/bin/ping \
+    --bin-path ping6=/usr/bin/ping \
+    --bin-path rrdtool=/usr/bin/rrdtool \
+    --
+  cd "$srcdir"
+  # systemd
+  install -D -m 644 $pkgname.service "$pkgdir/usr/lib/systemd/system/$pkgname.service"
+  install -D -m 644 $pkgname.sysusers "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
+  install -D -m 644 $pkgname.tmpfiles "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf"
+  # install shell profiles
+  install -D -m 755 $pkgname.profile.sh "$pkgdir/etc/profile.d/$pkgname.sh"
+  install -D -m 755 $pkgname.profile.csh "$pkgdir/etc/profile.d/$pkgname.csh"
+  # install apache http
+  install -D -m 644 $pkgname.httpd "$pkgdir/etc/httpd/conf/extra/$pkgname.conf"
+  install -D -m 640 /dev/null "$pkgdir/etc/$pkgname/$pkgname.users"
+  # set correct permissions
+  cd "$pkgdir"
+  chown 126:126 -R etc/$pkgname
+  chown 126:126 -R var/{log,lib}/$pkgname
+  chmod 755 etc
+  chmod 755 -R var usr/share/$pkgname/{cgi-,}bin
+  chmod 750 var/log/$pkgname etc/$pkgname
+  chmod 750 -R var/lib/$pkgname
+  chmod 640 etc/$pkgname/{config.pl,hosts}
+  # no /run
+  rm -r "$pkgdir"/run
+}
+
+# vim:set ts=2 sw=2 et:

Copied: backuppc/repos/community-x86_64/backuppc.httpd (from rev 230327, backuppc/trunk/backuppc.httpd)
===================================================================
--- community-x86_64/backuppc.httpd	                        (rev 0)
+++ community-x86_64/backuppc.httpd	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,21 @@
+<Directory /usr/share/backuppc/cgi-bin>
+  # This section tells apache which machines can access the interface.
+  # You can change the allow line to allow access from your local
+  # network, or comment out this region to allow access from all
+  # machines.
+  Require ip 127.0.0.1
+
+  # You can change the authorization method to LDAP or another method
+  # besides htaccess here if you are so inclined.
+  AuthType Basic
+  AuthUserFile /etc/backuppc/backuppc.users
+  AuthName "BackupPC Community Edition Administrative Interface"
+  require valid-user
+</Directory>
+
+<Directory /usr/share/backuppc/html>
+  Require ip 127.0.0.1
+</Directory>
+
+Alias           /backuppc         /usr/share/backuppc/html
+ScriptAlias     /BackupPC_Admin         /usr/share/backuppc/cgi-bin/BackupPC_Admin

Copied: backuppc/repos/community-x86_64/backuppc.install (from rev 230327, backuppc/trunk/backuppc.install)
===================================================================
--- community-x86_64/backuppc.install	                        (rev 0)
+++ community-x86_64/backuppc.install	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,23 @@
+#/bin/bash
+
+# arg 1:  the new package version
+# arg 2:  the old package version
+post_upgrade() {
+  # change uid of old version
+  if (( $(vercmp $2 3.2.1-8) < 0 )); then
+    if pgrep -u backuppc >/dev/null; then
+      echo '==> backuppc user is running.'
+      echo '==> You must manually change uid and gid of backuppc!'
+      echo '==> e.g: usermod -u 126 -g 126 backuppc'
+    else
+      usermod -u 126 -g 126 backuppc
+      echo '==> backuppc uid/gid have changed. Check your filesystem permissions.'
+    fi
+  fi
+  if (( $(vercmp $2 4.0.0-1) <= 0 )); then
+    echo '==> Major update. Remember to merge new variables in config.pl!'
+  fi
+  :
+}
+
+# vim:set ts=2 sw=2 ft=sh et:

Copied: backuppc/repos/community-x86_64/backuppc.profile.csh (from rev 230327, backuppc/trunk/backuppc.profile.csh)
===================================================================
--- community-x86_64/backuppc.profile.csh	                        (rev 0)
+++ community-x86_64/backuppc.profile.csh	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1 @@
+[ -d /usr/share/backuppc/bin ] && setenv PATH ${PATH}:/usr/share/backuppc/bin

Copied: backuppc/repos/community-x86_64/backuppc.profile.sh (from rev 230327, backuppc/trunk/backuppc.profile.sh)
===================================================================
--- community-x86_64/backuppc.profile.sh	                        (rev 0)
+++ community-x86_64/backuppc.profile.sh	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,3 @@
+[ -d /usr/share/backuppc/bin ] && PATH=$PATH:/usr/share/backuppc/bin
+
+export PATH

Copied: backuppc/repos/community-x86_64/backuppc.service (from rev 230327, backuppc/trunk/backuppc.service)
===================================================================
--- community-x86_64/backuppc.service	                        (rev 0)
+++ community-x86_64/backuppc.service	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1,11 @@
+[Unit]
+Description=BackupPC
+
+[Service]
+User=backuppc
+PIDFile=/run/backuppc/BackupPC.pid
+ExecStart=/usr/share/backuppc/bin/BackupPC
+ExecReload=/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target

Copied: backuppc/repos/community-x86_64/backuppc.sysusers (from rev 230327, backuppc/trunk/backuppc.sysusers)
===================================================================
--- community-x86_64/backuppc.sysusers	                        (rev 0)
+++ community-x86_64/backuppc.sysusers	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1 @@
+u backuppc 126 - /var/lib/backuppc

Copied: backuppc/repos/community-x86_64/backuppc.tmpfiles (from rev 230327, backuppc/trunk/backuppc.tmpfiles)
===================================================================
--- community-x86_64/backuppc.tmpfiles	                        (rev 0)
+++ community-x86_64/backuppc.tmpfiles	2017-05-25 23:39:16 UTC (rev 230328)
@@ -0,0 +1 @@
+d /run/backuppc 0750 backuppc backuppc



More information about the arch-commits mailing list