btrbk: Init at 0.22.2
This commit is contained in:
parent
edac7f0ee2
commit
ea30f86814
@ -0,0 +1,39 @@
|
|||||||
|
From d5978c207f2b266165140dd21e9746ace5792daf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Moritz Ulrich <moritz@tarn-vedra.de>
|
||||||
|
Date: Fri, 18 Mar 2016 14:01:22 +0100
|
||||||
|
Subject: [PATCH] btrbk: Prefix PATH instead of resetting it.
|
||||||
|
|
||||||
|
Some distros don't even install use /usr/bin, /sbin, etc. (notably
|
||||||
|
NixOS). Instead, they use PATH to specify which programs are available
|
||||||
|
to a given executable.
|
||||||
|
|
||||||
|
This patch changes the behavior or `btrbk` so it extends PATH with its
|
||||||
|
own search paths instead of resetting it. This allows users and distros
|
||||||
|
to specify their own custom location for `btrfs` via `PATH`.
|
||||||
|
---
|
||||||
|
btrbk | 9 +++++----
|
||||||
|
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/btrbk b/btrbk
|
||||||
|
index ab15858..0b91cbe 100755
|
||||||
|
--- a/btrbk
|
||||||
|
+++ b/btrbk
|
||||||
|
@@ -2464,10 +2464,11 @@ sub exit_status
|
||||||
|
|
||||||
|
MAIN:
|
||||||
|
{
|
||||||
|
- # set PATH instead of using absolute "/sbin/btrfs" (for now), as
|
||||||
|
- # different distros (and even different versions of btrfs-progs)
|
||||||
|
- # install the "btrfs" executable to different locations.
|
||||||
|
- $ENV{PATH} = '/sbin:/bin:/usr/sbin:/usr/bin';
|
||||||
|
+ # Prefix PATH with /sbin etc. instead of using absolute
|
||||||
|
+ # "/sbin/btrfs" (for now), as different distros (and even different
|
||||||
|
+ # versions of btrfs-progs) install the "btrfs" executable to
|
||||||
|
+ # different locations.
|
||||||
|
+ $ENV{PATH} .= '/sbin:/bin:/usr/sbin:/usr/bin';
|
||||||
|
|
||||||
|
Getopt::Long::Configure qw(gnu_getopt);
|
||||||
|
$Data::Dumper::Sortkeys = 1;
|
||||||
|
--
|
||||||
|
2.7.3
|
||||||
|
|
@ -0,0 +1,25 @@
|
|||||||
|
From 8abe8a915aa2d0c79c4dbe00dc7d255c32b7b85d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Moritz Ulrich <moritz@tarn-vedra.de>
|
||||||
|
Date: Fri, 18 Mar 2016 13:20:48 +0100
|
||||||
|
Subject: [PATCH] btrbk-mail: Use `btrbk` instead of unbound variable `$btrbk`
|
||||||
|
|
||||||
|
---
|
||||||
|
contrib/cron/btrbk-mail | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/contrib/cron/btrbk-mail b/contrib/cron/btrbk-mail
|
||||||
|
index f7e4f12..9143f2d 100755
|
||||||
|
--- a/contrib/cron/btrbk-mail
|
||||||
|
+++ b/contrib/cron/btrbk-mail
|
||||||
|
@@ -113,7 +113,7 @@ case $exitcode in
|
||||||
|
;;
|
||||||
|
10) status="ERROR: At least one backup task aborted!"
|
||||||
|
;;
|
||||||
|
- *) status="ERROR: $btrbk failed with error code $exitcode"
|
||||||
|
+ *) status="ERROR: btrbk failed with error code $exitcode"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
--
|
||||||
|
2.7.3
|
||||||
|
|
52
pkgs/tools/backup/btrbk/default.nix
Normal file
52
pkgs/tools/backup/btrbk/default.nix
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
{ stdenv, fetchurl, coreutils, bash, btrfs-progs, perl, perlPackages, makeWrapper }:
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "btrbk-${version}";
|
||||||
|
version = "0.22.2";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = "http://digint.ch/download/btrbk/releases/${name}.tar.xz";
|
||||||
|
sha256 = "1gbgi0dp62wlw7y72pgxjs6byxkrk73g35kqxzw0gjf32r5i4sb8";
|
||||||
|
};
|
||||||
|
|
||||||
|
patches = [
|
||||||
|
# https://github.com/digint/btrbk/pull/74
|
||||||
|
./btrbk-Prefix-PATH-instead-of-resetting-it.patch
|
||||||
|
# https://github.com/digint/btrbk/pull/73
|
||||||
|
./btrbk-mail-Use-btrbk-instead-of-unbound-variable-btr.patch
|
||||||
|
];
|
||||||
|
|
||||||
|
buildInputs = with perlPackages; [ makeWrapper perl DateCalc ];
|
||||||
|
|
||||||
|
preInstall = ''
|
||||||
|
substituteInPlace Makefile \
|
||||||
|
--replace "/usr" "$out" \
|
||||||
|
--replace "/etc" "$out/etc"
|
||||||
|
|
||||||
|
# Tainted Mode disables PERL5LIB
|
||||||
|
substituteInPlace btrbk --replace "perl -T" "perl"
|
||||||
|
|
||||||
|
# Fix btrbk-mail
|
||||||
|
substituteInPlace contrib/cron/btrbk-mail \
|
||||||
|
--replace "/bin/date" "${coreutils}/bin/date" \
|
||||||
|
--replace "/bin/echo" "${coreutils}/bin/echo" \
|
||||||
|
--replace '$btrbk' 'btrbk'
|
||||||
|
'';
|
||||||
|
|
||||||
|
fixupPhase = ''
|
||||||
|
patchShebangs $out/
|
||||||
|
|
||||||
|
wrapProgram $out/sbin/btrbk \
|
||||||
|
--set PERL5LIB $PERL5LIB \
|
||||||
|
--prefix PATH ':' "${btrfs-progs}/bin:${bash}/bin/"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "A backup tool for btrfs subvolumes";
|
||||||
|
homepage = http://digint.ch/btrbk;
|
||||||
|
license = licenses.gpl3;
|
||||||
|
platforms = platforms.unix;
|
||||||
|
maintainers = with maintainers; [ the-kenny ];
|
||||||
|
inherit version;
|
||||||
|
};
|
||||||
|
}
|
@ -769,6 +769,8 @@ let
|
|||||||
|
|
||||||
btrfs-progs = callPackage ../tools/filesystems/btrfs-progs { };
|
btrfs-progs = callPackage ../tools/filesystems/btrfs-progs { };
|
||||||
|
|
||||||
|
btrbk = callPackage ../tools/backup/btrbk { };
|
||||||
|
|
||||||
bwm_ng = callPackage ../tools/networking/bwm-ng { };
|
bwm_ng = callPackage ../tools/networking/bwm-ng { };
|
||||||
|
|
||||||
byobu = callPackage ../tools/misc/byobu {
|
byobu = callPackage ../tools/misc/byobu {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user