uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
39
pkgs/applications/networking/sync/acd_cli/default.nix
Normal file
39
pkgs/applications/networking/sync/acd_cli/default.nix
Normal file
|
|
@ -0,0 +1,39 @@
|
|||
{ lib, fetchFromGitHub, buildPythonApplication, fuse
|
||||
, appdirs, colorama, python-dateutil, requests, requests-toolbelt
|
||||
, fusepy, sqlalchemy, setuptools }:
|
||||
|
||||
buildPythonApplication rec {
|
||||
pname = "acd_cli";
|
||||
version = "0.3.2";
|
||||
|
||||
doCheck = false;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "yadayada";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0a0fr632l24a3jmgla3b1vcm50ayfa9hdbp677ch1chwj5dq4zfp";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ appdirs colorama python-dateutil fusepy requests
|
||||
requests-toolbelt setuptools sqlalchemy ];
|
||||
|
||||
makeWrapperArgs = [ "--prefix LIBFUSE_PATH : ${fuse}/lib/libfuse.so" ];
|
||||
|
||||
postFixup = ''
|
||||
function lnOverBin() {
|
||||
rm -f $out/bin/{$2,.$2-wrapped}
|
||||
ln -s $out/bin/$1 $out/bin/$2
|
||||
}
|
||||
lnOverBin acd_cli.py acd-cli
|
||||
lnOverBin acd_cli.py acd_cli
|
||||
lnOverBin acd_cli.py acdcli
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A command line interface and FUSE filesystem for Amazon Cloud Drive";
|
||||
homepage = "https://github.com/yadayada/acd_cli";
|
||||
license = licenses.gpl2;
|
||||
maintainers = with maintainers; [ edwtjo ];
|
||||
};
|
||||
}
|
||||
52
pkgs/applications/networking/sync/backintime/common.nix
Normal file
52
pkgs/applications/networking/sync/backintime/common.nix
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
{stdenv, lib, fetchFromGitHub, makeWrapper, gettext,
|
||||
python3, rsync, cron, openssh, sshfs-fuse, encfs }:
|
||||
|
||||
let
|
||||
python' = python3.withPackages (ps: with ps; [ dbus-python keyring ]);
|
||||
|
||||
apps = lib.makeBinPath [ openssh python' cron rsync sshfs-fuse encfs ];
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "backintime-common";
|
||||
version = "1.3.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bit-team";
|
||||
repo = "backintime";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-7iTQZ7SiESsKK8F8BpLrRNkj8JhHo64kliaOvMvYGvw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper gettext ];
|
||||
buildInputs = [ python' ];
|
||||
|
||||
installFlags = [ "DEST=$(out)" ];
|
||||
|
||||
preConfigure = ''
|
||||
cd common
|
||||
substituteInPlace configure \
|
||||
--replace "/.." "" \
|
||||
--replace "share/backintime" "${python'.sitePackages}/backintime"
|
||||
substituteInPlace "backintime" \
|
||||
--replace "share" "${python'.sitePackages}"
|
||||
'';
|
||||
|
||||
dontAddPrefix = true;
|
||||
|
||||
preFixup = ''
|
||||
wrapProgram "$out/bin/backintime" \
|
||||
--prefix PATH : ${apps}
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://github.com/bit-team/backintime";
|
||||
description = "Simple backup tool for Linux";
|
||||
license = lib.licenses.gpl2;
|
||||
maintainers = [ ];
|
||||
platforms = lib.platforms.all;
|
||||
longDescription = ''
|
||||
Back In Time is a simple backup tool (on top of rsync) for Linux
|
||||
inspired from “flyback project” and “TimeVault”. The backup is
|
||||
done by taking snapshots of a specified set of directories.
|
||||
'';
|
||||
};
|
||||
}
|
||||
26
pkgs/applications/networking/sync/backintime/qt.nix
Normal file
26
pkgs/applications/networking/sync/backintime/qt.nix
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
{ mkDerivation, backintime-common, python3 }:
|
||||
|
||||
let
|
||||
python' = python3.withPackages (ps: with ps; [ pyqt5 backintime-common ]);
|
||||
in
|
||||
mkDerivation {
|
||||
inherit (backintime-common)
|
||||
version src installFlags meta dontAddPrefix nativeBuildInputs;
|
||||
|
||||
pname = "backintime-qt";
|
||||
|
||||
buildInputs = [ python' backintime-common ];
|
||||
|
||||
preConfigure = ''
|
||||
cd qt
|
||||
substituteInPlace configure \
|
||||
--replace '"/../etc' '"/etc'
|
||||
substituteInPlace qttools.py \
|
||||
--replace "__file__, os.pardir, os.pardir" '"${backintime-common}/${python'.sitePackages}/backintime"'
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
wrapQtApp "$out/bin/backintime-qt" \
|
||||
--prefix PATH : "${backintime-common}/bin:$PATH"
|
||||
'';
|
||||
}
|
||||
65
pkgs/applications/networking/sync/casync/default.nix
Normal file
65
pkgs/applications/networking/sync/casync/default.nix
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, meson
|
||||
, ninja
|
||||
, pkg-config
|
||||
, python3
|
||||
, sphinx
|
||||
, acl
|
||||
, curl
|
||||
, fuse
|
||||
, libselinux
|
||||
, udev
|
||||
, xz
|
||||
, zstd
|
||||
, fuseSupport ? true
|
||||
, selinuxSupport ? true
|
||||
, udevSupport ? true
|
||||
, glibcLocales
|
||||
, rsync
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "casync";
|
||||
version = "2-226-gbd8898e";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "systemd";
|
||||
repo = "casync";
|
||||
rev = "bd8898ed92685e12022dd33a04c87786b5262344";
|
||||
sha256 = "04ibglizjzyd7ih13q6m7ic78n0mzw9nfmb3zd1fcm9j62qlq11i";
|
||||
};
|
||||
|
||||
buildInputs = [ acl curl xz zstd ]
|
||||
++ lib.optionals (fuseSupport) [ fuse ]
|
||||
++ lib.optionals (selinuxSupport) [ libselinux ]
|
||||
++ lib.optionals (udevSupport) [ udev ];
|
||||
nativeBuildInputs = [ meson ninja pkg-config python3 sphinx ];
|
||||
checkInputs = [ glibcLocales rsync ];
|
||||
|
||||
postPatch = ''
|
||||
for f in test/test-*.sh.in; do
|
||||
patchShebangs $f
|
||||
done
|
||||
patchShebangs test/http-server.py
|
||||
'';
|
||||
|
||||
PKG_CONFIG_UDEV_UDEVDIR = "lib/udev";
|
||||
mesonFlags = lib.optionals (!fuseSupport) [ "-Dfuse=false" ]
|
||||
++ lib.optionals (!udevSupport) [ "-Dudev=false" ]
|
||||
++ lib.optionals (!selinuxSupport) [ "-Dselinux=false" ];
|
||||
|
||||
doCheck = true;
|
||||
preCheck = ''
|
||||
export LC_ALL="en_US.utf-8"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Content-Addressable Data Synchronizer";
|
||||
homepage = "https://github.com/systemd/casync";
|
||||
license = licenses.lgpl21Plus;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ flokli ];
|
||||
};
|
||||
}
|
||||
27
pkgs/applications/networking/sync/desync/default.nix
Normal file
27
pkgs/applications/networking/sync/desync/default.nix
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
{ lib, buildGoModule, fetchFromGitHub }:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "desync";
|
||||
version = "0.9.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "folbricht";
|
||||
repo = "desync";
|
||||
sha256 = "sha256-yGlf6Z38GnOWSc2pvt/u4arx5lCB0QpoqPdNamdL9b0=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-c+Sz3WMKyzdEE/Hs+7dekQPn+62ddbmfvV21W0KeLDU=";
|
||||
|
||||
# nix builder doesn't have access to test data; tests fail for reasons unrelated to binary being bad.
|
||||
doCheck = false;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Content-addressed binary distribution system";
|
||||
longDescription = "An alternate implementation of the casync protocol and storage mechanism with a focus on production-readiness";
|
||||
homepage = "https://github.com/folbricht/desync";
|
||||
license = licenses.bsd3;
|
||||
platforms = platforms.unix; # *may* work on Windows, but varies between releases.
|
||||
maintainers = [ maintainers.chaduffy ];
|
||||
};
|
||||
}
|
||||
48
pkgs/applications/networking/sync/lsyncd/default.nix
Normal file
48
pkgs/applications/networking/sync/lsyncd/default.nix
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, lua, pkg-config, rsync,
|
||||
asciidoc, libxml2, docbook_xml_dtd_45, docbook_xsl, libxslt }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "lsyncd";
|
||||
version = "2.2.3";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "axkibe";
|
||||
repo = "lsyncd";
|
||||
rev = "release-${version}";
|
||||
sha256 = "1hbsih5hfq9lhgnxm0wb5mrj6xmlk2l0i9a79wzd5f6cnjil9l3x";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
sha256 = "0b0h2qxh73l502p7phf6qgl8576nf6fvqqp2x5wy3nz7sc9qb1z8";
|
||||
name = "fix-non-versioned-lua-not-search-in-cmake.patch";
|
||||
url = "https://github.com/axkibe/lsyncd/pull/500/commits/0af99d8d5ba35118e8799684a2d4a8ea4b0c6957.patch";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace default-rsync.lua \
|
||||
--replace "/usr/bin/rsync" "${rsync}/bin/rsync"
|
||||
'';
|
||||
|
||||
# Special flags needed on Darwin:
|
||||
# https://github.com/axkibe/lsyncd/blob/42413cabbedca429d55a5378f6e830f191f3cc86/INSTALL#L51
|
||||
cmakeFlags = lib.optional stdenv.isDarwin [ "-DWITH_INOTIFY=OFF" "-DWITH_FSEVENTS=ON" ];
|
||||
|
||||
dontUseCmakeBuildDir = true;
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [
|
||||
rsync
|
||||
lua pkg-config
|
||||
asciidoc libxml2 docbook_xml_dtd_45 docbook_xsl libxslt
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/axkibe/lsyncd";
|
||||
description = "A utility that synchronizes local directories with remote targets";
|
||||
license = licenses.gpl2Plus;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ bobvanderlinden ];
|
||||
};
|
||||
}
|
||||
55
pkgs/applications/networking/sync/onedrive/default.nix
Normal file
55
pkgs/applications/networking/sync/onedrive/default.nix
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchFromGitHub
|
||||
, autoreconfHook
|
||||
, ldc
|
||||
, installShellFiles
|
||||
, pkg-config
|
||||
, curl
|
||||
, sqlite
|
||||
, libnotify
|
||||
, withSystemd ? stdenv.isLinux
|
||||
, systemd
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "onedrive";
|
||||
version = "2.4.17";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "abraunegg";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-+ADAPxAZNDqLKLz6rAProqSDINDiTZhc2trxJFFMQeA=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook ldc installShellFiles pkg-config ];
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
sqlite
|
||||
libnotify
|
||||
] ++ lib.optional withSystemd systemd;
|
||||
|
||||
configureFlags = [
|
||||
"--enable-notifications"
|
||||
] ++ lib.optionals withSystemd [
|
||||
"--with-systemdsystemunitdir=${placeholder "out"}/lib/systemd/system"
|
||||
"--with-systemduserunitdir=${placeholder "out"}/lib/systemd/user"
|
||||
];
|
||||
|
||||
# we could also pass --enable-completions to configure but we would then have to
|
||||
# figure out the paths manually and pass those along.
|
||||
postInstall = ''
|
||||
installShellCompletion --bash --name ${pname} contrib/completions/complete.bash
|
||||
installShellCompletion --zsh --name _${pname} contrib/completions/complete.zsh
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A complete tool to interact with OneDrive on Linux";
|
||||
homepage = "https://github.com/abraunegg/onedrive";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ srgom peterhoeg ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
33
pkgs/applications/networking/sync/rclone/browser.nix
Normal file
33
pkgs/applications/networking/sync/rclone/browser.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, wrapQtAppsHook, qtbase }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rclone-browser";
|
||||
version = "1.8.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kapitainsky";
|
||||
repo = "RcloneBrowser";
|
||||
rev = version;
|
||||
sha256 = "14ckkdypkfyiqpnz0y2b73wh1py554iyc3gnymj4smy0kg70ai33";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# patch for Qt 5.15, https://github.com/kapitainsky/RcloneBrowser/pull/126
|
||||
(fetchpatch {
|
||||
url = "https://github.com/kapitainsky/RcloneBrowser/commit/ce9cf52e9c584a2cc85a5fa814b0fd7fa9cf0152.patch";
|
||||
sha256 = "0nm42flmaq7mva9j4dpp18i1xcv8gr08zfyb9apz1zwn79h1w0c8";
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ cmake wrapQtAppsHook ];
|
||||
|
||||
buildInputs = [ qtbase ];
|
||||
|
||||
meta = with lib; {
|
||||
inherit (src.meta) homepage;
|
||||
description = "Graphical Frontend to Rclone written in Qt";
|
||||
license = licenses.unlicense;
|
||||
platforms = platforms.linux;
|
||||
maintainers = with maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
||||
59
pkgs/applications/networking/sync/rclone/default.nix
Normal file
59
pkgs/applications/networking/sync/rclone/default.nix
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
{ lib, stdenv, buildGoModule, fetchFromGitHub, buildPackages, installShellFiles
|
||||
, makeWrapper
|
||||
, enableCmount ? true, fuse, macfuse-stubs
|
||||
}:
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "rclone";
|
||||
version = "1.58.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Hh0IVNaLAUOmdYJ6cbYFyDCLwL+0HyZdRzKnXAT0CB8=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-MPo1t1gzlrzAzbTOv/dSs2BH8NwlXmf6vo1DOFP2TrM=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
buildInputs = lib.optional enableCmount (if stdenv.isDarwin then macfuse-stubs else fuse);
|
||||
nativeBuildInputs = [ installShellFiles makeWrapper ];
|
||||
|
||||
tags = lib.optionals enableCmount [ "cmount" ];
|
||||
|
||||
ldflags = [ "-s" "-w" "-X github.com/rclone/rclone/fs.Version=${version}" ];
|
||||
|
||||
postInstall =
|
||||
let
|
||||
rcloneBin =
|
||||
if stdenv.buildPlatform == stdenv.hostPlatform
|
||||
then "$out"
|
||||
else lib.getBin buildPackages.rclone;
|
||||
in
|
||||
''
|
||||
installManPage rclone.1
|
||||
for shell in bash zsh fish; do
|
||||
${rcloneBin}/bin/rclone genautocomplete $shell rclone.$shell
|
||||
installShellCompletion rclone.$shell
|
||||
done
|
||||
'' + lib.optionalString (enableCmount && !stdenv.isDarwin)
|
||||
# use --suffix here to ensure we don't shadow /run/wrappers/bin/fusermount,
|
||||
# as the setuid wrapper is required as non-root on NixOS.
|
||||
''
|
||||
wrapProgram $out/bin/rclone \
|
||||
--suffix PATH : "${lib.makeBinPath [ fuse ] }" \
|
||||
--prefix LD_LIBRARY_PATH : "${fuse}/lib"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Command line program to sync files and directories to and from major cloud storage";
|
||||
homepage = "https://rclone.org";
|
||||
changelog = "https://github.com/rclone/rclone/blob/v${version}/docs/content/changelog.md";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ danielfullmer marsam SuperSandro2000 ];
|
||||
};
|
||||
}
|
||||
22
pkgs/applications/networking/sync/rsync/base.nix
Normal file
22
pkgs/applications/networking/sync/rsync/base.nix
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{ lib, fetchurl, fetchpatch }:
|
||||
|
||||
rec {
|
||||
version = "3.2.4";
|
||||
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 = "sha256-b3YYONCAUrC2V5z39nN9k+R/AfTaBMXSTTRHt/Kl+tE=";
|
||||
};
|
||||
upstreamPatchTarball = fetchurl {
|
||||
# signed with key 0048 C8B0 26D4 C96F 0E58 9C2F 6C85 9FB1 4B96 A8C5
|
||||
url = "mirror://samba/rsync/rsync-patches-${version}.tar.gz";
|
||||
sha256 = "sha256-cKWXWQr2xhzz0F1mNCn/n2D/4k5E+cc6TNxp69wTIqQ=";
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = "Fast incremental file transfer utility";
|
||||
homepage = "https://rsync.samba.org/";
|
||||
license = licenses.gpl3Plus;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
59
pkgs/applications/networking/sync/rsync/default.nix
Normal file
59
pkgs/applications/networking/sync/rsync/default.nix
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, perl
|
||||
, libiconv
|
||||
, zlib
|
||||
, popt
|
||||
, enableACLs ? lib.meta.availableOn stdenv.hostPlatform acl
|
||||
, acl
|
||||
, enableLZ4 ? true
|
||||
, lz4
|
||||
, enableOpenSSL ? true
|
||||
, openssl
|
||||
, enableXXHash ? true
|
||||
, xxHash
|
||||
, enableZstd ? true
|
||||
, zstd
|
||||
, enableCopyDevicesPatch ? false
|
||||
, nixosTests
|
||||
}:
|
||||
|
||||
let
|
||||
base = import ./base.nix { inherit lib fetchurl fetchpatch; };
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "rsync";
|
||||
version = base.version;
|
||||
|
||||
mainSrc = base.src;
|
||||
|
||||
patchesSrc = base.upstreamPatchTarball;
|
||||
|
||||
srcs = [ mainSrc ] ++ lib.optional enableCopyDevicesPatch patchesSrc;
|
||||
patches = lib.optional enableCopyDevicesPatch "./patches/copy-devices.diff";
|
||||
|
||||
buildInputs = [ libiconv zlib popt ]
|
||||
++ lib.optional enableACLs acl
|
||||
++ lib.optional enableZstd zstd
|
||||
++ lib.optional enableLZ4 lz4
|
||||
++ lib.optional enableOpenSSL openssl
|
||||
++ lib.optional enableXXHash xxHash;
|
||||
nativeBuildInputs = [ perl ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-nobody-group=nogroup"
|
||||
|
||||
# disable the included zlib explicitly as it otherwise still compiles and
|
||||
# links them even.
|
||||
"--with-included-zlib=no"
|
||||
];
|
||||
|
||||
passthru.tests = { inherit (nixosTests) rsyncd; };
|
||||
|
||||
meta = base.meta // {
|
||||
description = "A fast incremental file transfer utility";
|
||||
maintainers = with lib.maintainers; [ ehmry kampfschlaefer ];
|
||||
};
|
||||
}
|
||||
33
pkgs/applications/networking/sync/rsync/rrsync.nix
Normal file
33
pkgs/applications/networking/sync/rsync/rrsync.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{ lib, stdenv, fetchurl, perl, rsync, fetchpatch }:
|
||||
|
||||
let
|
||||
base = import ./base.nix { inherit lib fetchurl fetchpatch; };
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
pname = "rrsync";
|
||||
version = base.version;
|
||||
|
||||
src = base.src;
|
||||
|
||||
buildInputs = [ rsync perl ];
|
||||
|
||||
# Skip configure and build phases.
|
||||
# We just want something from the support directory
|
||||
dontConfigure = 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 = [ lib.maintainers.kampfschlaefer ];
|
||||
};
|
||||
}
|
||||
75
pkgs/applications/networking/sync/unison/default.nix
Normal file
75
pkgs/applications/networking/sync/unison/default.nix
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, ocamlPackages
|
||||
, fontschumachermisc
|
||||
, xset
|
||||
, makeWrapper
|
||||
, ncurses
|
||||
, gnugrep
|
||||
, copyDesktopItems
|
||||
, makeDesktopItem
|
||||
, enableX11 ? true
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "unison";
|
||||
version = "2.52.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bcpierce00";
|
||||
repo = "unison";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-YCuXkHqY+JHsguvst2UkI/6YlFt3iTvchO8PQuS15nI=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ]
|
||||
++ lib.optional enableX11 copyDesktopItems;
|
||||
buildInputs = [ ocamlPackages.ocaml ncurses ];
|
||||
|
||||
preBuild = lib.optionalString enableX11 ''
|
||||
sed -i "s|\(OCAMLOPT=.*\)$|\1 -I $(echo "${ocamlPackages.lablgtk}"/lib/ocaml/*/site-lib/lablgtk2)|" src/Makefile.OCaml
|
||||
'' + ''
|
||||
echo -e '\ninstall:\n\tcp $(FSMONITOR)$(EXEC_EXT) $(INSTALLDIR)' >> src/fsmonitor/linux/Makefile
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
"INSTALLDIR=$(out)/bin/"
|
||||
"UISTYLE=${if enableX11 then "gtk2" else "text"}"
|
||||
] ++ lib.optional (!ocamlPackages.ocaml.nativeCompilers) "NATIVE=false";
|
||||
|
||||
preInstall = ''
|
||||
mkdir -p $out/bin
|
||||
'';
|
||||
|
||||
postInstall = lib.optionalString enableX11 ''
|
||||
for i in $(cd $out/bin && ls); do
|
||||
wrapProgram $out/bin/$i \
|
||||
--run "[ -n \"\$DISPLAY\" ] && (${xset}/bin/xset q | ${gnugrep}/bin/grep -q \"${fontschumachermisc}\" || ${xset}/bin/xset +fp \"${fontschumachermisc}/lib/X11/fonts/misc\")"
|
||||
done
|
||||
|
||||
install -D $src/icons/U.svg $out/share/icons/hicolor/scalable/apps/unison.svg
|
||||
'';
|
||||
|
||||
dontStrip = !ocamlPackages.ocaml.nativeCompilers;
|
||||
|
||||
desktopItems = lib.optional enableX11 (makeDesktopItem {
|
||||
name = pname;
|
||||
desktopName = "Unison";
|
||||
comment = "Bidirectional file synchronizer";
|
||||
genericName = "File synchronization tool";
|
||||
exec = "unison";
|
||||
icon = "unison";
|
||||
categories = [ "Utility" "FileTools" "GTK" ];
|
||||
startupNotify = true;
|
||||
startupWMClass = "Unison";
|
||||
});
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://www.cis.upenn.edu/~bcpierce/unison/";
|
||||
description = "Bidirectional file synchronizer";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ viric ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
34
pkgs/applications/networking/sync/wdt/default.nix
Normal file
34
pkgs/applications/networking/sync/wdt/default.nix
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
{ stdenv, lib, fetchFromGitHub, cmake, folly, boost, gflags, glog, openssl, double-conversion, fmt }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "wdt";
|
||||
version = "unstable-2022-03-24";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "facebook";
|
||||
repo = "wdt";
|
||||
rev = "43319e59d0c77092468367cdadab37d12d7a2383";
|
||||
sha256 = "sha256-MajYK2eTUbWhEql0iTlgW5yLg9xAGZQk+Dx4fNxFFqw=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ folly boost gflags glog openssl double-conversion fmt ];
|
||||
|
||||
# source is expected to be named wdt
|
||||
# https://github.com/facebook/wdt/blob/43319e59d0c77092468367cdadab37d12d7a2383/CMakeLists.txt#L238
|
||||
postUnpack = ''
|
||||
ln -s $sourceRoot wdt
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
"-DWDT_USE_SYSTEM_FOLLY=ON"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Warp speed Data Transfer";
|
||||
homepage = "https://github.com/facebook/wdt";
|
||||
license = licenses.bsd3;
|
||||
maintainers = with maintainers; [ nickcao ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue