From owner-svn-ports-all@freebsd.org Wed Jul 18 12:48:34 2018 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BDA7B104913F; Wed, 18 Jul 2018 12:48:34 +0000 (UTC) (envelope-from farrokhi@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7173678EC8; Wed, 18 Jul 2018 12:48:34 +0000 (UTC) (envelope-from farrokhi@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 51F321A5B6; Wed, 18 Jul 2018 12:48:34 +0000 (UTC) (envelope-from farrokhi@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id w6ICmYg2064614; Wed, 18 Jul 2018 12:48:34 GMT (envelope-from farrokhi@FreeBSD.org) Received: (from farrokhi@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id w6ICmXKg064609; Wed, 18 Jul 2018 12:48:33 GMT (envelope-from farrokhi@FreeBSD.org) Message-Id: <201807181248.w6ICmXKg064609@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: farrokhi set sender to farrokhi@FreeBSD.org using -f From: Babak Farrokhi Date: Wed, 18 Jul 2018 12:48:33 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r474859 - in head/sysutils: . omnibackup omnibackup/files X-SVN-Group: ports-head X-SVN-Commit-Author: farrokhi X-SVN-Commit-Paths: in head/sysutils: . omnibackup omnibackup/files X-SVN-Commit-Revision: 474859 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Jul 2018 12:48:35 -0000 Author: farrokhi Date: Wed Jul 18 12:48:33 2018 New Revision: 474859 URL: https://svnweb.freebsd.org/changeset/ports/474859 Log: New port: sysutils/omnibackup: One Script to back them all up PR: 212953 Submitted by: Mohammad S. Babaei Added: head/sysutils/omnibackup/ head/sysutils/omnibackup/Makefile (contents, props changed) head/sysutils/omnibackup/distinfo (contents, props changed) head/sysutils/omnibackup/files/ head/sysutils/omnibackup/files/pkg-message.in (contents, props changed) head/sysutils/omnibackup/pkg-descr (contents, props changed) Modified: head/sysutils/Makefile Modified: head/sysutils/Makefile ============================================================================== --- head/sysutils/Makefile Wed Jul 18 12:37:43 2018 (r474858) +++ head/sysutils/Makefile Wed Jul 18 12:48:33 2018 (r474859) @@ -760,6 +760,7 @@ SUBDIR += odo SUBDIR += ods2 SUBDIR += ohmu + SUBDIR += omnibackup SUBDIR += open SUBDIR += openhpi SUBDIR += openipmi Added: head/sysutils/omnibackup/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/omnibackup/Makefile Wed Jul 18 12:48:33 2018 (r474859) @@ -0,0 +1,76 @@ +# Created by: Mohammad S. Babaei +# $FreeBSD$ + +PORTNAME= omnibackup +PORTVERSION= 0.2.0 +CATEGORIES= sysutils + +MAINTAINER= info@babaei.net +COMMENT= One Script to back them all up + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +NO_OPTIONS_SORT= yes +OPTIONS_DEFINE= \ + DOCS \ + OPENLDAP \ + PGSQL \ + MYSQL +OPTIONS_DEFAULT= \ + DOCS \ + OPENLDAP \ + PGSQL \ + MYSQL + +OPENLDAP_DESC= OpenLDAP support + +NO_ARCH= yes +NO_BUILD= yes +RUN_DEPENDS+= \ + bash:shells/bash \ + flock:sysutils/flock \ + jq:textproc/jq + +SUB_FILES= pkg-message +SUB_LIST= ROOT_HOME=/root + +PLIST_FILES= \ + bin/omnibackup \ + ${ETCDIR}/config.json.sample + +.include + +.if ${PORT_OPTIONS:MDOCS} +PLIST_FILES+= ${DOCSDIR}/README.md +.endif + +.if ${PORT_OPTIONS:MOPENLDAP} \ + || ${PORT_OPTIONS:MPGSQL} \ + || ${PORT_OPTIONS:MMYSQL} +RUN_DEPENDS+= sudo:security/sudo +.if ${PORT_OPTIONS:MOPENLDAP} +RUN_DEPENDS+= slapcat:net/openldap24-server +.endif +.if ${PORT_OPTIONS:MPGSQL} +USES+= pgsql +RUN_DEPENDS+= pg_dump:databases/postgresql${PGSQL_VER_NODOT}-client +RUN_DEPENDS+= pg_dumpall:databases/postgresql${PGSQL_VER_NODOT}-client +.endif +.if ${PORT_OPTIONS:MMYSQL} +USES+= mysql +RUN_DEPENDS+= mysqldump:${_MYSQL_CLIENT} +.endif +.endif + +USE_GITHUB= yes +GH_ACCOUNT= NuLL3rr0r + +do-install: + ${INSTALL_SCRIPT} ${WRKSRC}/backup.sh ${STAGEDIR}${PREFIX}/bin/${PORTNAME} + @${MKDIR} ${STAGEDIR}${ETCDIR} + ${INSTALL_DATA} ${WRKSRC}/config.json.sample ${STAGEDIR}${ETCDIR}/config.json.sample + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} + +.include Added: head/sysutils/omnibackup/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/omnibackup/distinfo Wed Jul 18 12:48:33 2018 (r474859) @@ -0,0 +1,3 @@ +TIMESTAMP = 1531912738 +SHA256 (NuLL3rr0r-omnibackup-0.2.0_GH0.tar.gz) = 87de9bb1b6561b5c019cb1c740a5e1046fa593a148fe3d99f04c6777da56acb7 +SIZE (NuLL3rr0r-omnibackup-0.2.0_GH0.tar.gz) = 47645 Added: head/sysutils/omnibackup/files/pkg-message.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/omnibackup/files/pkg-message.in Wed Jul 18 12:48:33 2018 (r474859) @@ -0,0 +1,32 @@ +############################################################################### + +In order to run OmniBackup, you will need to create and configure the main +configuration file, e.g.: + +$ cp -p %%LOCALBASE%%/etc/omnibackup/config.json.sample \ + %%LOCALBASE%%/etc/omnibackup/config.json + +or, create it in the root users' home directory: + +$ cp -p %%LOCALBASE%%/etc/omnibackup/config.json.sample \ + %%ROOT_HOME%%/.omnibackup/config.json + +In order to take automatic backups every 24 hours at 01:00am UTC run this +command: + +$ crontab -e -u root + +Then add the following lines to the root users' crontab: + +# OmniBackup daily backups +00 01 * * * %%LOCALBASE%%/bin/omnibackup + +To avoid data loss, make sure to consult the documentation at: + +* %%LOCALBASE%%/share/doc/omnibackup/README.md +or +* https://github.com/NuLL3rr0r/omnibackup + +Before you use it in production. + +############################################################################### Added: head/sysutils/omnibackup/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/omnibackup/pkg-descr Wed Jul 18 12:48:33 2018 (r474859) @@ -0,0 +1,21 @@ +OmniBackup is a MIT-licensed, feature rich, pure Bash script which assists you +in taking periocdic backups from OpenLDAP, PostgreSQL, MariaDB / MySQL and your +filesystem. It also lets you extend OmniBackup by creating custom backup +scenarios and defining your own customized scripts. + +Configuration in OmniBackup is done through JSON. It also provides plenty of +compression and cryptography algorithms such as LZMA2, gzip and bzip2 +compression algorithms, and AES-128, AES-192 and AES-256 symmetric cryptography +algorithms. Furthermore, it has support for RSA signatures to verify the backup +origin and integrity on remote servers. MD4, MD5, MDC-2, RIPEMD160, SHA, SHA-1, +SHA-224, SHA-256, SHA-384, SHA-512 and WHIRLPOOL are supported as backup +integrity hash algorithms. + +It supports multiple backup servers and as many as reports recipients through +email. It has the optional ability to follow symbolic links or to preserve +permissions inside backup files. And, last but not least it provides random +passphrase generation for encrypted archives with variable length and patterns +or a unique passphrase for all backups. It's also possible to encrypt each +passphrase by using RSA public keys for individual backup servers. + +WWW: https://github.com/NuLL3rr0r/omnibackup