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 ```
This commit is contained in:
parent
eed30dfa5c
commit
1ec5d8249c
|
@ -0,0 +1,25 @@
|
|||
From 0cb1321c4cbb2978318ddad73c9ee6f2a19c55c8 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Klink <flokli@flokli.de>
|
||||
Date: Sat, 11 Jan 2020 21:06:33 +0100
|
||||
Subject: [PATCH] umount_davfs: substitute ps command
|
||||
|
||||
---
|
||||
src/umount_davfs.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/umount_davfs.c b/src/umount_davfs.c
|
||||
index b7019c3..a278679 100644
|
||||
--- a/src/umount_davfs.c
|
||||
+++ b/src/umount_davfs.c
|
||||
@@ -157,7 +157,7 @@ main(int argc, char *argv[])
|
||||
}
|
||||
fclose(file);
|
||||
|
||||
- char *ps_command = ne_concat("ps -p ", pid, NULL);
|
||||
+ char *ps_command = ne_concat("@ps@ -p ", pid, NULL);
|
||||
FILE *ps_in = popen(ps_command, "r");
|
||||
if (!ps_in) {
|
||||
error(0, 0,
|
||||
--
|
||||
2.24.1
|
||||
|
|
@ -1,4 +1,10 @@
|
|||
{ stdenv, fetchurl, neon, zlib }:
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, neon
|
||||
, procps
|
||||
, substituteAll
|
||||
, zlib
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "davfs2-1.5.6";
|
||||
|
@ -10,11 +16,21 @@ stdenv.mkDerivation rec {
|
|||
|
||||
buildInputs = [ neon zlib ];
|
||||
|
||||
patches = [ ./isdir.patch ./fix-sysconfdir.patch ];
|
||||
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"];
|
||||
makeFlags = [
|
||||
"sbindir=$(out)/sbin"
|
||||
"ssbindir=$(out)/sbin"
|
||||
];
|
||||
|
||||
meta = {
|
||||
homepage = https://savannah.nongnu.org/projects/davfs2;
|
||||
|
|
Loading…
Reference in a new issue