ports/189799: [maintainer update] sysutils/backuppc: stage, etc.
Alexander Moisseev
moiseev at mezonplus.ru
Wed May 14 12:30:00 UTC 2014
>Number: 189799
>Category: ports
>Synopsis: [maintainer update] sysutils/backuppc: stage, etc.
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Wed May 14 12:30:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator: Alexander Moisseev
>Release:
>Organization:
>Environment:
>Description:
- Stage
- Add CONFLICTS (prepare to new port sysutils/backuppc-devel)
- Add license
- BackupPC.pod: add =encoding declaration (fix build with perl5.18)
>How-To-Repeat:
>Fix:
Patch attached with submission follows:
diff -ruN backuppc.orig/Makefile backuppc/Makefile
--- backuppc.orig/Makefile 2013-09-21 03:05:58.000000000 +0400
+++ backuppc/Makefile 2014-05-14 10:48:47.000000000 +0400
@@ -3,6 +3,7 @@
PORTNAME= backuppc
PORTVERSION= 3.3.0
+PORTREVISION= 1
CATEGORIES= sysutils
MASTER_SITES= SF
MASTER_SITE_SUBDIR= ${PORTNAME}/${PORTNAME}/${PORTVERSION}
@@ -11,6 +12,11 @@
MAINTAINER= moiseev at mezonplus.ru
COMMENT= System for backing PCs and laptops to a server
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+CONFLICTS= backuppc-devel-[0-9]*
+
RUN_DEPENDS= p5-File-Listing>=0:${PORTSDIR}/sysutils/p5-File-Listing
USE_RC_SUBR= backuppc
@@ -24,11 +30,14 @@
BPC_CGIDIR?= ${PREFIX}/www/cgi-bin
BPC_DATADIR?= /var/db/BackupPC
-PLIST_SUB= BPC_CGIDIR=${BPC_CGIDIR:S,^${PREFIX}/,,} BPC_DATADIR=${BPC_DATADIR}
+SUB_FILES= pkg-deinstall pkg-message
+SUB_LIST= BPC_DATADIR=${BPC_DATADIR}
-PORTDOCS= ChangeLog LICENSE README BackupPC.html BackupPC.pod
+PLIST_SUB+= BPC_CGIDIR=${BPC_CGIDIR:S,^${PREFIX}/,,} \
+ BPC_DATADIR=${BPC_DATADIR} \
+ DISTVERSION=${DISTVERSION}
-MAN1= ${PORTNAME}.1
+PORTDOCS= ChangeLog LICENSE README
OPTIONS_DEFINE= ARCHIVE_ZIP COMPRESS_ZLIB DOCS FILE_RSYNCP NMBLOOKUP \
RRDTOOL SMBCLIENT XML_RSS
@@ -42,7 +51,6 @@
SMBCLIENT_DESC= Samba client
XML_RSS_DESC= Perl extension to manage RSS files
-NO_STAGE= yes
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MARCHIVE_ZIP}
@@ -71,75 +79,69 @@
post-patch:
@${REINPLACE_CMD} \
- -e 's,/etc/BackupPC/config.pl,${ETCDIR}/config.pl,' \
- -e 's|Conf{ConfDir}/hosts", 0644)|Conf{ConfDir}/hosts.sample", 0644)|' \
+ -e 's|/etc/BackupPC\(/config.pl\)|${ETCDIR}\1|' \
+ -e 's|^\(foreach my $$dir ( qw(bin \)doc$$|\1${DOCSDIR_REL}|' \
+ -e 's|\($$DestDir$$Conf{InstallDir}/\)doc|\1${DOCSDIR_REL}|' \
${WRKSRC}/configure.pl
@${REINPLACE_CMD} \
-e 's,"/doc/BackupPC.html","/${DOCSDIR_REL}/BackupPC.html",' \
${WRKSRC}/lib/BackupPC/CGI/View.pm
@${REINPLACE_CMD} \
- -e 's,STDERR "Please su ,STDERR "Please su [-m] ,' \
+ -e 's|STDERR "Please su |STDERR "Please su [-m] |' \
${WRKSRC}/lib/BackupPC/Lib.pm
@${REINPLACE_CMD} \
- -e 's, you can use the -s, you can use the -m,' \
- -e 's,option to su to explicitly run,option to su to run,' \
- -e 's,su -s /bin/bash __BACKUPPCUSER__,su -m __BACKUPPCUSER__,' \
+ -e 's| you can use the -s| you can use the -m|' \
+ -e 's|option to su to explicitly run|option to su to run|' \
+ -e 's|su -s /bin/bash __BACKUPPCUSER__|su -m __BACKUPPCUSER__|' \
${WRKSRC}/doc/BackupPC.html ${WRKSRC}/doc/BackupPC.pod
pre-install:
@${ECHO_MSG}
- @${ECHO_MSG} ">>> -----------------------------------------------------------------------"
- @${ECHO_MSG} ">>> You can use the following variables to tweak installation-time options:"
- @${ECHO_MSG} ">>> BPC_CGIDIR"
- @${ECHO_MSG} ">>> BPC_DATADIR"
- @${ECHO_MSG} ">>> -----------------------------------------------------------------------"
- @${ECHO_MSG} ">>> If this is an upgrade make sure the full path of the existing BackupPC"
- @${ECHO_MSG} ">>> configuration directory is ${ETCDIR}"
- @${ECHO_MSG} ">>> -----------------------------------------------------------------------"
+ @${ECHO_MSG} "========================================================================="
+ @${ECHO_MSG} " You can use the following variables to tweak installation-time options:"
+ @${ECHO_MSG} " BPC_CGIDIR"
+ @${ECHO_MSG} " BPC_DATADIR"
+ @${ECHO_MSG} "========================================================================="
@${ECHO_MSG}
do-install:
+ @if [ -f ${ETCDIR}/config.pl ]; then \
+ ${MKDIR} ${STAGEDIR}${ETCDIR}; \
+ ${CP} -p ${ETCDIR}/config.pl ${STAGEDIR}${ETCDIR}/config.pl; \
+ fi
+ @if [ -f ${ETCDIR}/hosts ]; then \
+ ${MKDIR} ${STAGEDIR}${ETCDIR}; \
+ ${CP} -p ${ETCDIR}/hosts ${STAGEDIR}${ETCDIR}/hosts; \
+ fi
+
@cd ${WRKSRC} && ${PERL} configure.pl \
--batch \
--backuppc-user ${USERS} \
--config-dir ${ETCDIR} \
--cgi-dir ${BPC_CGIDIR} \
--data-dir ${BPC_DATADIR} \
+ --dest-dir ${STAGEDIR} \
--fhs \
--html-dir ${WWWDIR} \
--html-dir-url /${PORTNAME} \
--install-dir ${PREFIX} \
- --log-dir /var/log/BackupPC
-
-post-install:
- @${EXEC} pod2man --section=1 --release=${PORTVERSION} --name=BackupPC --center=BackupPC" user guide" ${WRKSRC}/BackupPC.pod ${WRKSRC}/${PORTNAME}.1
- ${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 ${MANPREFIX}/man/man1
+ --log-dir /var/log/BackupPC \
+ --no-set-perms \
+ --uid-ignore
+
+ @pod2man --section=1 --release=${PORTVERSION} \
+ --name=BackupPC --center="BackupPC user guide" \
+ ${WRKSRC}/doc/BackupPC.pod ${WRKSRC}/${PORTNAME}.1
+ ${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 ${STAGEDIR}${MANPREFIX}/man/man1
+ @cd ${WRKSRC} && ${INSTALL_MAN} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
-.if ${PORT_OPTIONS:MDOCS}
- ${MKDIR} ${DOCSDIR}
- @cd ${WRKSRC} && ${INSTALL_MAN} ${PORTDOCS} ${DOCSDIR}
-.endif
-
- @${MV} ${ETCDIR}/config.pl ${ETCDIR}/config.pl.sample
-
- @${ECHO_MSG}
- @${ECHO_MSG} ">>> ----------------------------------------------------------"
- @${ECHO_MSG} ">>> You need to copy and customize"
- @${ECHO_MSG} ">>> # cp -p ${ETCDIR}/config.pl.sample ${ETCDIR}/config.pl"
-
- @if [ ! -f ${ETCDIR}/hosts ]; then \
- ${ECHO_MSG} ">>> # cp -p ${ETCDIR}/hosts.sample ${ETCDIR}/hosts"; \
+ @if [ ! -f ${STAGEDIR}${ETCDIR}/config.pl.pre-${DISTVERSION} ]; then \
+ > ${STAGEDIR}${ETCDIR}/config.pl.pre-${DISTVERSION}; \
fi
-
- @${ECHO_MSG} ">>>"
- @${ECHO_MSG} ">>> Add the following line to /etc/rc.conf to enable BackupPC:"
- @${ECHO_MSG} ">>> backuppc_enable=\"YES\""
- @${ECHO_MSG} ">>>"
- @${ECHO_MSG} ">>> Data directory is ${BPC_DATADIR}"
- @${ECHO_MSG} ">>> This is where all the PC backup data is stored."
- @${ECHO_MSG} ">>> This file system needs to be big enough"
- @${ECHO_MSG} ">>> to accommodate all the PCs you expect to backup."
- @${ECHO_MSG} ">>> ----------------------------------------------------------"
- @${ECHO_MSG}
+ @${INSTALL} -d ${STAGEDIR}${PREFIX}/libexec/${PORTNAME}
+ @cd ${STAGEDIR}${ETCDIR} && \
+ ${CHGRP} wheel config.pl config.pl.pre-${DISTVERSION} && \
+ ${MV} config.pl hosts config.pl.pre-${DISTVERSION} \
+ ${STAGEDIR}${PREFIX}/libexec/${PORTNAME}/
.include <bsd.port.mk>
diff -ruN backuppc.orig/files/patch-configure.pl backuppc/files/patch-configure.pl
--- backuppc.orig/files/patch-configure.pl 2014-01-22 21:40:44.000000000 +0400
+++ backuppc/files/patch-configure.pl 2014-05-13 10:47:37.000000000 +0400
@@ -8,24 +8,3 @@
#
# These are the programs whose paths we need to find
-@@ -521,7 +521,7 @@
- #
- # Create install directories
- #
--foreach my $dir ( qw(bin doc
-+foreach my $dir ( qw(bin
- lib/BackupPC/CGI
- lib/BackupPC/Config
- lib/BackupPC/Lang
-@@ -689,9 +689,9 @@
- printf("Making Apache configuration file for suid-perl\n");
- InstallFile("httpd/src/BackupPC.conf", "httpd/BackupPC.conf", 0644);
-
--printf("Installing docs in $DestDir$Conf{InstallDir}/doc\n");
-+printf("Installing docs in WRKSRC\n");
- foreach my $doc ( qw(BackupPC.pod BackupPC.html) ) {
-- InstallFile("doc/$doc", "$DestDir$Conf{InstallDir}/doc/$doc", 0444);
-+ InstallFile("doc/$doc", "./$doc", 0444);
- }
-
- printf("Installing config.pl and hosts in $DestDir$Conf{ConfDir}\n");
diff -ruN backuppc.orig/files/patch-doc-BackupPC.pod backuppc/files/patch-doc-BackupPC.pod
--- backuppc.orig/files/patch-doc-BackupPC.pod 1970-01-01 03:00:00.000000000 +0300
+++ backuppc/files/patch-doc-BackupPC.pod 2014-05-14 10:48:47.000000000 +0400
@@ -0,0 +1,8 @@
+--- doc/BackupPC.pod.orig 2014-05-13 17:40:09.000000000 +0400
++++ doc/BackupPC.pod 2014-05-13 17:40:27.000000000 +0400
+@@ -1,3 +1,5 @@
++=encoding ISO8859-1
++
+ =head1 BackupPC Introduction
+
+ This documentation describes BackupPC version 3.3.0,
diff -ruN backuppc.orig/files/pkg-deinstall.in backuppc/files/pkg-deinstall.in
--- backuppc.orig/files/pkg-deinstall.in 1970-01-01 03:00:00.000000000 +0300
+++ backuppc/files/pkg-deinstall.in 2014-05-12 13:18:00.000000000 +0400
@@ -0,0 +1,21 @@
+#! /bin/sh
+
+if [ "$2" != "POST-DEINSTALL" ]; then
+ exit 0
+fi
+
+echo
+echo "======================================================================="
+echo " If you are permanently removing BackupPC, you should manually delete:"
+echo " - the backuppc user/group: pw userdel backuppc"
+if [ -d %%ETCDIR%% ]; then
+ echo " - BackupPC configuration: rm -r %%ETCDIR%%"
+fi
+if [ -d %%BPC_DATADIR%% ]; then
+ echo " - BackupPC data directory: rm -r %%BPC_DATADIR%%"
+fi
+if [ -d /var/log/BackupPC ]; then
+ echo " - BackupPC logs directory: rm -r /var/log/BackupPC"
+fi
+echo "======================================================================="
+echo
diff -ruN backuppc.orig/files/pkg-message.in backuppc/files/pkg-message.in
--- backuppc.orig/files/pkg-message.in 1970-01-01 03:00:00.000000000 +0300
+++ backuppc/files/pkg-message.in 2014-05-12 13:18:00.000000000 +0400
@@ -0,0 +1,18 @@
+==========================================================================
+ - You need to customize %%ETCDIR%%/config.pl .
+
+ If this is an upgrade, install BackupPC from port (not from package)
+ and make sure the full path of the existing BackupPC
+ configuration directory is %%ETCDIR%% .
+ Otherwise you will need to make changes in config.pl by hand.
+
+ - Add the following line to /etc/rc.conf to enable BackupPC:
+
+ backuppc_enable="YES"
+
+ - Data directory is %%BPC_DATADIR%% .
+
+ This is where all the PC backup data is stored.
+ This file system needs to be big enough
+ to accommodate all the PCs you expect to backup.
+==========================================================================
diff -ruN backuppc.orig/pkg-plist backuppc/pkg-plist
--- backuppc.orig/pkg-plist 2013-04-28 13:40:32.000000000 +0400
+++ backuppc/pkg-plist 2014-05-13 11:42:15.000000000 +0400
@@ -1,3 +1,9 @@
+ at stopdaemon backuppc
+ at unexec if cmp -s %D/%%ETCDIR%%/config.pl %D/%%ETCDIR%%/config.pl.sample; then rm -f %D/%%ETCDIR%%/config.pl; fi
+ at unexec if cmp -s %D/%%ETCDIR%%/hosts %D/%%ETCDIR%%/hosts.sample; then rm -f %D/%%ETCDIR%%/hosts; fi
+ at rmtry %%ETCDIR%%/config.pl.sample
+ at rmtry %%ETCDIR%%/hosts.sample
+ at mode 0555
bin/BackupPC
bin/BackupPC_archive
bin/BackupPC_archiveHost
@@ -16,6 +22,7 @@
bin/BackupPC_trashClean
bin/BackupPC_zcat
bin/BackupPC_zipCreate
+ at mode 0444
lib/BackupPC/Attrib.pm
lib/BackupPC/CGI/AdminOptions.pm
lib/BackupPC/CGI/Archive.pm
@@ -72,6 +79,10 @@
lib/BackupPC/Zip/FileMember.pm
lib/Net/FTP/AutoReconnect.pm
lib/Net/FTP/RetrHandle.pm
+man/man1/backuppc.1.gz
+%%DOCSDIR%%/BackupPC.html
+%%DOCSDIR%%/BackupPC.pod
+ at comment @dirrm %%DOCSDIR%%
%%WWWDIR%%/0000000.gif
%%WWWDIR%%/0000011.gif
%%WWWDIR%%/0001000.gif
@@ -117,30 +128,50 @@
%%WWWDIR%%/icon-symlink.png
%%WWWDIR%%/logo.gif
%%WWWDIR%%/sorttable.js
+ at owner backuppc
+ at group backuppc
+ at mode 04554
%%BPC_CGIDIR%%/BackupPC_Admin
- at rmtry %%ETCDIR%%/hosts.sample
-%%ETCDIR%%/config.pl.sample
- at dirrmtry %%BPC_CGIDIR%%
- at dirrmtry %%WWWDIR%%
- at dirrmtry share/doc/backuppc
- at dirrmtry lib/Net/FTP
- at dirrmtry lib/Net
- at dirrm lib/BackupPC/Zip
- at dirrm lib/BackupPC/Xfer
- at dirrm lib/BackupPC/Storage
- at dirrm lib/BackupPC/Lang
- at dirrm lib/BackupPC/Config
+ at owner
+ at group
+ at mode
@dirrm lib/BackupPC/CGI
+ at dirrm lib/BackupPC/Config
+ at dirrm lib/BackupPC/Lang
+ at dirrm lib/BackupPC/Storage
+ at dirrm lib/BackupPC/Xfer
+ at dirrm lib/BackupPC/Zip
@dirrm lib/BackupPC
- at unexec echo
- at unexec echo "If you are permanently removing BackupPC, you should manually delete:"
- at unexec echo
- at unexec echo " - the backuppc user/group: pw userdel backuppc"
- at unexec rmdir %D/%%ETCDIR%% 2>/dev/null || echo " - BackupPC configuration: rm -r %D/%%ETCDIR%%"
- at dirrmtry %%BPC_DATADIR%%/cpool
- at dirrmtry %%BPC_DATADIR%%/pc
- at dirrmtry %%BPC_DATADIR%%/pool
- at dirrmtry %%BPC_DATADIR%%/trash
- at unexec rmdir %%BPC_DATADIR%% 2>/dev/null || echo " - BackupPC data directory: rm -r %%BPC_DATADIR%%"
- at unexec rmdir /var/log/BackupPC 2>/dev/null || echo " - BackupPC logs directory: rm -r /var/log/BackupPC"
- at unexec echo
+ at dirrm lib/Net/FTP
+ at dirrm lib/Net
+ at dirrmtry %%WWWDIR%%
+ at dirrmtry %%BPC_CGIDIR%%
+ at exec mkdir -p -m 0750 /var/log/BackupPC
+ at exec mkdir -p -m 0750 %%BPC_DATADIR%%/cpool
+ at exec mkdir -p -m 0750 %%BPC_DATADIR%%/pc
+ at exec mkdir -p -m 0750 %%BPC_DATADIR%%/pool
+ at exec mkdir -p -m 0750 %%BPC_DATADIR%%/trash
+ at exec chown -R backuppc:backuppc /var/log/BackupPC %%BPC_DATADIR%%
+ at unexec rmdir >/dev/null 2>&1 /var/log/BackupPC || :
+ at unexec rmdir >/dev/null 2>&1 %%BPC_DATADIR%%/cpool || :
+ at unexec rmdir >/dev/null 2>&1 %%BPC_DATADIR%%/pc || :
+ at unexec rmdir >/dev/null 2>&1 %%BPC_DATADIR%%/pool || :
+ at unexec rmdir >/dev/null 2>&1 %%BPC_DATADIR%%/trash || :
+ at unexec rmdir >/dev/null 2>&1 %%BPC_DATADIR%% || :
+ at owner backuppc
+ at group backuppc
+ at dirrmtry %%ETCDIR%%
+ at mode 0640
+libexec/backuppc/config.pl.pre-%%DISTVERSION%%
+ at exec if [ -s %D/%F -a ! -f %D/%%ETCDIR%%/%f ]; then cp -p %D/%F %D/%%ETCDIR%%/; fi
+libexec/backuppc/config.pl
+ at exec if [ ! -f %D/%%ETCDIR%%/%f ]; then cp -p %D/%F %D/%%ETCDIR%%/config.pl.sample; fi
+ at exec cp -p %D/%F %D/%%ETCDIR%%/
+ at mode 0644
+libexec/backuppc/hosts
+ at exec if [ ! -f %D/%%ETCDIR%%/%f ]; then cp -p %D/%F %D/%%ETCDIR%%/hosts.sample; fi
+ at exec cp -p %D/%F %D/%%ETCDIR%%/
+ at owner
+ at group
+ at mode
+ at dirrm libexec/backuppc
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list