summary refs log tree commit diff
diff options
context:
space:
mode:
authorlethalman <lucabru@src.gnome.org>2015-08-06 12:43:29 +0200
committerlethalman <lucabru@src.gnome.org>2015-08-06 12:43:29 +0200
commit61051ee836907e58858e1177df24ee08064b4ba6 (patch)
tree430400b8e38a9acc412d5aec1558e0301ebd6ae9
parent150b23d3f51a156665cb61aa72d4190f0e662a13 (diff)
parent1810c3dd42f9c9cca4fb08c2128f352f66b8ec4d (diff)
Merge pull request #9109 from AndersonTorres/pysolfc
Pysolfc
-rw-r--r--pkgs/development/libraries/libtap/default.nix28
-rw-r--r--pkgs/games/freecell-solver/default.nix30
-rw-r--r--pkgs/top-level/all-packages.nix4
-rw-r--r--pkgs/top-level/perl-packages.nix29
4 files changed, 91 insertions, 0 deletions
diff --git a/pkgs/development/libraries/libtap/default.nix b/pkgs/development/libraries/libtap/default.nix
new file mode 100644
index 0000000000000..a81d5a686bc76
--- /dev/null
+++ b/pkgs/development/libraries/libtap/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, pkgconfig, cmake, perl }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec{
+
+  name = "libtap-${version}";
+  version = "1.12.0";
+
+  src = fetchurl {
+    url = "http://web-cpan.shlomifish.org/downloads/${name}.tar.bz2";
+    sha256 = "1ms1770cx8c6q3lhn1chkzy12vzmjgvlms7cqhd2d3260j2wwv5s";
+  };
+
+  buildInputs = [ pkgconfig ];
+  propagatedBuildInputs = [ cmake perl ];
+
+  meta = {
+    description = "A library to implement a test protocol";
+    longDescription = ''
+      libtap is a library to implement the Test Anything Protocol for
+      C originally created by Nik Clayton. This is a maintenance
+      branch by Shlomi Fish.
+    '';
+    homepage = "http://www.shlomifish.org/open-source/projects/libtap/";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.AndersonTorres ];
+  };
+}
diff --git a/pkgs/games/freecell-solver/default.nix b/pkgs/games/freecell-solver/default.nix
new file mode 100644
index 0000000000000..1c641f55c4710
--- /dev/null
+++ b/pkgs/games/freecell-solver/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, pkgconfig, cmake, perl, gmp, libtap, perlPackages }:
+
+with stdenv.lib;
+stdenv.mkDerivation rec{
+
+  name = "freecell-solver-${version}";
+  version = "3.26.0";
+
+  src = fetchurl {
+    url = "http://fc-solve.shlomifish.org/downloads/fc-solve/${name}.tar.bz2";
+    sha256 = "0pm6xk4fmwgzva70qxb0pqymdfvpasnvqiwwmm8hpx7g37y11wqk";
+  };
+
+  buildInputs = [ pkgconfig cmake perl gmp libtap
+    perlPackages.TemplateToolkit perlPackages.StringShellQuote
+    perlPackages.GamesSolitaireVerify ];
+
+  meta = {
+    description = "A FreeCell automatic solver";
+    longDescription = ''
+      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.
+    '';
+    homepage = http://fc-solve.shlomifish.org/;
+    license = licenses.mit;
+    maintainers = [ maintainers.AndersonTorres ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e739cecf6d783..c5a951c6fcbd7 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -7348,6 +7348,8 @@ let
 
   libtoxcore-dev = callPackage ../development/libraries/libtoxcore/new-api { };
 
+  libtap = callPackage ../development/libraries/libtap { };
+
   libtsm = callPackage ../development/libraries/libtsm {
     automake = automake114x;
   };
@@ -13613,6 +13615,8 @@ let
 
   flightgear = callPackage ../games/flightgear { };
 
+  freecell-solver = callPackage ../games/freecell-solver { };
+
   freeciv = callPackage ../games/freeciv { };
 
   freeciv_gtk = callPackage ../games/freeciv {
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 7b2b0a95712b1..8f1b0bf3c480c 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -4062,6 +4062,20 @@ let self = _self // overrides; _self = with self; {
     doCheck = false;
   };
 
+  GamesSolitaireVerify = buildPerlModule {
+    name = "Games-Solitaire-Verify-0.1400";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/S/SH/SHLOMIF/Games-Solitaire-Verify-0.1400.tar.gz;
+      sha256 = "0c897c17f23ed6710d0e3ddfb54cce0f00f5b68c55277181adc94a03b7d8c659";
+    };
+    buildInputs = [ TestDifferences ];
+    propagatedBuildInputs = [ ClassXSAccessor ExceptionClass ListMoreUtils MooXlate ];
+    meta = {
+      description = "Verify solutions for solitaire games";
+      license = "mit";
+    };
+  };
+
   GD = buildPerlPackage rec {
     name = "GD-2.53";
     src = fetchurl {
@@ -6186,6 +6200,21 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  MooXlate = buildPerlPackage {
+    name = "MooX-late-0.015";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/T/TO/TOBYINK/MooX-late-0.015.tar.gz;
+      sha256 = "175326af3076fa8698669f289fad1322724978cddaf40ea04e600fcd7f6afbbf";
+    };
+    buildInputs = [ TestFatal TestRequires ];
+    propagatedBuildInputs = [ Moo TypeTiny ];
+    meta = {
+      homepage = https://metacpan.org/release/MooX-late;
+      description = "Easily translate Moose code to Moo";
+      license = "perl";
+    };
+  };
+
   MouseXSimpleConfig = buildPerlPackage {
     name = "MouseX-SimpleConfig-0.11";
     src = fetchurl {