summaryrefslogtreecommitdiffstats
path: root/lass
diff options
context:
space:
mode:
Diffstat (limited to 'lass')
-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 ];
+ };
+})