biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / tools / security / radamsa / default.nix
blobe619a248137c54e1c149bf56a89f7b53bc1293d4
1 { lib, stdenv, fetchurl, fetchFromGitLab, bash }:
3 let
4   # Fetch explicitly, otherwise build will try to do so
5   owl = fetchurl {
6     name = "ol.c.gz";
7     url = "https://gitlab.com/owl-lisp/owl/uploads/0d0730b500976348d1e66b4a1756cdc3/ol-0.1.19.c.gz";
8     sha256 = "0kdmzf60nbpvdn8j3l51i9lhcwfi4aw1zj4lhbp4adyg8n8pp4c6";
9   };
11 stdenv.mkDerivation rec {
12   pname = "radamsa";
13   version = "0.6";
15   src = fetchFromGitLab {
16     owner = "akihe";
17     repo = pname;
18     rev = "v${version}";
19     sha256 = "0mi1mwvfnlpblrbmp0rcyf5p74m771z6nrbsly6cajyn4mlpmbaq";
20   };
22   patchPhase = ''
23     substituteInPlace ./tests/bd.sh  \
24       --replace "/bin/echo" echo
26     ln -s ${owl} ol.c.gz
28     patchShebangs tests
29   '';
31   makeFlags = [ "PREFIX=${placeholder "out"}" "BINDIR=" ];
33   nativeCheckInputs = [ bash ];
34   doCheck = true;
36   meta = {
37     description = "General purpose fuzzer";
38     mainProgram = "radamsa";
39     longDescription = "Radamsa is a general purpose data fuzzer. It reads data from given sample files, or standard input if none are given, and outputs modified data. It is usually used to generate malformed data for testing programs.";
40     homepage =  "https://gitlab.com/akihe/radamsa";
41     maintainers = [ ];
42     platforms = lib.platforms.all;
43   };