Skip to content

Commit

Permalink
app-backup/zbackup: new ebuild
Browse files Browse the repository at this point in the history
zbackup is a globally-deduplicating backup tool, based on the ideas found in rsync.
Feed a large .tar into it, and it will store duplicate regions of it only once,
then compress and optionally encrypt the result. Feed another .tar file,
and it will also re-use any data found in any previous backups.
This way only new changes are stored, and as long as the files are not very different,
the amount of storage required is very low. Any of the backup files stored previously
can be read back in full at any time.

Base for ebuild from https://github.com/SpiderX/portage-overlay/tree/master/app-backup/zbackup

Gentoo-Bug: https://bugs.gentoo.org/576796

Package-Manager: Portage-2.3.3, Repoman-2.3.1
  • Loading branch information
SpiderX authored and gktrk committed Apr 1, 2017
1 parent 31c4885 commit 29f1455
Show file tree
Hide file tree
Showing 6 changed files with 119 additions and 0 deletions.
1 change: 1 addition & 0 deletions app-backup/zbackup/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST zbackup-1.4.4.tar.gz 87118 SHA256 efccccd2a045da91576c591968374379da1dc4ca2e3dec4d3f8f12628fa29a85 SHA512 96f0984be71e521b2a188448bb2801996701be6e96b1dac4672cabc9f6bcb6631fdb8d03f5dde4bbdbb0050d9bd1409d468fcba15f93730d69e6c55271aba575 WHIRLPOOL 4c41f300177b3a140f833f999e5b86e8c3386e81c02a7a94f2a0dd418ba2027adb2c7906d5d2a59fba12b47c5ea3190727ef63b1e8fd12eef8bc9fbe2ca426a6
11 changes: 11 additions & 0 deletions app-backup/zbackup/files/zbackup-1.4.4-tartool.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/CMakeLists.txt 2017-02-24 09:22:39.360392521 +0200
+++ b/CMakeLists.txt 2017-02-24 09:23:13.642390978 +0200
@@ -51,4 +51,8 @@
${LIBLZO_LIBRARIES}
)

+if (BUILD_TARTOOL)
+ add_subdirectory(tartool)
+endif (BUILD_TARTOOL)
+
install( TARGETS zbackup DESTINATION bin )
11 changes: 11 additions & 0 deletions app-backup/zbackup/files/zbackup-9999-tartool.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/CMakeLists.txt 2017-02-24 09:22:39.360392521 +0200
+++ b/CMakeLists.txt 2017-02-24 09:23:13.642390978 +0200
@@ -51,4 +51,8 @@
${LIBLZO_LIBRARIES}
)

+if (BUILD_TARTOOL)
+ add_subdirectory(tools/tartool)
+endif (BUILD_TARTOOL)
+
install( TARGETS zbackup DESTINATION bin )
26 changes: 26 additions & 0 deletions app-backup/zbackup/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>Vladimir Pavljuchenkov</name>
</maintainer>
<maintainer type="project">
<email>[email protected]</email>
<name>Proxy Maintainers</name>
</maintainer>
<longdescription>
zbackup is a globally-deduplicating backup tool.
The program has the following features:
Parallel LZMA or LZO compression of the stored data
Built-in AES encryption of the stored data
Possibility to delete old backup data
Use of a 64-bit rolling hash, keeping the amount of soft collisions to zero
</longdescription>
<use>
<flag name="tartool">Install tartool utility</flag>
</use>
<upstream>
<remote-id type="github">zbackup/zbackup</remote-id>
</upstream>
</pkgmetadata>
34 changes: 34 additions & 0 deletions app-backup/zbackup/zbackup-1.4.4.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

inherit cmake-utils

DESCRIPTION="A versatile deduplicating backup tool"
HOMEPAGE="http://zbackup.org/ https://github.com/zbackup/zbackup"
SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"

LICENSE="GPL-2+-with-openssl-exception"
KEYWORDS="~amd64 ~x86"
SLOT="0"
IUSE="libressl tartool"

DEPEND="app-arch/lzma
dev-libs/lzo:2
<dev-libs/protobuf-3:0=
sys-libs/zlib
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )"
RDEPEND="${DEPEND}"

# Add tartool build
PATCHES=( "${FILESDIR}/${P}-tartool.patch" )

src_configure() {
local mycmakeargs=(
-DBUILD_TARTOOL="$(usex tartool)"
)

cmake-utils_src_configure
}
36 changes: 36 additions & 0 deletions app-backup/zbackup/zbackup-9999.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

inherit cmake-utils git-r3

DESCRIPTION="A versatile deduplicating backup tool"
HOMEPAGE="http://zbackup.org/ https://github.com/zbackup/zbackup"
SRC_URI=""
EGIT_REPO_URI="git://github.com/${PN}/${PN}.git"

LICENSE="GPL-2+-with-openssl-exception"
KEYWORDS=""
SLOT="0"
IUSE="libressl tartool"

DEPEND="app-arch/lzma
dev-libs/lzo:2
<dev-libs/protobuf-3:0=
sys-libs/libunwind:7
sys-libs/zlib
!libressl? ( dev-libs/openssl:0= )
libressl? ( dev-libs/libressl:0= )"
RDEPEND="${DEPEND}"

# Add tartool build
PATCHES=( "${FILESDIR}/${P}-tartool.patch" )

src_configure() {
local mycmakeargs=(
-DBUILD_TARTOOL="$(usex tartool)"
)

cmake-utils_src_configure
}

0 comments on commit 29f1455

Please sign in to comment.