blob: 7234202a4dc8c70e8f57db93131a5041f58e5a1b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
|
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit systemd
if [[ ${PV} == "9999" ]] ; then
EGIT_REPO_URI="https://github.com/digint/btrbk.git"
inherit git-r3
SRC_URI=""
else
SRC_URI="https://digint.ch/download/btrbk/releases/${P}.tar.xz"
KEYWORDS="amd64 arm arm64 x86"
fi
DESCRIPTION="Tool for creating snapshots and remote backups of btrfs subvolumes"
HOMEPAGE="https://digint.ch/btrbk/"
LICENSE="GPL-3+"
SLOT="0"
IUSE="+mbuffer +doc +lsbtr"
DEPEND="doc? ( >=dev-ruby/asciidoctor-1.5.7 )"
RDEPEND="dev-lang/perl
virtual/openssh
mbuffer? ( >=sys-block/mbuffer-20180505 )
>=sys-fs/btrfs-progs-4.12"
src_compile() {
emake clean
use doc && emake -C doc
}
src_install() {
local targets="install-bin install-etc install-share install-systemd"
use doc && targets="${targets} install-man install-doc"
use lsbtr && targets="${targets} install-bin-links"
emake \
DESTDIR="${D}" \
DOCDIR="/usr/share/doc/${PF}" \
SYSTEMDDIR="$(systemd_get_systemunitdir)" \
${targets}
}
pkg_preinst() {
if has_version "<${CATEGORY}/${PN}-0.26.0" ; then
upgrade_0_26_0_warning="1"
fi
if has_version "<${CATEGORY}/${PN}-0.27.0" ; then
upgrade_0_27_0_warning="1"
fi
}
pkg_postinst() {
if [[ "${upgrade_0_26_0_warning}" == "1" ]]; then
ewarn "If you are using raw targets, make sure to run the"
ewarn "\"raw_suffix2sidecar\" utility in each target directory."
fi
if [[ "${upgrade_0_27_0_warning}" == "1" ]]; then
ewarn 'Due to a bugfix in the scheduler [1] [2], previously preserved'
ewarn 'monthly/yearly backups could get deleted when upgrading to'
ewarn 'btrbk-0.27.0.'
ewarn ''
ewarn 'Before upgrading to btrbk-0.27.0, make sure to stop all cron jobs'
ewarn 'or systemd timers calling btrbk.'
ewarn ''
ewarn 'After upgrading, run "btrbk prune --dry-run --print-schedule" and'
ewarn 'check if any snapshots/backups would get deleted. If you want to'
ewarn 'forcibly preserve a snapshot/backup forever, rename it:'
ewarn ''
ewarn ' mv mysubvol.YYYYMMDD mysubvol.YYYYMMDD.keep_forever'
ewarn ''
ewarn 'Note that btrbk ignores subvolumes with unknown naming scheme, e.g.'
ewarn '(".keep_forever" suffix in the example above).'
ewarn ''
ewarn ' [1] https://github.com/digint/btrbk/issues/217'
ewarn ' [2] https://github.com/digint/btrbk/commit/719fb5f'
fi
}
|