From db670fc172973db9cfdf5c1933b6c7102dfcce3f Mon Sep 17 00:00:00 2001 From: colin Date: Fri, 13 Jan 2023 06:32:59 +0000 Subject: [PATCH] package feedsearch-crawler --- pkgs/feedsearch-crawler/default.nix | 48 +++++++++++++++++++++++++++++ pkgs/overlay.nix | 1 + 2 files changed, 49 insertions(+) create mode 100644 pkgs/feedsearch-crawler/default.nix diff --git a/pkgs/feedsearch-crawler/default.nix b/pkgs/feedsearch-crawler/default.nix new file mode 100644 index 00000000..bdcf261b --- /dev/null +++ b/pkgs/feedsearch-crawler/default.nix @@ -0,0 +1,48 @@ +{ lib +, fetchFromGitHub +, python3 +}: + +python3.pkgs.buildPythonApplication rec { + pname = "feedsearch-crawler"; + version = "2022-05-28"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "DBeath"; + repo = "feedsearch-crawler"; + rev = "f49a6f5a07e796e359c4482fd29305b1a019f71f"; + hash = "sha256-pzvyeXzqdi8pRjk2+QjKhJfgtxbgVT6C08K9fhVFVmY="; + }; + + nativeBuildInputs = with python3.pkgs; [ + poetry-core + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'w3lib = "^1.22.0"' 'w3lib = "*"' \ + --replace 'aiodns = "^2.0.0"' 'aiodns = "*"' \ + --replace 'uvloop = "^0.15.2"' 'uvloop = "*"' + ''; + + propagatedBuildInputs = with python3.pkgs; [ + aiodns + aiohttp + beautifulsoup4 + brotlipy + cchardet + feedparser + python-dateutil + uvloop + w3lib + yarl + ]; + + meta = with lib; { + homepage = "https://feedsearch.dev"; + description = "Crawl sites for RSS, Atom, and JSON feeds"; + license = licenses.mit; + maintainers = with maintainers; [ colinsane ]; + }; +} diff --git a/pkgs/overlay.nix b/pkgs/overlay.nix index f476092d..d98690d1 100644 --- a/pkgs/overlay.nix +++ b/pkgs/overlay.nix @@ -46,6 +46,7 @@ #### TEMPORARY: PACKAGES WAITING TO BE UPSTREAMED kaiteki = prev.callPackage ./kaiteki { }; + feedsearch-crawler = prev.callPackage ./feedsearch-crawler { }; lightdm-mobile-greeter = prev.callPackage ./lightdm-mobile-greeter { }; browserpass-extension = prev.callPackage ./browserpass-extension { }; gopass-native-messaging-host = prev.callPackage ./gopass-native-messaging-host { };