1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 attr,
6 acl,
7 libcap,
8 liburing,
9 oniguruma,
10}:
11
12stdenv.mkDerivation rec {
13 pname = "bfs";
14 version = "4.0.8";
15
16 src = fetchFromGitHub {
17 repo = "bfs";
18 owner = "tavianator";
19 rev = version;
20 hash = "sha256-yZoyDa8um3UA8K9Ty17xaGUvQmJA/agZPBsNo+/6weI=";
21 };
22
23 buildInputs = [
24 oniguruma
25 ]
26 ++ lib.optionals stdenv.hostPlatform.isLinux [
27 acl
28 attr
29 libcap
30 liburing
31 ];
32
33 configureFlags = [ "--enable-release" ];
34 makeFlags = [ "PREFIX=$(out)" ];
35
36 meta = with lib; {
37 description = "Breadth-first version of the UNIX find command";
38 longDescription = ''
39 bfs is a variant of the UNIX find command that operates breadth-first rather than
40 depth-first. It is otherwise intended to be compatible with many versions of find.
41 '';
42 homepage = "https://github.com/tavianator/bfs";
43 license = licenses.bsd0;
44 platforms = platforms.unix;
45 maintainers = with maintainers; [
46 yesbox
47 cafkafk
48 ];
49 mainProgram = "bfs";
50 };
51}