nixpkgs/pkgs/tools/filesystems/davfs2/default.nix
Florian Klink 1ec5d8249c davfs2: substitute ps command
umount.davfs2 uses ps to get a process list to terminate gracefully.

On NixOS, this currently fails:

```
sh: ps: command not found
/run/current-system/sw/bin/umount.davfs:
  can't find mount.davfs-process with pid 4085;
  trying to unmount anyway.
  you propably have to remove /var/run/mount.davfs/root-x.pid manually
sh: umount: command not found
```

Fix this by patching ${procps}/bin/ps into the ps_command.

Afterwards:

```
umount.davfs: waiting for mount.davfs (pid 4106) to terminate gracefully .. OK
```
2020-01-12 00:01:59 +01:00

50 lines
1.2 KiB
Nix

{ stdenv
, fetchurl
, neon
, procps
, substituteAll
, zlib
}:
stdenv.mkDerivation rec {
name = "davfs2-1.5.6";
src = fetchurl {
url = "mirror://savannah/davfs2/${name}.tar.gz";
sha256 = "00fqadhmhi2bmdar5a48nicmjcagnmaj9wgsvjr6cffmrz6pcx21";
};
buildInputs = [ neon zlib ];
patches = [
./isdir.patch
./fix-sysconfdir.patch
(substituteAll {
src = ./0001-umount_davfs-substitute-ps-command.patch;
ps = "${procps}/bin/ps";
})
];
configureFlags = [ "--sysconfdir=/etc" ];
makeFlags = [
"sbindir=$(out)/sbin"
"ssbindir=$(out)/sbin"
];
meta = {
homepage = https://savannah.nongnu.org/projects/davfs2;
description = "Mount WebDAV shares like a typical filesystem";
license = stdenv.lib.licenses.gpl3Plus;
longDescription = ''
Web Distributed Authoring and Versioning (WebDAV), an extension to
the HTTP-protocol, allows authoring of resources on a remote web
server. davfs2 provides the ability to access such resources like
a typical filesystem, allowing for use by standard applications
with no built-in support for WebDAV.
'';
platforms = stdenv.lib.platforms.linux;
};
}