about summary refs log tree commit diff
path: root/pkgs/tools/filesystems
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2019-08-25 18:55:46 +0200
committerRobin Gloster <mail@glob.in>2019-08-25 18:55:46 +0200
commit616b8343c4c384f651f51d8c9b8e96239e1113d0 (patch)
treec6894ea5e950e373bcf8c8e8948fb2a7d4716565 /pkgs/tools/filesystems
parent45d6ccea3357c65135b985f2eebf88020ca6461e (diff)
parent48191315aa2e34643203dbfc5ae8bd84c1cafe54 (diff)
downloadnixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.tar
nixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.tar.gz
nixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.tar.bz2
nixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.tar.lz
nixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.tar.xz
nixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.tar.zst
nixlib-616b8343c4c384f651f51d8c9b8e96239e1113d0.zip
Merge remote-tracking branch 'upstream/master' into gcc-8
Diffstat (limited to 'pkgs/tools/filesystems')
-rw-r--r--pkgs/tools/filesystems/android-file-transfer/default.nix4
-rw-r--r--pkgs/tools/filesystems/apfs-fuse/default.nix26
-rw-r--r--pkgs/tools/filesystems/avfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix6
-rw-r--r--pkgs/tools/filesystems/bees/default.nix2
-rw-r--r--pkgs/tools/filesystems/bindfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/btrfs-progs/default.nix6
-rw-r--r--pkgs/tools/filesystems/ceph/generic.nix1
-rw-r--r--pkgs/tools/filesystems/e2fsprogs/default.nix4
-rw-r--r--pkgs/tools/filesystems/f3/default.nix4
-rw-r--r--pkgs/tools/filesystems/file-rename/default.nix7
-rw-r--r--pkgs/tools/filesystems/fuse-overlayfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/glusterfs/default.nix33
-rw-r--r--pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch6
-rw-r--r--pkgs/tools/filesystems/glusterfs/glusterfs-glusterfind-log-remote-node_cmd-error.patch49
-rw-r--r--pkgs/tools/filesystems/glusterfs/glusterfs-python-remove-find_library.patch156
-rw-r--r--pkgs/tools/filesystems/glusterfs/glusterfs-use-PATH-instead-of-hardcodes.patch138
-rw-r--r--pkgs/tools/filesystems/go-mtpfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/gocryptfs/default.nix14
-rw-r--r--pkgs/tools/filesystems/gocryptfs/deps.nix89
-rw-r--r--pkgs/tools/filesystems/gocryptfs/fix-unix2syscall_darwin.go-build-failure.patch14
-rw-r--r--pkgs/tools/filesystems/mergerfs/default.nix4
-rw-r--r--pkgs/tools/filesystems/moosefs/default.nix6
-rw-r--r--pkgs/tools/filesystems/s3backer/default.nix4
-rw-r--r--pkgs/tools/filesystems/squashfs/default.nix2
-rw-r--r--pkgs/tools/filesystems/squashfs/squashfs-tools-4.4-4k-align.patch (renamed from pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch)38
-rw-r--r--pkgs/tools/filesystems/squashfuse/default.nix2
-rw-r--r--pkgs/tools/filesystems/yandex-disk/default.nix4
28 files changed, 132 insertions, 501 deletions
diff --git a/pkgs/tools/filesystems/android-file-transfer/default.nix b/pkgs/tools/filesystems/android-file-transfer/default.nix
index 3a29d272b15b..001e644b7e7d 100644
--- a/pkgs/tools/filesystems/android-file-transfer/default.nix
+++ b/pkgs/tools/filesystems/android-file-transfer/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchFromGitHub, cmake, fuse, readline, pkgconfig, qtbase }:
+{ stdenv, mkDerivation, fetchFromGitHub, cmake, fuse, readline, pkgconfig, qtbase }:
 
-stdenv.mkDerivation rec {
+mkDerivation rec {
   pname = "android-file-transfer";
   version = "3.9";
 
diff --git a/pkgs/tools/filesystems/apfs-fuse/default.nix b/pkgs/tools/filesystems/apfs-fuse/default.nix
new file mode 100644
index 000000000000..9ee0b8133260
--- /dev/null
+++ b/pkgs/tools/filesystems/apfs-fuse/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, fetchFromGitHub, fuse3, bzip2, zlib, attr, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "apfs-fuse-unstable";
+  version = "2019-07-23";
+
+  src = fetchFromGitHub {
+    owner  = "sgan81";
+    repo   = "apfs-fuse";
+    rev    = "309ecb030f38edac4c10fa741a004c5eb7a23e15";
+    sha256 = "0wq6rlqi00m5dp5gbzy65i1plm40j6nsm7938zvfgx5laal4wzr2";
+    fetchSubmodules = true;
+  };
+
+  buildInputs = [ fuse3 bzip2 zlib attr ];
+  nativeBuildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    homepage    = "https://github.com/sgan81/apfs-fuse";
+    description = "FUSE driver for APFS (Apple File System)";
+    license     = licenses.gpl2;
+    maintainers = with maintainers; [ ealasu ];
+    platforms   = platforms.linux;
+  };
+
+}
diff --git a/pkgs/tools/filesystems/avfs/default.nix b/pkgs/tools/filesystems/avfs/default.nix
index 5c44ef239630..35e26828176d 100644
--- a/pkgs/tools/filesystems/avfs/default.nix
+++ b/pkgs/tools/filesystems/avfs/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   name = "avfs-${version}";
-  version = "1.0.6";
+  version = "1.1.1";
   src = fetchurl {
     url = "mirror://sourceforge/avf/${version}/${name}.tar.bz2";
-    sha256 = "1hz39f7p5vw647xqk161v3nh88qnd599av6nfidpmkh1d9vkl6jc";
+    sha256 = "0fxzigpyi08ipqz30ihjcpqmmx8g7r1kqdqq1bnnznvnhrzyygn8";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index 48926a3aade7..95923f202cf4 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -3,12 +3,12 @@
 
 stdenv.mkDerivation rec {
   pname = "bcachefs-tools";
-  version = "2019-05-29";
+  version = "2019-08-21";
 
   src = fetchgit {
     url = "https://evilpiepirate.org/git/bcachefs-tools.git";
-    rev = "34b93747051055c1076add36f4730c7715e27f07";
-    sha256 = "1z6ih0mssa9y9yr3v0dzrflliqz8qfdkjb29p9nqbpg8iqi45fa8";
+    rev = "72a408f84846fe702b8db4f158b678ee20bbf835";
+    sha256 = "0y5700afv1x1i3wnp3g71i3zhyhkwmx79j0irxr63fmg47n0ys1i";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/filesystems/bees/default.nix b/pkgs/tools/filesystems/bees/default.nix
index c43962cb075d..f12e8af84b88 100644
--- a/pkgs/tools/filesystems/bees/default.nix
+++ b/pkgs/tools/filesystems/bees/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, runCommand, makeWrapper, fetchFromGitHub, bash, btrfs-progs, coreutils, pythonPackages, utillinux }:
+{ stdenv, runCommand, fetchFromGitHub, bash, btrfs-progs, coreutils, pythonPackages, utillinux }:
 
 let
 
diff --git a/pkgs/tools/filesystems/bindfs/default.nix b/pkgs/tools/filesystems/bindfs/default.nix
index dd44f16c3fec..6a9d17772c88 100644
--- a/pkgs/tools/filesystems/bindfs/default.nix
+++ b/pkgs/tools/filesystems/bindfs/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, fuse, pkgconfig }:
 
 stdenv.mkDerivation rec {
-  version = "1.14.0";
+  version = "1.14.1";
   name    = "bindfs-${version}";
 
   src = fetchurl {
     url    = "https://bindfs.org/downloads/${name}.tar.gz";
-    sha256 = "1f1znixdaz4wnr9j6rkrplhbnkz7pdw9927yfikbjvxz8cl6qsdz";
+    sha256 = "111i4ba4px3idmrr5qhgq01926fas1rs2yx2shnwgdk3ziqcszxl";
   };
 
   dontStrip = true;
diff --git a/pkgs/tools/filesystems/btrfs-progs/default.nix b/pkgs/tools/filesystems/btrfs-progs/default.nix
index b4539eb2f009..2ef70ca78479 100644
--- a/pkgs/tools/filesystems/btrfs-progs/default.nix
+++ b/pkgs/tools/filesystems/btrfs-progs/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, fetchpatch, pkgconfig, attr, acl, zlib, libuuid, e2fsprogs, lzo
+{ stdenv, fetchurl, pkgconfig, attr, acl, zlib, libuuid, e2fsprogs, lzo
 , asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt, zstd, python3
 }:
 
 stdenv.mkDerivation rec {
   name = "btrfs-progs-${version}";
-  version = "5.1";
+  version = "5.2.1";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    sha256 = "0dgh56pamav8wb9nmabjwdlpcazvqc9pgzwablxn77mqh0qrhkaq";
+    sha256 = "0crjv3i20nyj2dagfw6q7byshscpn6j7wlqch3apkzzzk00lmb1n";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/generic.nix b/pkgs/tools/filesystems/ceph/generic.nix
index cb17a10cb738..6ecc65149c49 100644
--- a/pkgs/tools/filesystems/ceph/generic.nix
+++ b/pkgs/tools/filesystems/ceph/generic.nix
@@ -167,6 +167,7 @@ stdenv.mkDerivation {
     license = licenses.lgpl21;
     maintainers = with maintainers; [ adev ak ];
     platforms = platforms.unix;
+    broken = true;
   };
 
   passthru.version = version;
diff --git a/pkgs/tools/filesystems/e2fsprogs/default.nix b/pkgs/tools/filesystems/e2fsprogs/default.nix
index babb3d844fe9..d8ddde24ade3 100644
--- a/pkgs/tools/filesystems/e2fsprogs/default.nix
+++ b/pkgs/tools/filesystems/e2fsprogs/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "e2fsprogs";
-  version = "1.45.2";
+  version = "1.45.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz";
-    sha256 = "1bhqljgcngys1diaxh7rnxc85d1jsril8xd7bach9imdjwr1wlm8";
+    sha256 = "0gcqfnp9h7wgz1vq402kxd2w398vqaim26aq9i722v3lrgh5cm9s";
   };
 
   outputs = [ "bin" "dev" "out" "man" "info" ];
diff --git a/pkgs/tools/filesystems/f3/default.nix b/pkgs/tools/filesystems/f3/default.nix
index 7fb9ed3c97ae..598263c8895e 100644
--- a/pkgs/tools/filesystems/f3/default.nix
+++ b/pkgs/tools/filesystems/f3/default.nix
@@ -5,7 +5,7 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "f3";
-  version = "7.1";
+  version = "7.2";
 
   enableParallelBuilding = true;
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "AltraMayor";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0zglsmz683jg7f9wc6vmgljyg9w87pbnjw5x4w6x02w8233zvjqf";
+    sha256 = "1iwdg0r4wkgc8rynmw1qcqz62l0ldgc8lrazq33msxnk5a818jgy";
   };
 
   buildInputs = [ parted udev ];
diff --git a/pkgs/tools/filesystems/file-rename/default.nix b/pkgs/tools/filesystems/file-rename/default.nix
index 8dc4ec534a2b..8eeb052b22f0 100644
--- a/pkgs/tools/filesystems/file-rename/default.nix
+++ b/pkgs/tools/filesystems/file-rename/default.nix
@@ -1,10 +1,11 @@
 { stdenv, fetchurl, perlPackages, makeWrapper }:
 
-perlPackages.buildPerlPackage rec {
-  name = "File-Rename-0.20";
+perlPackages.buildPerlPackage {
+  pname = "File-Rename";
+  version = "0.20";
 
   src = fetchurl {
-    url = "mirror://cpan/authors/id/R/RM/RMBARKER/${name}.tar.gz";
+    url = mirror://cpan/authors/id/R/RM/RMBARKER/File-Rename-0.20.tar.gz;
     sha256 = "1cf6xx2hiy1xalp35fh8g73j67r0w0g66jpcbc6971x9jbm7bvjy";
   };
 
diff --git a/pkgs/tools/filesystems/fuse-overlayfs/default.nix b/pkgs/tools/filesystems/fuse-overlayfs/default.nix
index a5f5f632c682..a96830feb2a5 100644
--- a/pkgs/tools/filesystems/fuse-overlayfs/default.nix
+++ b/pkgs/tools/filesystems/fuse-overlayfs/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "fuse-overlayfs";
-  version = "0.4";
+  version = "0.5.1";
 
   src = fetchFromGitHub {
     owner = "containers";
     repo = pname;
     rev = "v${version}";
-    sha256 = "1hm1swgv9fi4kdwqssb6rh83i62qyfzv0yrh0z73kwrwdbqbg8m9";
+    sha256 = "03sdnnq0x44jlwf41snrrma4hxdiixmhynw35gjhm84slpljnngp";
   };
 
   nativeBuildInputs = [ autoreconfHook pkgconfig ];
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index e915cc1c132a..606e41e582ee 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, fuse, bison, flex_2_5_35, openssl, python2, ncurses, readline,
+{stdenv, fetchurl, fuse, bison, flex_2_5_35, openssl, python3, ncurses, readline,
  autoconf, automake, libtool, pkgconfig, zlib, libaio, libxml2, acl, sqlite,
  liburcu, attr, makeWrapper, coreutils, gnused, gnugrep, which,
  openssh, gawk, findutils, utillinux, lvm2, btrfs-progs, e2fsprogs, xfsprogs, systemd,
@@ -15,25 +15,26 @@ let
     #       The command
     #         find /nix/store/...-glusterfs-.../ -name '*.py' -executable
     #       can help with finding new Python scripts.
-    version = "4.0.0";
+    version = "6.5";
     name="${baseName}-${version}";
     url="https://github.com/gluster/glusterfs/archive/v${version}.tar.gz";
-    sha256 = "0af3fwiixddds6gdwhkyq3l214mmjl2wpjc2qayp5rpz79lnclq3";
+    sha256 = "17vdrw71ys1n5g9pdmzipmr706bslq0gbxxjhacxnrgsz8r4rl6a";
   };
+
   buildInputs = [
     fuse bison flex_2_5_35 openssl ncurses readline
     autoconf automake libtool pkgconfig zlib libaio libxml2
-    acl sqlite liburcu attr makeWrapper
-    (python2.withPackages (pkgs: [
+    acl sqlite liburcu attr makeWrapper utillinux
+    (python3.withPackages (pkgs: [
       pkgs.flask
       pkgs.prettytable
       pkgs.requests
       pkgs.pyxattr
     ]))
-    # NOTE: `python2` has to be *AFTER* the above `python2.withPackages`,
+    # NOTE: `python3` has to be *AFTER* the above `python3.withPackages`,
     #       to ensure that the packages are available but the `toPythonPath`
     #       shell function used in `postFixup` is also still available.
-    python2
+    python3
   ];
   # Some of the headers reference acl
   propagatedBuildInputs = [
@@ -65,21 +66,15 @@ rec {
   inherit (s) name version;
   inherit buildInputs propagatedBuildInputs;
 
-  postPatch = ''
-    sed -e '/chmod u+s/d' -i contrib/fuse-util/Makefile.am
-  '';
-
   patches = [
-    # Remove when https://bugzilla.redhat.com/show_bug.cgi?id=1450546 is fixed
-    ./glusterfs-use-PATH-instead-of-hardcodes.patch
-    # Remove when https://bugzilla.redhat.com/show_bug.cgi?id=1450593 is fixed
-    ./glusterfs-python-remove-find_library.patch
     # Remove when https://bugzilla.redhat.com/show_bug.cgi?id=1489610 is fixed
     ./glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch
-    # Remove when https://bugzilla.redhat.com/show_bug.cgi?id=1559130 is fixed
-    ./glusterfs-glusterfind-log-remote-node_cmd-error.patch
   ];
 
+  postPatch = ''
+    sed -e '/chmod u+s/d' -i contrib/fuse-util/Makefile.am
+  '';
+
    # Note that the VERSION file is something that is present in release tarballs
    # but not in git tags (at least not as of writing in v3.10.1).
    # That's why we have to create it.
@@ -92,6 +87,7 @@ rec {
    preConfigure = ''
      echo "v${s.version}" > VERSION
     ./autogen.sh
+    export PYTHON=${python3}/bin/python
     '';
 
   configureFlags = [
@@ -178,6 +174,9 @@ rec {
     # on a real TTY for testing purposes.
     echo "" | (mkdir -p nix-test-dir-for-gfid_to_path && touch b && $out/libexec/glusterfs/gfind_missing_files/gfid_to_path.py nix-test-dir-for-gfid_to_path)
     $out/share/glusterfs/scripts/eventsdash.py --help
+
+    # this gets falsely loaded as module by glusterfind
+    rm -r $out/bin/conf.py
     '';
 
   src = fetchurl {
diff --git a/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch b/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch
index f679fb8f4c1b..f08d73cf3a65 100644
--- a/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch
+++ b/pkgs/tools/filesystems/glusterfs/glusterfs-fix-bug-1489610-glusterfind-var-data-under-prefix.patch
@@ -18,10 +18,10 @@ index f87d8a454..b4d3f5d10 100644
  fi
  GLUSTERFS_LIBEXECDIR="$(eval echo $libexecdir)/glusterfs"
 -GLUSTERFSD_MISCDIR="$(eval echo $prefix)/var/lib/misc/glusterfsd"
-+GLUSTERFSD_MISCDIR="$(eval echo $localstatedir)/var/lib/misc/glusterfsd"
++GLUSTERFSD_MISCDIR="$(eval echo $localstatedir)/lib/misc/glusterfsd"
  prefix=$old_prefix
  exec_prefix=$old_exec_prefix
- 
--- 
+
+--
 2.12.0
 
diff --git a/pkgs/tools/filesystems/glusterfs/glusterfs-glusterfind-log-remote-node_cmd-error.patch b/pkgs/tools/filesystems/glusterfs/glusterfs-glusterfind-log-remote-node_cmd-error.patch
deleted file mode 100644
index 8bc00fdbf75c..000000000000
--- a/pkgs/tools/filesystems/glusterfs/glusterfs-glusterfind-log-remote-node_cmd-error.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From 92a6b84a37e7e2e0ec0655ca45cedb64ab72080e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
-Date: Fri, 8 Sep 2017 02:40:01 +0200
-Subject: [PATCH] glusterfind: Log remote stderr on `node_cmd` error.
-
-The problem of lost stderr was introduced in
-commit feea851fad4f89b48bfe89fe3b75250cc7bd6501.
-
-Change-Id: Ic98f9bc9682ae3bd9c3ebea3855667fc8ba2843d
----
- tools/glusterfind/src/main.py | 17 ++++++++++++++++-
- 1 file changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/tools/glusterfind/src/main.py b/tools/glusterfind/src/main.py
-index c125f970a..6fffce4b3 100644
---- a/tools/glusterfind/src/main.py
-+++ b/tools/glusterfind/src/main.py
-@@ -75,12 +75,27 @@ def node_cmd(host, host_uuid, task, cmd, args, opts):
-             cmd = ["ssh",
-                    "-oNumberOfPasswordPrompts=0",
-                    "-oStrictHostKeyChecking=no",
-+                   # We force TTY allocation (-t -t) so that Ctrl+C is handed
-+                   # through; see:
-+                   #   https://bugzilla.redhat.com/show_bug.cgi?id=1382236
-+                   # Note that this turns stderr of the remote `cmd`
-+                   # into stdout locally.
-                    "-t",
-                    "-t",
-                    "-i", pem_key_path,
-                    "root@%s" % host] + cmd
- 
--        execute(cmd, exit_msg="%s - %s failed" % (host, task), logger=logger)
-+        (returncode, err, out) = execute(cmd, logger=logger)
-+        if returncode != 0:
-+            # Because the `-t -t` above turns the remote stderr into
-+            # local stdout, we need to log both stderr and stdout
-+            # here to print all error messages.
-+            fail("%s - %s failed; stdout (including remote stderr):\n"
-+                 "%s\n"
-+                 "stderr:\n"
-+                 "%s" % (host, task, out, err),
-+                 returncode,
-+                 logger=logger)
- 
-         if opts.get("copy_outfile", False) and not localdir:
-             cmd_copy = ["scp",
--- 
-2.12.0
-
diff --git a/pkgs/tools/filesystems/glusterfs/glusterfs-python-remove-find_library.patch b/pkgs/tools/filesystems/glusterfs/glusterfs-python-remove-find_library.patch
deleted file mode 100644
index 4757f2fce771..000000000000
--- a/pkgs/tools/filesystems/glusterfs/glusterfs-python-remove-find_library.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-From e6293e367f56833457291e32a4df7b21a52365a7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
-Date: Sat, 13 May 2017 18:54:36 +0200
-Subject: [PATCH] python: Remove all uses of find_library. Fixes #1450593
-
-`find_library()` doesn't consider LD_LIBRARY_PATH on Python < 3.6.
-
-Change-Id: Iee26085cb5d14061001f19f032c2664d69a378a8
----
- api/examples/getvolfile.py                                     |  2 +-
- geo-replication/syncdaemon/libcxattr.py                        |  3 +--
- geo-replication/syncdaemon/libgfchangelog.py                   |  6 ++----
- tests/features/ipctest.py                                      | 10 ++--------
- tests/utils/libcxattr.py                                       |  5 ++---
- tools/glusterfind/src/libgfchangelog.py                        |  3 +--
- .../features/changelog/lib/examples/python/libgfchangelog.py   |  3 +--
- 7 files changed, 10 insertions(+), 22 deletions(-)
-
-diff --git a/api/examples/getvolfile.py b/api/examples/getvolfile.py
-index 0c95213f0..32c2268b3 100755
---- a/api/examples/getvolfile.py
-+++ b/api/examples/getvolfile.py
-@@ -3,7 +3,7 @@
- import ctypes
- import ctypes.util
- 
--api = ctypes.CDLL(ctypes.util.find_library("gfapi"))
-+api = ctypes.CDLL("libgfapi.so")
- api.glfs_get_volfile.argtypes = [ctypes.c_void_p,
-                                  ctypes.c_void_p,
-                                  ctypes.c_ulong]
-diff --git a/geo-replication/syncdaemon/libcxattr.py b/geo-replication/syncdaemon/libcxattr.py
-index 3671e102c..f576648b7 100644
---- a/geo-replication/syncdaemon/libcxattr.py
-+++ b/geo-replication/syncdaemon/libcxattr.py
-@@ -10,7 +10,6 @@
- 
- import os
- from ctypes import CDLL, create_string_buffer, get_errno
--from ctypes.util import find_library
- 
- 
- class Xattr(object):
-@@ -25,7 +24,7 @@ class Xattr(object):
-          sizes we expect
-     """
- 
--    libc = CDLL(find_library("c"), use_errno=True)
-+    libc = CDLL("libc.so.6", use_errno=True)
- 
-     @classmethod
-     def geterrno(cls):
-diff --git a/geo-replication/syncdaemon/libgfchangelog.py b/geo-replication/syncdaemon/libgfchangelog.py
-index 334f5e9ea..093ae157a 100644
---- a/geo-replication/syncdaemon/libgfchangelog.py
-+++ b/geo-replication/syncdaemon/libgfchangelog.py
-@@ -9,14 +9,12 @@
- #
- 
- import os
--from ctypes import CDLL, RTLD_GLOBAL, create_string_buffer, \
--    get_errno, byref, c_ulong
--from ctypes.util import find_library
-+from ctypes import CDLL, RTLD_GLOBAL, create_string_buffer, get_errno, byref, c_ulong
- from syncdutils import ChangelogException, ChangelogHistoryNotAvailable
- 
- 
- class Changes(object):
--    libgfc = CDLL(find_library("gfchangelog"), mode=RTLD_GLOBAL,
-+    libgfc = CDLL("libgfchangelog.so", mode=RTLD_GLOBAL,
-                   use_errno=True)
- 
-     @classmethod
-diff --git a/tests/features/ipctest.py b/tests/features/ipctest.py
-index 5aff319b8..933924861 100755
---- a/tests/features/ipctest.py
-+++ b/tests/features/ipctest.py
-@@ -1,14 +1,8 @@
- #!/usr/bin/python
- 
- import ctypes
--import ctypes.util
--
--# find_library does not lookup LD_LIBRARY_PATH and may miss the
--# function. In that case, retry with less portable but explicit name.
--libgfapi = ctypes.util.find_library("gfapi")
--if libgfapi == None:
--	libgfapi = "libgfapi.so"
--api = ctypes.CDLL(libgfapi,mode=ctypes.RTLD_GLOBAL)
-+
-+api = ctypes.CDLL("libgfapi.so",mode=ctypes.RTLD_GLOBAL)
- 
- api.glfs_ipc.argtypes = [ ctypes.c_void_p, ctypes.c_int, ctypes.c_void_p, ctypes.c_void_p ]
- api.glfs_ipc.restype = ctypes.c_int
-diff --git a/tests/utils/libcxattr.py b/tests/utils/libcxattr.py
-index 149db72e6..4e6e6c46d 100644
---- a/tests/utils/libcxattr.py
-+++ b/tests/utils/libcxattr.py
-@@ -11,7 +11,6 @@
- import os
- import sys
- from ctypes import CDLL, c_int, create_string_buffer
--from ctypes.util import find_library
- 
- 
- class Xattr(object):
-@@ -28,9 +27,9 @@ class Xattr(object):
- 
-     if sys.hexversion >= 0x02060000:
-         from ctypes import DEFAULT_MODE
--        libc = CDLL(find_library("libc"), DEFAULT_MODE, None, True)
-+        libc = CDLL("libc.so.6", DEFAULT_MODE, None, True)
-     else:
--        libc = CDLL(find_library("libc"))
-+        libc = CDLL("libc.so.6")
- 
-     @classmethod
-     def geterrno(cls):
-diff --git a/tools/glusterfind/src/libgfchangelog.py b/tools/glusterfind/src/libgfchangelog.py
-index 0f6b40d6c..9ca3f326b 100644
---- a/tools/glusterfind/src/libgfchangelog.py
-+++ b/tools/glusterfind/src/libgfchangelog.py
-@@ -11,14 +11,13 @@
- import os
- from ctypes import CDLL, get_errno, create_string_buffer, c_ulong, byref
- from ctypes import RTLD_GLOBAL
--from ctypes.util import find_library
- 
- 
- class ChangelogException(OSError):
-     pass
- 
- 
--libgfc = CDLL(find_library("gfchangelog"), use_errno=True, mode=RTLD_GLOBAL)
-+libgfc = CDLL("libgfchangelog.so", use_errno=True, mode=RTLD_GLOBAL)
- 
- 
- def raise_oserr():
-diff --git a/xlators/features/changelog/lib/examples/python/libgfchangelog.py b/xlators/features/changelog/lib/examples/python/libgfchangelog.py
-index 10e73c02b..2cdbf1152 100644
---- a/xlators/features/changelog/lib/examples/python/libgfchangelog.py
-+++ b/xlators/features/changelog/lib/examples/python/libgfchangelog.py
-@@ -1,9 +1,8 @@
- import os
- from ctypes import *
--from ctypes.util import find_library
- 
- class Changes(object):
--    libgfc = CDLL(find_library("gfchangelog"), mode=RTLD_GLOBAL, use_errno=True)
-+    libgfc = CDLL("libgfchangelog.so", mode=RTLD_GLOBAL, use_errno=True)
- 
-     @classmethod
-     def geterrno(cls):
--- 
-2.12.0
-
diff --git a/pkgs/tools/filesystems/glusterfs/glusterfs-use-PATH-instead-of-hardcodes.patch b/pkgs/tools/filesystems/glusterfs/glusterfs-use-PATH-instead-of-hardcodes.patch
deleted file mode 100644
index acb15464e48f..000000000000
--- a/pkgs/tools/filesystems/glusterfs/glusterfs-use-PATH-instead-of-hardcodes.patch
+++ /dev/null
@@ -1,138 +0,0 @@
-From 616381bc25b0e90198683fb049f994e82d467d96 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
-Date: Sat, 13 May 2017 02:45:49 +0200
-Subject: [PATCH] Don't use hardcoded /sbin, /usr/bin etc. paths. Fixes
- #1450546.
-
-Instead, rely on programs to be in PATH, as gluster already
-does in many places across its code base.
-
-Change-Id: Id21152fe42f5b67205d8f1571b0656c4d5f74246
----
- contrib/fuse-lib/mount-common.c               |  8 ++++----
- xlators/mgmt/glusterd/src/glusterd-ganesha.c  |  6 +++---
- xlators/mgmt/glusterd/src/glusterd-quota.c    |  6 +++---
- xlators/mgmt/glusterd/src/glusterd-snapshot.c |  4 ++--
- xlators/mgmt/glusterd/src/glusterd-utils.c    | 14 +-------------
- 5 files changed, 13 insertions(+), 25 deletions(-)
-
-diff --git a/contrib/fuse-lib/mount-common.c b/contrib/fuse-lib/mount-common.c
-index e9f80fe81..6380dd867 100644
---- a/contrib/fuse-lib/mount-common.c
-+++ b/contrib/fuse-lib/mount-common.c
-@@ -255,16 +255,16 @@ fuse_mnt_umount (const char *progname, const char *abs_mnt,
-                         exit (1);
-                 }
- #ifdef GF_LINUX_HOST_OS
--                execl ("/bin/umount", "/bin/umount", "-i", rel_mnt,
-+                execl ("umount", "umount", "-i", rel_mnt,
-                        lazy ? "-l" : NULL, NULL);
--                GFFUSE_LOGERR ("%s: failed to execute /bin/umount: %s",
-+                GFFUSE_LOGERR ("%s: failed to execute umount: %s",
-                                progname, strerror (errno));
- #elif __NetBSD__
-                 /* exitting the filesystem causes the umount */
-                 exit (0);
- #else
--                execl ("/sbin/umount", "/sbin/umount", "-f", rel_mnt, NULL);
--                GFFUSE_LOGERR ("%s: failed to execute /sbin/umount: %s",
-+                execl ("umount", "umount", "-f", rel_mnt, NULL);
-+                GFFUSE_LOGERR ("%s: failed to execute umount: %s",
-                                progname, strerror (errno));
- #endif /* GF_LINUX_HOST_OS */
-                 exit (1);
-diff --git a/xlators/mgmt/glusterd/src/glusterd-quota.c b/xlators/mgmt/glusterd/src/glusterd-quota.c
-index 0e6629cf0..fcb4738b7 100644
---- a/xlators/mgmt/glusterd/src/glusterd-quota.c
-+++ b/xlators/mgmt/glusterd/src/glusterd-quota.c
-@@ -30,7 +30,7 @@
- 
- #ifndef _PATH_SETFATTR
- # ifdef GF_LINUX_HOST_OS
--#  define _PATH_SETFATTR "/usr/bin/setfattr"
-+#  define _PATH_SETFATTR "setfattr"
- # endif
- # ifdef __NetBSD__
- #  define _PATH_SETFATTR "/usr/pkg/bin/setfattr"
-@@ -335,7 +335,7 @@ _glusterd_quota_initiate_fs_crawl (glusterd_conf_t *priv,
- 
-                 if (type == GF_QUOTA_OPTION_TYPE_ENABLE ||
-                     type == GF_QUOTA_OPTION_TYPE_ENABLE_OBJECTS)
--                        runner_add_args (&runner, "/usr/bin/find", ".", NULL);
-+                        runner_add_args (&runner, "find", ".", NULL);
- 
-                 else if (type == GF_QUOTA_OPTION_TYPE_DISABLE) {
- 
-@@ -351,7 +351,7 @@ _glusterd_quota_initiate_fs_crawl (glusterd_conf_t *priv,
-                                          VIRTUAL_QUOTA_XATTR_CLEANUP_KEY, "1",
-                                          "{}", "\\", ";", NULL);
- #else
--                        runner_add_args (&runner, "/usr/bin/find", ".",
-+                        runner_add_args (&runner, "find", ".",
-                                          "-exec", _PATH_SETFATTR, "-n",
-                                          VIRTUAL_QUOTA_XATTR_CLEANUP_KEY, "-v",
-                                          "1", "{}", "\\", ";", NULL);
-diff --git a/xlators/mgmt/glusterd/src/glusterd-snapshot.c b/xlators/mgmt/glusterd/src/glusterd-snapshot.c
-index da0152366..f0d135350 100644
---- a/xlators/mgmt/glusterd/src/glusterd-snapshot.c
-+++ b/xlators/mgmt/glusterd/src/glusterd-snapshot.c
-@@ -121,7 +121,7 @@ glusterd_build_snap_device_path (char *device, char *snapname,
-         }
- 
-         runinit (&runner);
--        runner_add_args (&runner, "/sbin/lvs", "--noheadings", "-o", "vg_name",
-+        runner_add_args (&runner, "lvs", "--noheadings", "-o", "vg_name",
-                          device, NULL);
-         runner_redir (&runner, STDOUT_FILENO, RUN_PIPE);
-         snprintf (msg, sizeof (msg), "Get volume group for device %s", device);
-@@ -1982,7 +1982,7 @@ glusterd_is_thinp_brick (char *device, uint32_t *op_errno)
- 
-         runinit (&runner);
- 
--        runner_add_args (&runner, "/sbin/lvs", "--noheadings", "-o", "pool_lv",
-+        runner_add_args (&runner, "lvs", "--noheadings", "-o", "pool_lv",
-                          device, NULL);
-         runner_redir (&runner, STDOUT_FILENO, RUN_PIPE);
-         runner_log (&runner, this->name, GF_LOG_DEBUG, msg);
-diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c
-index 51db13df0..6fa7b92f9 100644
---- a/xlators/mgmt/glusterd/src/glusterd-utils.c
-+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c
-@@ -6027,7 +6027,6 @@ static struct fs_info {
-         char *fs_tool_pattern;
-         char *fs_tool_pkg;
- } glusterd_fs[] = {
--        /* some linux have these in /usr/sbin/and others in /sbin/? */
-         { "xfs", "xfs_info", NULL, "isize=", "xfsprogs" },
-         { "ext3", "tune2fs", "-l", "Inode size:", "e2fsprogs" },
-         { "ext4", "tune2fs", "-l", "Inode size:", "e2fsprogs" },
-@@ -6048,7 +6047,6 @@ glusterd_add_inode_size_to_dict (dict_t *dict, int count)
-         char           *trail             = NULL;
-         runner_t        runner            = {0, };
-         struct fs_info *fs                = NULL;
--        char            fs_tool_name[256] = {0, };
-         static dict_t  *cached_fs         = NULL;
- 
-         memset (key, 0, sizeof (key));
-@@ -6085,17 +6083,7 @@ glusterd_add_inode_size_to_dict (dict_t *dict, int count)
-                                 cur_word = "N/A";
-                                 goto cached;
-                         }
--
--                        snprintf (fs_tool_name, sizeof (fs_tool_name),
--                                  "/usr/sbin/%s", fs->fs_tool_name);
--                        if (sys_access (fs_tool_name, R_OK|X_OK) == 0)
--                                runner_add_arg (&runner, fs_tool_name);
--                        else {
--                                snprintf (fs_tool_name, sizeof (fs_tool_name),
--                                          "/sbin/%s", fs->fs_tool_name);
--                                if (sys_access (fs_tool_name, R_OK|X_OK) == 0)
--                                        runner_add_arg (&runner, fs_tool_name);
--                        }
-+                        runner_add_arg (&runner, fs->fs_tool_name);
-                         break;
-                 }
-         }
--- 
-2.12.0
-
diff --git a/pkgs/tools/filesystems/go-mtpfs/default.nix b/pkgs/tools/filesystems/go-mtpfs/default.nix
index c1d41ff1622c..72e43725ef59 100644
--- a/pkgs/tools/filesystems/go-mtpfs/default.nix
+++ b/pkgs/tools/filesystems/go-mtpfs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, pkgconfig, libusb1, buildGoPackage, fetchgit }:
+{ pkgconfig, libusb1, buildGoPackage, fetchgit }:
 
 buildGoPackage rec {
   name = "go-mtpfs-${version}";
diff --git a/pkgs/tools/filesystems/gocryptfs/default.nix b/pkgs/tools/filesystems/gocryptfs/default.nix
index d923dba0bc0a..0e48da746b83 100644
--- a/pkgs/tools/filesystems/gocryptfs/default.nix
+++ b/pkgs/tools/filesystems/gocryptfs/default.nix
@@ -2,13 +2,13 @@
 { stdenv, buildGoPackage, fetchFromGitHub, openssl, pandoc, pkgconfig }:
 
 let
-  version = "v1.6.1";
   goFuseVersion = with stdenv.lib; substring 0 7 (head (filter (
     d: d.goPackagePath == "github.com/hanwen/go-fuse"
   ) (import ./deps.nix))).fetch.rev;
 in
 buildGoPackage rec {
-  name = "gocryptfs-${version}";
+  pname = "gocryptfs";
+  version = "1.7"; # TODO: Drop `patches` with next release. Remove `fix-unix2syscall_darwin.go-build-failure.patch`.
 
   goPackagePath = "github.com/rfjakob/gocryptfs";
 
@@ -17,11 +17,15 @@ buildGoPackage rec {
 
   src = fetchFromGitHub {
     owner = "rfjakob";
-    repo = "gocryptfs";
-    rev = version;
-    sha256 = "0aqbl25g48b4jp6l09k6kic6w3p0q7d9ip2wvrcvh8lhnrbdkhzd";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1sr3i73haw07faqpw785cdda2kna8q3a0zhwab1p3i935rvp4qaa";
   };
 
+  # Fixes build on darwin
+  # Source: https://github.com/rfjakob/gocryptfs/commit/b1468a732fa26550f2a6f8a21cc7bd47b65a8c96
+  patches = [ ./fix-unix2syscall_darwin.go-build-failure.patch ];
+
   postPatch = "rm -r tests";
 
   buildFlagsArray = ''
diff --git a/pkgs/tools/filesystems/gocryptfs/deps.nix b/pkgs/tools/filesystems/gocryptfs/deps.nix
index 2589b41a0a5e..50f6e89908e9 100644
--- a/pkgs/tools/filesystems/gocryptfs/deps.nix
+++ b/pkgs/tools/filesystems/gocryptfs/deps.nix
@@ -1,39 +1,12 @@
 # file generated from Gopkg.lock using dep2nix (https://github.com/nixcloud/dep2nix)
 [
   {
-    goPackagePath  = "github.com/conejoninja/hid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/conejoninja/hid";
-      rev =  "3a959b87ebefc18767a31fa567eea402eb37239e";
-      sha256 = "1i1x7fhs3g9a48h2wxjczshx7gzmj9p6pd71l22ky998zgjadlim";
-    };
-  }
-  {
-    goPackagePath  = "github.com/conejoninja/tesoro";
-    fetch = {
-      type = "git";
-      url = "https://github.com/conejoninja/tesoro";
-      rev =  "e0e839b6a6f14bce56d1bfac9a86311a1646a6a3";
-      sha256 = "19q1ibj6l6pk2a3iwcyrj60sscvkqw450psd9zdflvb293cjsx8v";
-    };
-  }
-  {
-    goPackagePath  = "github.com/golang/protobuf";
-    fetch = {
-      type = "git";
-      url = "https://github.com/golang/protobuf";
-      rev =  "b4deda0973fb4c70b50d226b1af49f3da59f5265";
-      sha256 = "0ya4ha7m20bw048m1159ppqzlvda4x0vdprlbk5sdgmy74h3xcdq";
-    };
-  }
-  {
     goPackagePath  = "github.com/hanwen/go-fuse";
     fetch = {
       type = "git";
       url = "https://github.com/hanwen/go-fuse";
-      rev =  "95c6370914ac7822973d1893680e878e156f8d70";
-      sha256 = "1h701c1hxrw7ljh7kc0rjx18bfw2mzdbpmqqilb5wb0ngpdjpqxp";
+      rev =  "a533f0a5a633cccc0928c81985b13fa24407a211";
+      sha256 = "0kc2jjjyhnrd934jn7hzfx8kd4z2yq5yblwrxr6xcjjql1vb1n9k";
     };
   }
   {
@@ -41,8 +14,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/jacobsa/crypto";
-      rev =  "c73681c634de898c869684602cf0c0d2ce938c4d";
-      sha256 = "02jbiy6szshbzcmp4j3gpc577hrhikxqvm4kzxixp27k9f2cx5si";
+      rev =  "d95898ceee0769dac9bf74c46f8f68d3d3d79100";
+      sha256 = "0dgcvms7if672f09y0cj49n711i9r0609p5f1s27i53yah4qlm19";
     };
   }
   {
@@ -50,8 +23,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/pkg/xattr";
-      rev =  "f5b647e257e19d63831e7c7adb95dfb79d9ff4d9";
-      sha256 = "0cqxibbfllhs6ffxq65gn08088g7g7aw752p9g3vbnj35jk2p8i9";
+      rev =  "7782c2d6871d6e659e1563dc19c86b845264a6fc";
+      sha256 = "1j3z5b9nwgkxia925rkiq8n5avhf4zhmsdbpn2s3xb16a2w66prd";
     };
   }
   {
@@ -64,39 +37,12 @@
     };
   }
   {
-    goPackagePath  = "github.com/trezor/trezord-go";
-    fetch = {
-      type = "git";
-      url = "https://github.com/trezor/trezord-go";
-      rev =  "bae9c40e5d71c459bde056d42d4b19ab318c90c2";
-      sha256 = "12j7b4vjs8n68214zrh5ivpqm3fcifk27bj6rszd9x2839nk3hy8";
-    };
-  }
-  {
-    goPackagePath  = "github.com/xaionaro-go/cryptoWallet";
-    fetch = {
-      type = "git";
-      url = "https://github.com/xaionaro-go/cryptoWallet";
-      rev =  "47f9f6877e4324a8bc47fc5661c32d2fe6d29586";
-      sha256 = "14h2vnl2jm2wj10znizdf2f0mxsk27rsjskjw5qffy8nf5a0i3i6";
-    };
-  }
-  {
-    goPackagePath  = "github.com/zserge/hid";
-    fetch = {
-      type = "git";
-      url = "https://github.com/zserge/hid";
-      rev =  "c86e7adeabafd6fcb3371ad64d6ed366b04d55db";
-      sha256 = "1y2zqndq6mafgsdai5gnkw4g8dzl9vmjcxq0i8xspaj4dmck19c4";
-    };
-  }
-  {
     goPackagePath  = "golang.org/x/crypto";
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/crypto";
-      rev =  "de0752318171da717af4ce24d0a2e8626afaeb11";
-      sha256 = "1ps1dl2a5lwr3vbwcy8n4i1v73m567y024sk961fk281phrzp13i";
+      rev =  "8dd112bcdc25174059e45e07517d9fc663123347";
+      sha256 = "0gbcz7gxmgg88s28vb90dsp1vdq0har7zvg2adsqbp8bm05x9q6b";
     };
   }
   {
@@ -104,8 +50,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sync";
-      rev =  "1d60e4601c6fd243af51cc01ddf169918a5407ca";
-      sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6";
+      rev =  "e225da77a7e68af35c70ccbf71af2b83e6acac3c";
+      sha256 = "0bh3583smcfw6jw3w6lp0za93rz7hpxfdz8vhxng75b7a6vdlw4p";
     };
   }
   {
@@ -113,17 +59,8 @@
     fetch = {
       type = "git";
       url = "https://go.googlesource.com/sys";
-      rev =  "14742f9018cd6651ec7364dc6ee08af0baaa1031";
-      sha256 = "17k06vwhnlb18n9rb1cdcdqyjcn353znfrr4c90xb3carz1sqfq5";
-    };
-  }
-  {
-    goPackagePath  = "golang.org/x/text";
-    fetch = {
-      type = "git";
-      url = "https://go.googlesource.com/text";
-      rev =  "f21a4dfb5e38f5895301dc265a8def02365cc3d0";
-      sha256 = "0r6x6zjzhr8ksqlpiwm5gdd7s209kwk5p4lw54xjvz10cs3qlq19";
+      rev =  "61b9204099cb1bebc803c9ffb9b2d3acd9d457d9";
+      sha256 = "110carnw1rxk9awbcdbg5is0zl28vynm649y7rza36pg1vlv8rrh";
     };
   }
-]
\ No newline at end of file
+]
diff --git a/pkgs/tools/filesystems/gocryptfs/fix-unix2syscall_darwin.go-build-failure.patch b/pkgs/tools/filesystems/gocryptfs/fix-unix2syscall_darwin.go-build-failure.patch
new file mode 100644
index 000000000000..1adbc2c4d232
--- /dev/null
+++ b/pkgs/tools/filesystems/gocryptfs/fix-unix2syscall_darwin.go-build-failure.patch
@@ -0,0 +1,14 @@
+--- a/internal/syscallcompat/unix2syscall_darwin.go
++++ b/internal/syscallcompat/unix2syscall_darwin.go
+@@ -19,8 +19,8 @@ func Unix2syscall(u unix.Stat_t) syscall.Stat_t {
+ 		Size:      u.Size,
+ 		Blksize:   u.Blksize,
+ 		Blocks:    u.Blocks,
+-		Atimespec: syscall.Timespec(u.Atimespec),
+-		Mtimespec: syscall.Timespec(u.Mtimespec),
+-		Ctimespec: syscall.Timespec(u.Ctimespec),
++		Atimespec: syscall.Timespec(u.Atim),
++		Mtimespec: syscall.Timespec(u.Mtim),
++		Ctimespec: syscall.Timespec(u.Ctim),
+ 	}
+ }
diff --git a/pkgs/tools/filesystems/mergerfs/default.nix b/pkgs/tools/filesystems/mergerfs/default.nix
index ed4a271acd3c..43c7c167b5ef 100644
--- a/pkgs/tools/filesystems/mergerfs/default.nix
+++ b/pkgs/tools/filesystems/mergerfs/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   pname = "mergerfs";
-  version = "2.27.1";
+  version = "2.28.1";
 
   src = fetchFromGitHub {
     owner = "trapexit";
     repo = pname;
     rev = version;
-    sha256 = "0p8yb9dbbjp388kdi86lg1rg2zdqbjr0q5ka1f04h64s8vmkw41l";
+    sha256 = "18yc80ccpqf785gah5xw6jg5524wfra8bf3pcjr7idzdz4ca7nvf";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/moosefs/default.nix b/pkgs/tools/filesystems/moosefs/default.nix
index 0d58e8007efa..1e89b5729c70 100644
--- a/pkgs/tools/filesystems/moosefs/default.nix
+++ b/pkgs/tools/filesystems/moosefs/default.nix
@@ -1,24 +1,22 @@
 { stdenv
-, fetchzip
 , fetchFromGitHub
 , makeWrapper
 , python
 , fuse
 , pkgconfig
 , libpcap
-, file
 , zlib 
 }:
 
 stdenv.mkDerivation rec {
   pname = "moosefs";
-  version = "3.0.104";
+  version = "3.0.105";
 
   src = fetchFromGitHub {
     owner = pname;
     repo = pname;
     rev = "v${version}";
-    sha256 = "057xg7zy872w4hczk9b9ckmqyah3qhgysvxddqizr204cyadicxh";
+    sha256 = "0wphpdll0j4i6d4yxykaz2bamv83y0sj7j3cfv4br1zamdyprfwx";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
diff --git a/pkgs/tools/filesystems/s3backer/default.nix b/pkgs/tools/filesystems/s3backer/default.nix
index 16ecb1c9d153..8fb002b2d7fd 100644
--- a/pkgs/tools/filesystems/s3backer/default.nix
+++ b/pkgs/tools/filesystems/s3backer/default.nix
@@ -4,10 +4,10 @@
 
 stdenv.mkDerivation rec {
   name = "s3backer-${version}";
-  version = "1.5.0";
+  version = "1.5.2";
 
   src = fetchFromGitHub {
-    sha256 = "0pmszcnnlqyysljfyysd6jsvdz7fqgbk8z4vnkmda5dwwcm8b8fs";
+    sha256 = "1axxnhhf335xckwn43csqmvf1454izbk9dglc3r7isrk0lz1ricc";
     rev = version;
     repo = "s3backer";
     owner = "archiecobbs";
diff --git a/pkgs/tools/filesystems/squashfs/default.nix b/pkgs/tools/filesystems/squashfs/default.nix
index 2fd3d52bdf67..59a786116df6 100644
--- a/pkgs/tools/filesystems/squashfs/default.nix
+++ b/pkgs/tools/filesystems/squashfs/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
     # This patch adds an option to pad filesystems (increasing size) in
     # exchange for better chunking / binary diff calculation.
-    ./squashfs-tools-4.3-4k-align.patch
+    ./squashfs-tools-4.4-4k-align.patch
   ] ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch;
 
   buildInputs = [ zlib xz zstd ]
diff --git a/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch b/pkgs/tools/filesystems/squashfs/squashfs-tools-4.4-4k-align.patch
index cd4308b489fe..c9c3dd3d7604 100644
--- a/pkgs/tools/filesystems/squashfs/squashfs-tools-4.3-4k-align.patch
+++ b/pkgs/tools/filesystems/squashfs/squashfs-tools-4.4-4k-align.patch
@@ -16,24 +16,20 @@ increased_size = (number_of_unfragmented_files_in_image + number of fragments) *
 
 The 4k alignment can be enabled by flag '-4k-align'
 ---
- squashfs-tools/mksquashfs.c | 16 ++++++++++++++++
- 1 file changed, 16 insertions(+)
-
-diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
-index 8b1376f..683973d 100644
---- a/squashfs-tools/mksquashfs.c
-+++ b/squashfs-tools/mksquashfs.c
-@@ -99,6 +99,8 @@ int old_exclude = TRUE;
+diff -u a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
+--- a/squashfs-tools/mksquashfs.c	2019-07-06 15:50:22.214873176 +0000
++++ b/squashfs-tools/mksquashfs.c	2019-07-06 15:51:22.244802582 +0000
+@@ -100,7 +100,9 @@
  int use_regex = FALSE;
  int nopad = FALSE;
  int exit_on_error = FALSE;
- static off_t squashfs_start_offset = 0;
 +int do_4k_align = FALSE;
+ static off_t squashfs_start_offset = 0;
 +#define ALIGN_UP(bytes, size) (bytes = (bytes + size - 1) & ~(size - 1))
-
+ 
  long long global_uid = -1, global_gid = -1;
-
-@@ -1513,6 +1515,9 @@ void unlock_fragments()
+ 
+@@ -1495,6 +1497,9 @@
  	 * queue at this time.
  	 */
  	while(!queue_empty(locked_fragment)) {
@@ -41,9 +37,9 @@ index 8b1376f..683973d 100644
 +		if(do_4k_align)
 +			ALIGN_UP(bytes, 4096);
  		write_buffer = queue_get(locked_fragment);
- 		frg = write_buffer->block;
+ 		frg = write_buffer->block;	
  		size = SQUASHFS_COMPRESSED_SIZE_BLOCK(fragment_table[frg].size);
-@@ -2420,6 +2420,9 @@
+@@ -2414,6 +2419,9 @@
  	compressed_size = SQUASHFS_COMPRESSED_SIZE_BLOCK(c_byte);
  	write_buffer->size = compressed_size;
  	if(fragments_locked == FALSE) {
@@ -53,18 +49,18 @@ index 8b1376f..683973d 100644
  		fragment_table[file_buffer->block].size = c_byte;
  		fragment_table[file_buffer->block].start_block = bytes;
  		write_buffer->block = bytes;
-@@ -2761,6 +2769,10 @@ int write_file_blocks(squashfs_inode *inode, struct dir_ent *dir_ent,
+@@ -2728,6 +2736,10 @@
  	long long sparse = 0;
  	struct file_buffer *fragment_buffer = NULL;
-
+ 
 +	// 4k align the start of each file.
 +	if(do_4k_align)
 +		ALIGN_UP(bytes, 4096);
 +
  	if(pre_duplicate(read_size))
  		return write_file_blocks_dup(inode, dir_ent, read_buffer, dup);
-
-@@ -4692,6 +4704,7 @@ void write_filesystem_tables(struct squashfs_super_block *sBlk, int nopad)
+ 
+@@ -4808,6 +4820,7 @@
  		"compressed", no_fragments ? "no" : noF ? "uncompressed" :
  		"compressed", no_xattrs ? "no" : noX ? "uncompressed" :
  		"compressed", noI || noId ? "uncompressed" : "compressed");
@@ -72,7 +68,7 @@ index 8b1376f..683973d 100644
  	printf("\tduplicates are %sremoved\n", duplicate_checking ? "" :
  		"not ");
  	printf("Filesystem size %.2f Kbytes (%.2f Mbytes)\n", bytes / 1024.0,
-@@ -5346,6 +5359,8 @@ print_compressor_options:
+@@ -5570,6 +5583,8 @@
  			root_name = argv[i];
  		} else if(strcmp(argv[i], "-version") == 0) {
  			VERSION();
@@ -81,7 +77,7 @@ index 8b1376f..683973d 100644
  		} else {
  			ERROR("%s: invalid option\n\n", argv[0]);
  printOptions:
-@@ -5387,6 +5402,7 @@ printOptions:
+@@ -5613,6 +5628,7 @@
  			ERROR("\t\t\tdirectory containing that directory, "
  				"rather than the\n");
  			ERROR("\t\t\tcontents of the directory\n");
@@ -89,5 +85,3 @@ index 8b1376f..683973d 100644
  			ERROR("\nFilesystem filter options:\n");
  			ERROR("-p <pseudo-definition>\tAdd pseudo file "
  				"definition\n");
---
-2.14.1.480.gb18f417b89-goog (previously; hand-patched by charles-dyfis-net)
diff --git a/pkgs/tools/filesystems/squashfuse/default.nix b/pkgs/tools/filesystems/squashfuse/default.nix
index d7d917d5e9fb..40e350846c5f 100644
--- a/pkgs/tools/filesystems/squashfuse/default.nix
+++ b/pkgs/tools/filesystems/squashfuse/default.nix
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
     owner = "vasi";
     repo  = "${pname}";
     rev = "540204955134eee44201d50132a5f66a246bcfaf";
-    sha256 = "07jv4qjjz9ky3mw3p5prgs19g1bna9dcd7jjdz8083s1wyipdgcq";
+    sha256 = "062s77y32p80vc24a79z31g90b9wxzvws1xvicgx5fn1pd0xa0q6";
   };
 
   nativeBuildInputs = [ autoreconfHook libtool pkgconfig ];
diff --git a/pkgs/tools/filesystems/yandex-disk/default.nix b/pkgs/tools/filesystems/yandex-disk/default.nix
index 3b9e4a021080..61fd5f26e308 100644
--- a/pkgs/tools/filesystems/yandex-disk/default.nix
+++ b/pkgs/tools/filesystems/yandex-disk/default.nix
@@ -4,7 +4,7 @@ let
   p = if stdenv.is64bit then {
       arch = "x86_64";
       gcclib = "${stdenv.cc.cc.lib}/lib64";
-      sha256 = "1hxsizk3hm1465wkxwdbbcffgi3r64y3r0zsfzsvhvnzx4y5dadm";
+      sha256 = "14bpc5ddhxvgfxkxhj5q9z443s7z4nn1zf4k1hxj7rbf13rcpg00";
     }
     else {
       arch = "i386";
@@ -15,7 +15,7 @@ in
 stdenv.mkDerivation rec {
 
   name = "yandex-disk-${version}";
-  version = "0.1.5.1010";
+  version = "0.1.5.1039";
 
   src = fetchurl {
     url = "https://repo.yandex.ru/yandex-disk/rpm/stable/${p.arch}/${name}-1.fedora.${p.arch}.rpm";