From e3b8fcc310b9c99bf380bef081aaccf0fa752921 Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Sat, 1 Jun 2019 09:32:00 -0500 Subject: [PATCH] radamsa: 0.5 -> 0.6 * new home (github -> gitlab) * "modernize" a bit * run tests! --- pkgs/tools/security/radamsa/default.nix | 36 ++++++++++++++++++------- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/pkgs/tools/security/radamsa/default.nix b/pkgs/tools/security/radamsa/default.nix index 3126dd2b4faf..7a78233dbced 100644 --- a/pkgs/tools/security/radamsa/default.nix +++ b/pkgs/tools/security/radamsa/default.nix @@ -1,26 +1,42 @@ -{ stdenv, fetchurl }: +{ stdenv, fetchurl, fetchFromGitLab, bash }: +let + # Fetch explicitly, otherwise build will try to do so + owl = fetchurl { + name = "ol.c.gz"; + url = "https://gitlab.com/owl-lisp/owl/uploads/0d0730b500976348d1e66b4a1756cdc3/ol-0.1.19.c.gz"; + sha256 = "0kdmzf60nbpvdn8j3l51i9lhcwfi4aw1zj4lhbp4adyg8n8pp4c6"; + }; +in stdenv.mkDerivation rec { - name = "radamsa-${version}"; - version = "0.5"; + pname = "radamsa"; + version = "0.6"; - src = fetchurl { - url = "https://github.com/aoh/radamsa/releases/download/v${version}/${name}.tar.gz"; - sha256 = "1d2chp45fbdb2v5zpsx6gh3bv8fhcjv0zijz10clcznadnm8c6p2"; + src = fetchFromGitLab { + owner = "akihe"; + repo = pname; + rev = "v${version}"; + sha256 = "0mi1mwvfnlpblrbmp0rcyf5p74m771z6nrbsly6cajyn4mlpmbaq"; }; patchPhase = '' substituteInPlace ./tests/bd.sh \ --replace "/bin/echo" echo - substituteInPlace ./Makefile \ - --replace "PREFIX=/usr" "PREFIX=$out" \ - --replace "BINDIR=/bin" "BINDIR=" + + ln -s ${owl} ol.c.gz + + patchShebangs tests ''; + + makeFlags = [ "PREFIX=${placeholder "out"}" "BINDIR=" ]; + + checkInputs = [ bash ]; + doCheck = true; meta = { description = "A general purpose fuzzer"; 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."; - homepage = https://github.com/aoh/radamsa; + homepage = https://gitlab.com/akihe/radamsa; maintainers = [ stdenv.lib.maintainers.markWot ]; platforms = stdenv.lib.platforms.all; };