Skip to content

Commit

Permalink
Merge pull request #55488 from winpat/add_dirvish
Browse files Browse the repository at this point in the history
dirvish: init at 1.2.1
  • Loading branch information
xeji committed Feb 24, 2019
2 parents ed239c3 + c03098d commit 631bc2c
Show file tree
Hide file tree
Showing 5 changed files with 87 additions and 0 deletions.
5 changes: 5 additions & 0 deletions lib/licenses.nix
Expand Up @@ -561,6 +561,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "OpenSSL License";
};

osl2 = spdx {
spdxId = "OSL-2.0";
fullName = "Open Software License 2.0";
};

osl21 = spdx {
spdxId = "OSL-2.1";
fullName = "Open Software License 2.1";
Expand Down
5 changes: 5 additions & 0 deletions maintainers/maintainer-list.nix
Expand Up @@ -5020,6 +5020,11 @@
email = "windenntw@gmail.com";
name = "Antonio Vargas Gonzalez";
};
winpat = {
email = "patrickwinter@posteo.ch";
github = "winpat";
name = "Patrick Winter";
};
wizeman = {
email = "rcorreia@wizy.org";
github = "wizeman";
Expand Down
62 changes: 62 additions & 0 deletions pkgs/tools/backup/dirvish/default.nix
@@ -0,0 +1,62 @@
{ 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;
maintainers = [ maintainers.winpat ];
};
}
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Expand Up @@ -2306,6 +2306,8 @@ in

dirmngr = callPackage ../tools/security/dirmngr { };

dirvish = callPackage ../tools/backup/dirvish { };

disper = callPackage ../tools/misc/disper { };

dleyna-connector-dbus = callPackage ../development/libraries/dleyna-connector-dbus { };
Expand Down
13 changes: 13 additions & 0 deletions pkgs/top-level/perl-packages.nix
Expand Up @@ -16695,6 +16695,19 @@ let
};
};

TimePeriod = buildPerlPackage {
name = "Time-Period-1.25";
src = fetchurl {
url = "mirror://cpan/authors/id/P/PB/PBOYD/Time-Period-1.25.tar.gz";
sha256 = "d07fa580529beac6a9c8274c6bf220b4c3aade685df65c1669d53339bf6ef1e8";
};
meta = {
description = "A Perl module to deal with time periods";
license = stdenv.lib.licenses.gpl1;
maintainers = [ maintainers.winpat ];
};
};

Tk = buildPerlPackage rec {
name = "Tk-804.034";
src = fetchurl {
Expand Down

0 comments on commit 631bc2c

Please sign in to comment.