Merge #12973: add rrsync as an individual app

This commit is contained in:
Vladimír Čunát 2016-02-21 10:00:43 +01:00
commit 045164bdf8
4 changed files with 63 additions and 17 deletions

View File

@ -0,0 +1,21 @@
{ stdenv, fetchurl }:
rec {
version = "3.2.1";
src = fetchurl {
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
url = "mirror://samba/rsync/src/rsync-${version}.tar.gz";
sha256 = "1hm1q04hz15509f0p9bflw4d6jzfvpm1d36dxjwihk1wzakn5ypc";
};
patches = fetchurl {
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz";
sha256 = "09i3dcl37p22dp75vlnsvx7bm05ggafnrf1zwhf2kbij4ngvxvpd";
};
meta = with stdenv.lib; {
homepage = http://rsync.samba.org/;
license = licenses.gpl3Plus;
platforms = platforms.unix;
};
}

View File

@ -5,21 +5,15 @@
assert enableACLs -> acl != null;
let
base = import ./base.nix { inherit stdenv fetchurl; };
in
stdenv.mkDerivation rec {
name = "rsync-${version}";
version = "3.1.2";
name = "rsync-${base.version}";
mainSrc = fetchurl {
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
url = "mirror://samba/rsync/src/rsync-${version}.tar.gz";
sha256 = "1hm1q04hz15509f0p9bflw4d6jzfvpm1d36dxjwihk1wzakn5ypc";
};
mainSrc = base.src;
patchesSrc = fetchurl {
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz";
sha256 = "09i3dcl37p22dp75vlnsvx7bm05ggafnrf1zwhf2kbij4ngvxvpd";
};
patchesSrc = base.patches;
srcs = [mainSrc] ++ stdenv.lib.optional enableCopyDevicesPatch patchesSrc;
patches = stdenv.lib.optional enableCopyDevicesPatch "./patches/copy-devices.diff";
@ -29,11 +23,8 @@ stdenv.mkDerivation rec {
configureFlags = "--with-nobody-group=nogroup";
meta = with stdenv.lib; {
homepage = http://rsync.samba.org/;
meta = base.meta // {
description = "A fast incremental file transfer utility";
license = licenses.gpl3Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ simons ehmry ];
maintainers = with stdenv.lib.maintainers; [ simons ehmry kampfschlaefer ];
};
}

View File

@ -0,0 +1,33 @@
{ stdenv, fetchurl, perl, rsync }:
let
base = import ./base.nix { inherit stdenv fetchurl; };
in
stdenv.mkDerivation rec {
name = "rrsync-${base.version}";
src = base.src;
buildInputs = [ rsync ];
nativeBuildInputs = [perl];
# Skip configure and build phases.
# We just want something from the support directory
configurePhase = "true";
dontBuild = true;
postPatch = ''
substituteInPlace support/rrsync --replace /usr/bin/rsync ${rsync}/bin/rsync
'';
installPhase = ''
mkdir -p $out/bin
cp support/rrsync $out/bin
chmod a+x $out/bin/rrsync
'';
meta = base.meta // {
description = "A helper to run rsync-only environments from ssh-logins";
maintainers = [ stdenv.lib.maintainers.kampfschlaefer ];
};
}

View File

@ -13311,6 +13311,7 @@ let
enableACLs = !(stdenv.isDarwin || stdenv.isSunOS || stdenv.isFreeBSD);
enableCopyDevicesPatch = (config.rsync.enableCopyDevicesPatch or false);
};
rrsync = callPackage ../applications/networking/sync/rsync/rrsync.nix {};
rtl-sdr = callPackage ../applications/misc/rtl-sdr { };