nixpkgs/pkgs/by-name/fr/freecell-solver/package.nix

87 lines
1.7 KiB
Nix
Raw Normal View History

2023-10-13 03:26:30 +01:00
{ lib
, stdenv
, fetchurl
, cmake
, cmocka
, gmp
, gperf
, libtap
, ninja
, perl
, pkg-config
, python3
, rinutils
}:
2015-08-04 01:53:33 +01:00
2023-10-13 03:26:30 +01:00
stdenv.mkDerivation (finalAttrs: {
pname = "freecell-solver";
2024-06-15 04:38:27 +01:00
version = "6.10.0";
2015-08-04 01:53:33 +01:00
src = fetchurl {
2023-10-13 03:26:30 +01:00
url = "https://fc-solve.shlomifish.org/downloads/fc-solve/freecell-solver-${finalAttrs.version}.tar.xz";
2024-06-15 04:38:27 +01:00
hash = "sha256-RDuineCL51GmD6ykKoF7ZbNCzqkxiP12UXQbdQSDebQ=";
2015-08-04 01:53:33 +01:00
};
2023-10-13 03:26:30 +01:00
outputs = [ "out" "dev" "doc" "man" ];
pythonPath = with python3.pkgs; [
cffi
pysol-cards
random2
six
];
2018-06-03 22:19:54 +01:00
nativeBuildInputs = [
2023-10-13 03:26:30 +01:00
cmake
cmocka
gperf
ninja
perl
pkg-config
python3
]
++ (with perl.pkgs; TaskFreecellSolverTesting.buildInputs ++ [
GamesSolitaireVerify
HTMLTemplate
Moo
PathTiny
StringShellQuote
TaskFreecellSolverTesting
TemplateToolkit
TextTemplate
])
++ [ python3.pkgs.wrapPython ]
++ finalAttrs.pythonPath;
2018-06-03 22:19:54 +01:00
buildInputs = [
2023-10-13 03:26:30 +01:00
gmp
libtap
rinutils
2018-06-03 22:19:54 +01:00
];
2023-10-13 03:26:30 +01:00
strictDeps = true;
cmakeFlags = [
(lib.cmakeBool "FCS_WITH_TEST_SUITE" false) # needs freecell-solver
(lib.cmakeBool "BUILD_STATIC_LIBRARY" false)
];
postFixup = ''
wrapPythonProgramsIn "$out/bin" "$out $pythonPath"
'';
2015-08-04 01:53:33 +01:00
meta = {
2023-10-13 03:26:30 +01:00
homepage = "https://fc-solve.shlomifish.org/";
description = "FreeCell automatic solver";
2015-08-04 01:53:33 +01:00
longDescription = ''
2023-10-13 03:26:30 +01:00
FreeCell Solver is a program that automatically solves layouts of Freecell
and similar variants of Card Solitaire such as Eight Off, Forecell, and
Seahaven Towers, as well as Simple Simon boards.
2015-08-04 01:53:33 +01:00
'';
2023-10-13 03:26:30 +01:00
license = lib.licenses.mit;
mainProgram = "fc-solve";
maintainers = [ lib.maintainers.AndersonTorres ];
platforms = lib.platforms.unix;
2015-08-04 01:53:33 +01:00
};
2023-10-13 03:26:30 +01:00
})