From c57ce3c8e69a301f67f105641d26b3cf9b4bb9e3 Mon Sep 17 00:00:00 2001 From: klea Date: Sat, 10 Jan 2026 01:04:48 +0000 Subject: pkgs: move pywikibot to it's own pywikibotPackages --- pkgs/default.nix | 4 +-- pkgs/pywb/default.nix | 33 ------------------ pkgs/pywikibot-scripts/default.nix | 40 ---------------------- pkgs/pywikibot-scripts/setup.py | 19 ---------- pkgs/pywikibot/default.nix | 7 ---- pkgs/pywikibotPackages/default.nix | 11 ++++++ pkgs/pywikibotPackages/pywb/default.nix | 33 ++++++++++++++++++ .../pywikibot-scripts/default.nix | 40 ++++++++++++++++++++++ pkgs/pywikibotPackages/pywikibot-scripts/setup.py | 19 ++++++++++ pkgs/pywikibotPackages/pywikibot/default.nix | 7 ++++ pkgs/shell/default.nix | 9 +++-- 11 files changed, 115 insertions(+), 107 deletions(-) delete mode 100644 pkgs/pywb/default.nix delete mode 100644 pkgs/pywikibot-scripts/default.nix delete mode 100644 pkgs/pywikibot-scripts/setup.py delete mode 100644 pkgs/pywikibot/default.nix create mode 100644 pkgs/pywikibotPackages/default.nix create mode 100644 pkgs/pywikibotPackages/pywb/default.nix create mode 100644 pkgs/pywikibotPackages/pywikibot-scripts/default.nix create mode 100644 pkgs/pywikibotPackages/pywikibot-scripts/setup.py create mode 100644 pkgs/pywikibotPackages/pywikibot/default.nix diff --git a/pkgs/default.nix b/pkgs/default.nix index 4ab64e2..12db68a 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -4,9 +4,7 @@ lib.makeScope newScope (self: { /*example = self.call Package ./example { };*/ - pywikibot-scripts = self.callPackage ./pywikibot-scripts { }; - pywikibot = self.callPackage ./pywikibot { }; - pywb = self.callPackage ./pywb { }; + pywikibotPackages = self.callPackage ./pywikibotPackages { }; wikiteam = self.callPackage ./wikiteam { }; warcPackages = self.callPackage ./warcPackages { }; diff --git a/pkgs/pywb/default.nix b/pkgs/pywb/default.nix deleted file mode 100644 index 604f92e..0000000 --- a/pkgs/pywb/default.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ lib -, writeShellApplication -, python3 -, pywikibot-scripts -, pywikibot -}: - -writeShellApplication { - name = "pywb"; - text = '' - pwbs="${pywikibot-scripts}/${python3.sitePackages}/scripts" - cmd="''${1:-}"; shift - if [ -z "$cmd" ]; then - echo "not specified command to run" >&2 - exit 2 - fi - if [ -f "$pwbs/$cmd.py" ]; then - exec "${pywikibot}/bin/pwb" "$pwbs/$cmd" "$@" - elif [ -f "$pwbs/$cmd" ]; then - exec "${pywikibot}/bin/pwb" "$pwbs/$cmd" "$@" - else - if [ "$cmd" = "__get_path" ]; then - echo "$pwbs" - exit - elif [ "$cmd" = "--ls" ]; then - ls "$pwbs" "$@" - exit - fi - echo "$cmd not found in pywkibot's scripts folder (make sure it doesn't end in .py)" >&2 - exit 1 - fi - ''; -} diff --git a/pkgs/pywikibot-scripts/default.nix b/pkgs/pywikibot-scripts/default.nix deleted file mode 100644 index 1d12d42..0000000 --- a/pkgs/pywikibot-scripts/default.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ - lib, - fetchgit, - python3, - python3Packages, - stdenv, -}: - -python3Packages.buildPythonPackage rec { - pname = "scripts"; - version = "10.7.0"; - pyproject = true; - build-system = [ python3Packages.setuptools ]; - - disabled = python3Packages.pythonOlder "3.8"; - - src = fetchgit { - url = "https://gerrit.wikimedia.org/r/pywikibot/core"; - rev = "f1b4b4d0cfbc199c36fb72570425328daa93b067"; - fetchSubmodules = true; - hash = "sha256-L/Yz9yidpTV7WCqHs2L6lFw/CpQyZ1UNd+NpMLJT0Hs="; - }; - - postPatch = '' - rm pyproject.toml setup.py - cp ${./setup.py} ./setup.py - ''; - - doCheck = false; - - pythonImportsCheck = [ "scripts" "scripts.i18n" ]; - - meta = { - description = "Python MediaWiki bot framework scripts"; - homepage = "https://www.mediawiki.org/wiki/Manual:Pywikibot"; - changelog = "https://doc.wikimedia.org/pywikibot/master/changelog.html"; - license = lib.licenses.mit; - #maintainers = with lib.maintainers; [ ]; - }; -} diff --git a/pkgs/pywikibot-scripts/setup.py b/pkgs/pywikibot-scripts/setup.py deleted file mode 100644 index b37eb2e..0000000 --- a/pkgs/pywikibot-scripts/setup.py +++ /dev/null @@ -1,19 +0,0 @@ -from setuptools import setup - -setup(**{ - 'name': 'scripts', - 'version': '0.0.0', - 'description': 'Scripts from pywikibot', - 'long_description': None, - 'author': None, - 'author_email': None, - 'maintainer': None, - 'maintainer_email': None, - 'url': None, - 'packages': ['scripts', 'scripts.i18n'], - 'package_data': {'': ['*'], 'scripts.i18n': ['*.json', '*/*.json']}, - 'install_requires': [], - 'entry_points': {}, - 'python_requires': '', - 'include_package_data': True, -}) diff --git a/pkgs/pywikibot/default.nix b/pkgs/pywikibot/default.nix deleted file mode 100644 index 55aac46..0000000 --- a/pkgs/pywikibot/default.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ python3Packages -, pywikibot-scripts -}: - -python3Packages.pywikibot.overridePythonAttrs (old: { - propagatedBuildInputs = (old.propagatedBuildInputs or []) ++ [ pywikibot-scripts ]; -}) diff --git a/pkgs/pywikibotPackages/default.nix b/pkgs/pywikibotPackages/default.nix new file mode 100644 index 0000000..9e22141 --- /dev/null +++ b/pkgs/pywikibotPackages/default.nix @@ -0,0 +1,11 @@ +{ lib, newScope }: + +lib.makeScope newScope (self: { + + /*example = self.call Package ./example { };*/ + + pywikibot-scripts = self.callPackage ./pywikibot-scripts { }; + pywikibot = self.callPackage ./pywikibot { }; + pywb = self.callPackage ./pywb { }; + +}) diff --git a/pkgs/pywikibotPackages/pywb/default.nix b/pkgs/pywikibotPackages/pywb/default.nix new file mode 100644 index 0000000..604f92e --- /dev/null +++ b/pkgs/pywikibotPackages/pywb/default.nix @@ -0,0 +1,33 @@ +{ lib +, writeShellApplication +, python3 +, pywikibot-scripts +, pywikibot +}: + +writeShellApplication { + name = "pywb"; + text = '' + pwbs="${pywikibot-scripts}/${python3.sitePackages}/scripts" + cmd="''${1:-}"; shift + if [ -z "$cmd" ]; then + echo "not specified command to run" >&2 + exit 2 + fi + if [ -f "$pwbs/$cmd.py" ]; then + exec "${pywikibot}/bin/pwb" "$pwbs/$cmd" "$@" + elif [ -f "$pwbs/$cmd" ]; then + exec "${pywikibot}/bin/pwb" "$pwbs/$cmd" "$@" + else + if [ "$cmd" = "__get_path" ]; then + echo "$pwbs" + exit + elif [ "$cmd" = "--ls" ]; then + ls "$pwbs" "$@" + exit + fi + echo "$cmd not found in pywkibot's scripts folder (make sure it doesn't end in .py)" >&2 + exit 1 + fi + ''; +} diff --git a/pkgs/pywikibotPackages/pywikibot-scripts/default.nix b/pkgs/pywikibotPackages/pywikibot-scripts/default.nix new file mode 100644 index 0000000..1d12d42 --- /dev/null +++ b/pkgs/pywikibotPackages/pywikibot-scripts/default.nix @@ -0,0 +1,40 @@ +{ + lib, + fetchgit, + python3, + python3Packages, + stdenv, +}: + +python3Packages.buildPythonPackage rec { + pname = "scripts"; + version = "10.7.0"; + pyproject = true; + build-system = [ python3Packages.setuptools ]; + + disabled = python3Packages.pythonOlder "3.8"; + + src = fetchgit { + url = "https://gerrit.wikimedia.org/r/pywikibot/core"; + rev = "f1b4b4d0cfbc199c36fb72570425328daa93b067"; + fetchSubmodules = true; + hash = "sha256-L/Yz9yidpTV7WCqHs2L6lFw/CpQyZ1UNd+NpMLJT0Hs="; + }; + + postPatch = '' + rm pyproject.toml setup.py + cp ${./setup.py} ./setup.py + ''; + + doCheck = false; + + pythonImportsCheck = [ "scripts" "scripts.i18n" ]; + + meta = { + description = "Python MediaWiki bot framework scripts"; + homepage = "https://www.mediawiki.org/wiki/Manual:Pywikibot"; + changelog = "https://doc.wikimedia.org/pywikibot/master/changelog.html"; + license = lib.licenses.mit; + #maintainers = with lib.maintainers; [ ]; + }; +} diff --git a/pkgs/pywikibotPackages/pywikibot-scripts/setup.py b/pkgs/pywikibotPackages/pywikibot-scripts/setup.py new file mode 100644 index 0000000..b37eb2e --- /dev/null +++ b/pkgs/pywikibotPackages/pywikibot-scripts/setup.py @@ -0,0 +1,19 @@ +from setuptools import setup + +setup(**{ + 'name': 'scripts', + 'version': '0.0.0', + 'description': 'Scripts from pywikibot', + 'long_description': None, + 'author': None, + 'author_email': None, + 'maintainer': None, + 'maintainer_email': None, + 'url': None, + 'packages': ['scripts', 'scripts.i18n'], + 'package_data': {'': ['*'], 'scripts.i18n': ['*.json', '*/*.json']}, + 'install_requires': [], + 'entry_points': {}, + 'python_requires': '', + 'include_package_data': True, +}) diff --git a/pkgs/pywikibotPackages/pywikibot/default.nix b/pkgs/pywikibotPackages/pywikibot/default.nix new file mode 100644 index 0000000..55aac46 --- /dev/null +++ b/pkgs/pywikibotPackages/pywikibot/default.nix @@ -0,0 +1,7 @@ +{ python3Packages +, pywikibot-scripts +}: + +python3Packages.pywikibot.overridePythonAttrs (old: { + propagatedBuildInputs = (old.propagatedBuildInputs or []) ++ [ pywikibot-scripts ]; +}) diff --git a/pkgs/shell/default.nix b/pkgs/shell/default.nix index 1527952..7d19eb1 100644 --- a/pkgs/shell/default.nix +++ b/pkgs/shell/default.nix @@ -8,8 +8,7 @@ mkShellNoCC, python3, python3Packages, - pywb, - pywikibot, + pywikibotPackages, warcPackages, websocat, wikiteam, @@ -22,10 +21,10 @@ mkShellNoCC { (python3.withPackages (p: [ p.requests p.lxml - pywikibot + pywikibotPackages.pywikibot ])) - pywikibot - pywb + pywikibotPackages.pywikibot + pywikibotPackages.pywb websocat # connect to websocket jq libfaketime # used by my fossil script -- cgit v1.3.1-10-gc9f91