diff --git a/pkgs/development/python-modules/pycotap/default.nix b/pkgs/development/python-modules/pycotap/default.nix new file mode 100644 index 0000000000000..f9a3b8acd6193 --- /dev/null +++ b/pkgs/development/python-modules/pycotap/default.nix @@ -0,0 +1,19 @@ +{ stdenv, fetchPypi, python }: + +python.pkgs.buildPythonPackage rec { + pname = "pycotap"; + version = "1.2.2"; + + src = fetchPypi { + inherit pname version; + sha256 = "f938ecd4931ccd19d9598fb633d5eabb7938f08b84717315e52526aa6277c9ec"; + }; + + meta = with stdenv.lib; { + homepage = "https://el-tramo.be/pycotap"; + description = "A tiny test runner that outputs TAP results to standard output"; + license = licenses.mit; + maintainers = with maintainers; [ genesis ]; + }; + +} diff --git a/pkgs/development/python-modules/pysol_cards/default.nix b/pkgs/development/python-modules/pysol_cards/default.nix new file mode 100644 index 0000000000000..b488d7a78ea87 --- /dev/null +++ b/pkgs/development/python-modules/pysol_cards/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchPypi, python }: + +python.pkgs.buildPythonPackage rec { + pname = "pysol_cards"; + version = "0.8.8"; + + src = fetchPypi { + inherit pname version; + sha256 = "0w0waj7r1kqlpic6g3pyg4208i393gc0zxb6n6k0vqhm6nivdcs5"; + }; + + propagatedBuildInputs = with python.pkgs; [ pbr random2 six ]; + + ## Need to fix test deps, relies on stestr and a few other packages that aren't available on nixpkgs + #checkInputs = with python.pkgs; [ pbr testtools stestr ]; + doCheck = false; + + meta = with stdenv.lib; { + homepage = "https://github.com/shlomif/pysol_cards"; + description = "Allow the python developer to generate the initial deals of some PySol FC games"; + license = licenses.mit; # expat version + maintainers = with maintainers; [ genesis ]; + }; + +} diff --git a/pkgs/games/pysolfc/default.nix b/pkgs/games/pysolfc/default.nix index 48c06c0eab638..6d9b9d5a5e79a 100644 --- a/pkgs/games/pysolfc/default.nix +++ b/pkgs/games/pysolfc/default.nix @@ -1,13 +1,13 @@ { stdenv, fetchzip, buildPythonApplication, python3Packages - , desktop-file-utils, freecell-solver }: +, freecell-solver }: buildPythonApplication rec { pname = "PySolFC"; - version = "2.6.4"; + version = "2.8.0"; src = fetchzip { url = "https://versaweb.dl.sourceforge.net/project/pysolfc/PySolFC/PySolFC-${version}/PySolFC-${version}.tar.xz"; - sha256 = "1bd84law5b1yga3pryggdvlfvm0l62gci2q8y3q79cysdk3z4w3z"; + sha256 = "01j7lyp7hbybmvph2ww67a6jp455a5ln7pzbs9d1762r323yz5sy"; }; cardsets = fetchzip { @@ -15,30 +15,23 @@ buildPythonApplication rec { sha256 = "0h0fibjv47j8lkc1bwnlbbvrx2nr3l2hzv717kcgagwhc7v2mrqh"; }; + postPatch = '' + sed -i s:/usr/share/PySolFC:$out/share/PySolFC: pysollib/settings.py + ''; + + dontUseSetuptoolsCheck = true; + propagatedBuildInputs = with python3Packages; [ - tkinter six random2 - # optional : + attrs configobj six random2 pysol_cards pycotap tkinter + # optional : pygame freecell-solver pillow ]; - patches = [ - ./pysolfc-datadir.patch - ]; - - nativeBuildInputs = [ desktop-file-utils ]; - postPatch = '' - desktop-file-edit --set-key Icon --set-value ${placeholder "out"}/share/icons/pysol01.png data/pysol.desktop - desktop-file-edit --set-key Comment --set-value "${meta.description}" data/pysol.desktop - ''; - postInstall = '' mkdir $out/share/PySolFC/cardsets cp -r $cardsets/* $out/share/PySolFC/cardsets ''; - # No tests in archive - doCheck = false; - meta = with stdenv.lib; { description = "A collection of more than 1000 solitaire card games"; homepage = https://pysolfc.sourceforge.io; diff --git a/pkgs/games/pysolfc/pysolfc-datadir.patch b/pkgs/games/pysolfc/pysolfc-datadir.patch deleted file mode 100644 index d9f1cf4e09f50..0000000000000 --- a/pkgs/games/pysolfc/pysolfc-datadir.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff --git a/pysollib/util.py b/pysollib/util.py -index 8de3f00..26f4bc7 100644 ---- a/pysollib/util.py -+++ b/pysollib/util.py -@@ -110,13 +110,7 @@ class DataLoader: - head, tail = os.path.split(argv0) - if not head: - head = os.curdir -- # dir where placed startup script -- path.append(head) -- path.append(os.path.join(head, "data")) -- path.append(os.path.join(head, os.pardir, "data")) -- # dir where placed pysol package -- path.append(os.path.join(sys.path[0], "data")) -- path.append(os.path.join(sys.path[0], "pysollib", "data")) -+ path.append(os.path.join(head, "..", "share", "PySolFC")) - # from settings.py - path.extend(DATA_DIRS) - # check path for valid directories diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1e3510d004b09..73f386d998e85 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4978,6 +4978,8 @@ in { pycosat = callPackage ../development/python-modules/pycosat { }; + pycotap = callPackage ../development/python-modules/pycotap { }; + pycryptopp = callPackage ../development/python-modules/pycryptopp { }; pyct = callPackage ../development/python-modules/pyct { }; @@ -5128,6 +5130,8 @@ in { pysocks = callPackage ../development/python-modules/pysocks { }; + pysol_cards = callPackage ../development/python-modules/pysol_cards { }; + python_fedora = callPackage ../development/python-modules/python_fedora {}; python-simple-hipchat = callPackage ../development/python-modules/python-simple-hipchat {};