tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
lol
0
fork
atom
overview
issues
pulls
pipelines
zxfer: init at 1.1.7
Fixes #174660
Colin Arnott
3 years ago
72d43ddf
71a885bf
+88
2 changed files
expand all
collapse all
unified
split
pkgs
applications
system
zxfer
default.nix
top-level
all-packages.nix
+86
pkgs/applications/system/zxfer/default.nix
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
···
1
+
{ lib
2
+
, bash
3
+
, fetchFromGitHub
4
+
, installShellFiles
5
+
, coreutils
6
+
, gawk
7
+
, gnugrep
8
+
, gnused
9
+
, openssh
10
+
, resholve
11
+
, rsync
12
+
, which
13
+
, zfs
14
+
}:
15
+
16
+
resholve.mkDerivation rec {
17
+
pname = "zxfer";
18
+
version = "1.1.7";
19
+
20
+
src = fetchFromGitHub {
21
+
owner = "allanjude";
22
+
repo = pname;
23
+
rev = "v${version}";
24
+
hash = "sha256-11SQJcD3GqPYBIgaycyKkc62/diVKPuuj2Or97j+NZY=";
25
+
};
26
+
27
+
nativeBuildInputs = [ installShellFiles ];
28
+
29
+
# these may point to paths on remote systems, calculated at runtime, thus we cannot fix them
30
+
# we can only set their initial values, and let them remain dynamic
31
+
postPatch = ''
32
+
substituteInPlace zxfer \
33
+
--replace 'LCAT=""' 'LCAT=${coreutils}/bin/cat' \
34
+
--replace 'LZFS=$( which zfs )' 'LZFS=${zfs}/bin/zfs'
35
+
'';
36
+
37
+
installPhase = ''
38
+
runHook preInstall
39
+
40
+
installManPage zxfer.1m zxfer.8
41
+
install -Dm755 zxfer -t $out/bin/
42
+
43
+
runHook postInstall
44
+
'';
45
+
46
+
solutions.default = {
47
+
scripts = [ "bin/zxfer" ];
48
+
interpreter = "${bash}/bin/sh";
49
+
inputs = [
50
+
coreutils
51
+
gawk
52
+
gnugrep
53
+
gnused
54
+
openssh
55
+
rsync
56
+
which
57
+
];
58
+
fake.external = [
59
+
"kldload" # bsd builtin
60
+
"kldstat" # bsd builtin
61
+
"svcadm" # solaris builtin
62
+
];
63
+
keep = {
64
+
"$LCAT" = true;
65
+
"$LZFS" = true;
66
+
"$PROGRESS_DIALOG" = true;
67
+
"$RZFS" = true;
68
+
"$input_optionts" = true;
69
+
"$option_O" = true;
70
+
"$option_T" = true;
71
+
};
72
+
fix = {
73
+
"$AWK" = [ "awk" ];
74
+
"$RSYNC" = [ "rsync" ];
75
+
};
76
+
execer = [ "cannot:${rsync}/bin/rsync" ];
77
+
};
78
+
79
+
meta = with lib; {
80
+
description = "A popular script for managing ZFS snapshot replication";
81
+
homepage = "https://github.com/allanjude/zxfer";
82
+
changelog = "https://github.com/allanjude/zxfer/releases/tag/v${version}";
83
+
license = licenses.bsd2;
84
+
maintainers = with lib.maintainers; [ urandom ];
85
+
};
86
+
}
+2
pkgs/top-level/all-packages.nix
···
33847
33848
inherit (nodePackages) zx;
33849
0
0
33850
zynaddsubfx = callPackage ../applications/audio/zynaddsubfx {
33851
guiModule = "zest";
33852
fftw = fftwSinglePrec;
···
33847
33848
inherit (nodePackages) zx;
33849
33850
+
zxfer = callPackage ../applications/system/zxfer {};
33851
+
33852
zynaddsubfx = callPackage ../applications/audio/zynaddsubfx {
33853
guiModule = "zest";
33854
fftw = fftwSinglePrec;