2023-01-23 05:53:00 +00:00
|
|
|
{ lib, stdenv, fetchFromGitHub, fetchpatch }:
|
2017-06-28 02:30:47 +00:00
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
2019-08-15 12:41:18 +00:00
|
|
|
pname = "jdupes";
|
2023-01-23 05:53:00 +00:00
|
|
|
version = "1.21.0";
|
2017-06-28 02:30:47 +00:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "jbruchon";
|
|
|
|
repo = "jdupes";
|
|
|
|
rev = "v${version}";
|
2023-01-23 05:53:00 +00:00
|
|
|
sha256 = "sha256-nDyRaV49bLVHlyqKJ7hf6OBWOLCfmHrTeHryK091c3w=";
|
2017-06-28 02:30:47 +00:00
|
|
|
# Unicode file names lead to different checksums on HFS+ vs. other
|
|
|
|
# filesystems because of unicode normalisation. The testdir
|
|
|
|
# directories have such files and will be removed.
|
2022-05-17 19:10:33 +00:00
|
|
|
postFetch = "rm -r $out/testdir";
|
2017-06-28 02:30:47 +00:00
|
|
|
};
|
|
|
|
|
2023-01-23 05:53:00 +00:00
|
|
|
patches = [
|
|
|
|
(fetchpatch {
|
|
|
|
name = "darwin-stack-size.patch";
|
|
|
|
url = "https://github.com/jbruchon/jdupes/commit/8f5b06109b44a9e4316f9445da3044590a6c63e2.patch";
|
|
|
|
sha256 = "0saq92v0mm5g979chr062psvwp3i3z23mgqrcliq4m07lvwc7i3s";
|
|
|
|
})
|
|
|
|
(fetchpatch {
|
|
|
|
name = "linux-header-ioctl.patch";
|
|
|
|
url = "https://github.com/jbruchon/jdupes/commit/0d4d98f51c99999d2c6dbbb89d554af551b5b69b.patch";
|
|
|
|
sha256 = "sha256-lyuZeRp0Laa8I9nDl1HGdlKa59OvGRQJnRg2fTWv7mQ=";
|
|
|
|
})
|
|
|
|
(fetchpatch {
|
|
|
|
name = "darwin-apfs-comp.patch";
|
|
|
|
url = "https://github.com/jbruchon/jdupes/commit/517b7035945eacd82323392b13bc17b044bcc89d.patch";
|
|
|
|
sha256 = "sha256-lvOab6tyEyKUtik3JBdIs5SHpVjcQEDfN7n2bfUszBw=";
|
|
|
|
})
|
|
|
|
];
|
|
|
|
|
2020-05-13 02:18:00 +00:00
|
|
|
dontConfigure = true;
|
|
|
|
|
2020-01-14 16:57:24 +00:00
|
|
|
makeFlags = [
|
|
|
|
"PREFIX=${placeholder "out"}"
|
2021-01-15 09:19:50 +00:00
|
|
|
] ++ lib.optionals stdenv.isLinux [
|
2020-01-14 16:57:24 +00:00
|
|
|
"ENABLE_DEDUPE=1"
|
|
|
|
"STATIC_DEDUPE_H=1"
|
2021-01-15 09:19:50 +00:00
|
|
|
] ++ lib.optionals stdenv.cc.isGNU [
|
2020-08-04 07:25:48 +00:00
|
|
|
"HARDEN=1"
|
2020-01-14 16:57:24 +00:00
|
|
|
];
|
2017-06-28 02:30:47 +00:00
|
|
|
|
2018-06-22 03:17:25 +00:00
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2018-07-23 08:51:53 +00:00
|
|
|
doCheck = false; # broken Makefile, the above also removes tests
|
|
|
|
|
2018-06-22 03:17:25 +00:00
|
|
|
postInstall = ''
|
2020-05-13 02:18:00 +00:00
|
|
|
install -Dm444 -t $out/share/doc/jdupes CHANGES LICENSE README.md
|
2018-06-22 03:17:25 +00:00
|
|
|
'';
|
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2017-06-28 02:30:47 +00:00
|
|
|
description = "A powerful duplicate file finder and an enhanced fork of 'fdupes'";
|
|
|
|
longDescription = ''
|
|
|
|
jdupes is a program for identifying and taking actions upon
|
|
|
|
duplicate files. This fork known as 'jdupes' is heavily modified
|
|
|
|
from and improved over the original.
|
|
|
|
'';
|
2020-01-14 16:57:24 +00:00
|
|
|
homepage = "https://github.com/jbruchon/jdupes";
|
2017-06-28 02:30:47 +00:00
|
|
|
license = licenses.mit;
|
2018-06-22 03:17:25 +00:00
|
|
|
maintainers = with maintainers; [ romildo ];
|
2017-06-28 02:30:47 +00:00
|
|
|
};
|
|
|
|
}
|