Merge pull request #139294 from shnarazk/kissat-init

authored by Sandro and committed by GitHub 0e4ef9ab bcf9d4ec

+69
+54
pkgs/applications/science/logic/kissat/default.nix
··· 1 + { lib, stdenv, fetchFromGitHub 2 + , drat-trim, p7zip 3 + }: 4 + 5 + stdenv.mkDerivation rec { 6 + pname = "kissat"; 7 + version = "2.0.1"; 8 + 9 + src = fetchFromGitHub { 10 + owner = "arminbiere"; 11 + repo = "kissat"; 12 + # https://github.com/arminbiere/kissat/issues/18 13 + rev = "abfa45fb782fa3b7c6e2eb6b939febe74d7270b7"; 14 + sha256 = "06pbmkjxgf2idhsrd1yzvbxr2wf8l06pjb38bzbygm6n9ami89b8"; 15 + }; 16 + 17 + outputs = [ "out" "dev" "lib" ]; 18 + 19 + checkInputs = [ drat-trim p7zip ]; 20 + doCheck = true; 21 + 22 + # 'make test' assumes that /etc/passwd is not writable. 23 + patches = [ ./writable-passwd-is-ok.patch ]; 24 + 25 + # the configure script is not generated by autotools and does not accept the 26 + # arguments that the default configurePhase passes like --prefix and --libdir 27 + dontAddPrefix = true; 28 + setOutputFlags = false; 29 + 30 + installPhase = '' 31 + runHook preInstall 32 + 33 + install -Dm0755 build/kissat "$out/bin/kissat" 34 + install -Dm0644 src/kissat.h "$dev/include/kissat.h" 35 + install -Dm0644 build/libkissat.a "$lib/lib/libkissat.a" 36 + mkdir -p "$out/share/doc/kissat/" 37 + install -Dm0644 {LICEN?E,README*,VERSION} "$out/share/doc/kissat/" 38 + 39 + runHook postInstall 40 + ''; 41 + 42 + meta = with lib; { 43 + description = "A 'keep it simple and clean bare metal SAT solver' written in C"; 44 + longDescription = '' 45 + Kissat is a "keep it simple and clean bare metal SAT solver" written in C. 46 + It is a port of CaDiCaL back to C with improved data structures, 47 + better scheduling of inprocessing and optimized algorithms and implementation. 48 + ''; 49 + maintainers = with maintainers; [ shnarazk ]; 50 + platforms = platforms.unix; 51 + license = licenses.mit; 52 + homepage = "http://fmv.jku.at/kissat"; 53 + }; 54 + }
+13
pkgs/applications/science/logic/kissat/writable-passwd-is-ok.patch
··· 1 + diff --git a/test/testfile.c b/test/testfile.c 2 + index cb311d5..0726244 100644 3 + --- a/test/testfile.c 4 + +++ b/test/testfile.c 5 + @@ -92,8 +92,6 @@ do { \ 6 + WRITABLE (true, "../test/file/non-existing"); 7 + WRITABLE (false, "/kissat-test-file-writable"); 8 + WRITABLE (false, "non-existing-directory/file-in-non-existing-directory"); 9 + - if (kissat_file_exists ("/etc/passwd")) 10 + - WRITABLE (false, "/etc/passwd"); 11 + #undef WRITABLE 12 + } 13 +
+2
pkgs/top-level/all-packages.nix
··· 31551 31551 31552 31552 honeytrap = callPackage ../tools/security/honeytrap { }; 31553 31553 31554 + kissat = callPackage ../applications/science/logic/kissat {}; 31555 + 31554 31556 tini = callPackage ../applications/virtualization/tini {}; 31555 31557 31556 31558 ifstat-legacy = callPackage ../tools/networking/ifstat-legacy { };