tangled
alpha
login
or
join now
tjh.dev
/
nixpkgs
Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
0
fork
atom
overview
issues
pulls
pipelines
dirvish: init at 1.2.1
Patrick Winter
7 years ago
9cf5079e
76b3cd66
+63
2 changed files
expand all
collapse all
unified
split
pkgs
tools
backup
dirvish
default.nix
top-level
all-packages.nix
+61
pkgs/tools/backup/dirvish/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
···
1
+
{ fetchurl, stdenv, makeWrapper, perl, rsync, perlPackages }:
2
+
3
+
stdenv.mkDerivation rec {
4
+
name = "dirvish-1.2.1";
5
+
src = fetchurl {
6
+
url = "http://dirvish.org/${name}.tgz";
7
+
sha256 = "6b7f29c3541448db3d317607bda3eb9bac9fb3c51f970611ffe27e9d63507dcd";
8
+
};
9
+
10
+
nativeBuildInputs = [ makeWrapper ];
11
+
buildInputs = [ perl ] ++ (with perlPackages; [ GetoptLong TimeParseDate TimePeriod ]);
12
+
13
+
executables = [ "dirvish" "dirvish-runall" "dirvish-expire" "dirvish-locate" ];
14
+
manpages = [ "dirvish.8" "dirvish-runall.8" "dirvish-expire.8" "dirvish-locate.8" "dirvish.conf.5" ];
15
+
16
+
buildPhase = ''
17
+
HEADER="#!${perl}/bin/perl
18
+
19
+
\$CONFDIR = \"/etc/dirvish\";
20
+
21
+
"
22
+
23
+
for executable in $executables; do
24
+
(
25
+
echo "$HEADER"
26
+
cat $executable.pl loadconfig.pl
27
+
) > $executable
28
+
chmod +x $executable
29
+
done
30
+
'';
31
+
32
+
installPhase = ''
33
+
mkdir -p $out/bin
34
+
cp --target-directory=$out/bin $executables
35
+
36
+
for manpage in $manpages; do
37
+
if [[ $manpage =~ \.([[:digit:]]+)$ ]]; then
38
+
section=''${BASH_REMATCH[1]}
39
+
mkdir -p $out/man/man$section
40
+
cp --target-directory=$out/man/man$section $manpage
41
+
else
42
+
echo "Couldn't determine man page section by filename"
43
+
exit 1
44
+
fi
45
+
done
46
+
'';
47
+
48
+
postFixup = ''
49
+
for executable in $executables; do
50
+
wrapProgram $out/bin/$executable \
51
+
--set PERL5LIB "$PERL5LIB"
52
+
done
53
+
'';
54
+
55
+
meta = with stdenv.lib; {
56
+
description = "Dirvish is a fast, disk based, rotating network backup system";
57
+
homepage = http://dirvish.org/;
58
+
license = stdenv.lib.licenses.osl2;
59
+
platforms = platforms.linux;
60
+
};
61
+
}
+2
pkgs/top-level/all-packages.nix
···
2276
2277
dirmngr = callPackage ../tools/security/dirmngr { };
2278
0
0
2279
disper = callPackage ../tools/misc/disper { };
2280
2281
dleyna-connector-dbus = callPackage ../development/libraries/dleyna-connector-dbus { };
···
2276
2277
dirmngr = callPackage ../tools/security/dirmngr { };
2278
2279
+
dirvish = callPackage ../tools/backup/dirvish { };
2280
+
2281
disper = callPackage ../tools/misc/disper { };
2282
2283
dleyna-connector-dbus = callPackage ../development/libraries/dleyna-connector-dbus { };