summaryrefslogtreecommitdiffstats
path: root/lass/5pkgs/searx/default.nix
diff options
context:
space:
mode:
authorlassulus <lassulus@lassul.us>2021-04-20 22:01:35 +0200
committermakefu <github@syntax-fehler.de>2021-05-15 13:11:34 +0200
commit41cee167f6854b6879aa931e668cc80331d7acb0 (patch)
tree5f52aa39c14f2c2eae30e50cb6af533b41769d8f /lass/5pkgs/searx/default.nix
parentf8763674758d50b4ca9042eed218f02819400d63 (diff)
l: searx init at 1.0.0
Diffstat (limited to 'lass/5pkgs/searx/default.nix')
-rw-r--r--lass/5pkgs/searx/default.nix69
1 files changed, 69 insertions, 0 deletions
diff --git a/lass/5pkgs/searx/default.nix b/lass/5pkgs/searx/default.nix
new file mode 100644
index 000000000..e5ce5788a
--- /dev/null
+++ b/lass/5pkgs/searx/default.nix
@@ -0,0 +1,69 @@
+{ lib, nixosTests, python3, python3Packages, fetchFromGitHub, fetchpatch }:
+
+with python3Packages;
+
+toPythonModule (buildPythonApplication rec {
+ pname = "searx";
+ version = "1.0.0";
+
+ # Can not use PyPI because certain test files are missing.
+ src = fetchFromGitHub {
+ owner = "searx";
+ repo = "searx";
+ rev = "v${version}";
+ sha256 = "0ghkx8g8jnh8yd46p4mlbjn2zm12nx27v7qflr4c8xhlgi0px0mh";
+ };
+
+ postPatch = ''
+ sed -i 's/==.*$//' requirements.txt
+ '';
+
+ preBuild = ''
+ export SEARX_DEBUG="true";
+ '';
+
+ propagatedBuildInputs = [
+ Babel
+ certifi
+ dateutil
+ flask
+ flaskbabel
+ gevent
+ grequests
+ jinja2
+ langdetect
+ lxml
+ ndg-httpsclient
+ pyasn1
+ pyasn1-modules
+ pygments
+ pysocks
+ pytz
+ pyyaml
+ requests
+ speaklater
+ werkzeug
+ ];
+
+ # tests try to connect to network
+ doCheck = false;
+ # checkInputs = [
+ # Babel mock nose2 covCore pep8 plone-testing splinter
+ # unittest2 zope_testrunner selenium
+ # ];
+
+ postInstall = ''
+ # Create a symlink for easier access to static data
+ mkdir -p $out/share
+ ln -s ../${python3.sitePackages}/searx/static $out/share/
+ '';
+
+ passthru.tests = { inherit (nixosTests) searx; };
+
+ meta = with lib; {
+ homepage = "https://github.com/searx/searx";
+ description = "A privacy-respecting, hackable metasearch engine";
+ license = licenses.agpl3Plus;
+ maintainers = with maintainers; [ matejc fpletz globin danielfullmer ];
+ };
+})