dirvish: init at 1.2.1

This commit is contained in:
Patrick Winter 2018-12-03 16:55:32 +01:00
parent 76b3cd665f
commit 9cf5079ec3
2 changed files with 63 additions and 0 deletions

View file

@ -0,0 +1,61 @@
{ fetchurl, stdenv, makeWrapper, perl, rsync, perlPackages }:
stdenv.mkDerivation rec {
name = "dirvish-1.2.1";
src = fetchurl {
url = "http://dirvish.org/${name}.tgz";
sha256 = "6b7f29c3541448db3d317607bda3eb9bac9fb3c51f970611ffe27e9d63507dcd";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ perl ] ++ (with perlPackages; [ GetoptLong TimeParseDate TimePeriod ]);
executables = [ "dirvish" "dirvish-runall" "dirvish-expire" "dirvish-locate" ];
manpages = [ "dirvish.8" "dirvish-runall.8" "dirvish-expire.8" "dirvish-locate.8" "dirvish.conf.5" ];
buildPhase = ''
HEADER="#!${perl}/bin/perl
\$CONFDIR = \"/etc/dirvish\";
"
for executable in $executables; do
(
echo "$HEADER"
cat $executable.pl loadconfig.pl
) > $executable
chmod +x $executable
done
'';
installPhase = ''
mkdir -p $out/bin
cp --target-directory=$out/bin $executables
for manpage in $manpages; do
if [[ $manpage =~ \.([[:digit:]]+)$ ]]; then
section=''${BASH_REMATCH[1]}
mkdir -p $out/man/man$section
cp --target-directory=$out/man/man$section $manpage
else
echo "Couldn't determine man page section by filename"
exit 1
fi
done
'';
postFixup = ''
for executable in $executables; do
wrapProgram $out/bin/$executable \
--set PERL5LIB "$PERL5LIB"
done
'';
meta = with stdenv.lib; {
description = "Dirvish is a fast, disk based, rotating network backup system";
homepage = http://dirvish.org/;
license = stdenv.lib.licenses.osl2;
platforms = platforms.linux;
};
}

View file

@ -2276,6 +2276,8 @@ with pkgs;
dirmngr = callPackage ../tools/security/dirmngr { };
dirvish = callPackage ../tools/backup/dirvish { };
disper = callPackage ../tools/misc/disper { };
dleyna-connector-dbus = callPackage ../development/libraries/dleyna-connector-dbus { };