From 573183beccc0b76b6daa81cfc39b0f99e770976b Mon Sep 17 00:00:00 2001 From: Diego Date: Sat, 28 Jun 2025 21:47:54 +0200 Subject: [PATCH] mfaktc: init at 0.23.5 --- pkgs/by-name/mf/mfaktc/package.nix | 63 ++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 pkgs/by-name/mf/mfaktc/package.nix diff --git a/pkgs/by-name/mf/mfaktc/package.nix b/pkgs/by-name/mf/mfaktc/package.nix new file mode 100644 index 000000000000..857bc9a0ef32 --- /dev/null +++ b/pkgs/by-name/mf/mfaktc/package.nix @@ -0,0 +1,63 @@ +{ + lib, + stdenv, + autoAddDriverRunpath, + cudaPackages, + fetchFromGitHub, + versionCheckHook, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "mfaktc"; + version = "0.23.5"; + + src = fetchFromGitHub { + owner = "primesearch"; + repo = "mfaktc"; + tag = "${finalAttrs.version}"; + fetchSubmodules = true; + hash = "sha256-NUcRd+WvmRjXC7rfOKFw4mue7V9oobsy/OTHHEoaiHo="; + }; + + enableParallelBuilding = true; + buildInputs = [ + cudaPackages.cuda_nvcc + cudaPackages.cuda_cudart + autoAddDriverRunpath + ]; + + makeFlags = [ + "-C" + "src" + ]; + + installPhase = '' + runHook preInstall + + install -Dm755 mfaktc -t $out/bin + install -Dm755 mfaktc.ini -t $out/share + + runHook postInstall + ''; + + doInstallCheck = true; + nativeInstallCheckInputs = [ + versionCheckHook + ]; + + versionCheckProgramArg = "-h"; + + meta = { + description = "Trial Factoring program using CUDA for GIMPS"; + longDescription = '' + CUDA Program for trial factoring Mersenne primes. Intented for use with GIMPS through autoprimenet.py. + Note that the mfaktc.ini file, which is in $out/share, must be symlinked to your working directory. + ''; + homepage = "https://github.com/primesearch/mfaktc"; + downloadPage = "https://github.com/primesearch/mfaktc/releases/tag/${finalAttrs.version}"; + maintainers = with lib.maintainers; [ dstremur ]; + license = lib.licenses.gpl3Plus; + platforms = [ "x86_64-linux" ]; + mainProgram = "mfaktc"; + }; +})