diff options
| -rw-r--r-- | config/services/web/searx/default.nix | 45 | ||||
| -rw-r--r-- | tests/configuration.nix | 5 | ||||
| -rwxr-xr-x | tests/run-tests.sh | 57 |
3 files changed, 60 insertions, 47 deletions
diff --git a/config/services/web/searx/default.nix b/config/services/web/searx/default.nix index 6681366..9810ab4 100644 --- a/config/services/web/searx/default.nix +++ b/config/services/web/searx/default.nix @@ -1,12 +1,14 @@ { config, - lib, + # lib, pkgs, ... }: let - cfg = config.services.searx; + # cfg = config.services.searx; + redirectTo = "searx.tiekoetter.com"; + preferences = "eJx1WcuS67gN_Zp4o5quO7mTpLLwKpXMD8xeRZGwhCuKUPNhW_31AakXaboX7bYOKBAEQLwshYeeLIK79mDACn3RwvRB9HAVwdNFkxQarmAuN3FHSaa14EjfwV57ol7DZQI_kLr--d-_Lk7cwIGwcrj-uPgBJrg6nGZexC8F7V3L7xt4tF501_8J7eCiCE-OJPjxg2x_WV9rnV94cyXseJFgPNhWaOzNxN-39z8D2KVF03r0vPQvG-CyihD3kuvxltaBBulX8kB-hMVd7zhdgtXtjewkvEfTX2cL3i8XhU50GlQLpkfDuvn5zx8b03ZT09_-_p8DbO6ogFzbrv-Z9O9e9G3rSKLQzQQKBYNC3oLJFrFen8IoiyLnKvTMWzYaTXg2s5Ajm4JZo480Y4Rr4pZ4h7a9oYbEyDhmwXpND_PYTGgt2eMlwWZTYns0-CTXPHDEnW49Sv4-xY34uWOZpJjmtp2CQ5kQVCGXMQHN-kbxZoRHgbd9sw41xr_s1B3rueDFz7UCO_RyCB5KqAtyBL_znruCj1fY96dSaAbDPuUgEzBiUetsGolgJDCWrPMhpfxQ-W5ygNtI0eDEjmwjYsk5C7f8ZcYe6o7s0ZkkC8wvj7WqIhgNdphNAXyxex86V-C88OjO_RXcURjP5sr4KNU3Cm5o0CMZl--riJVlmyF0m8JY5kVqqh0Z-BSozp2icyjhC7dUrPr411N9mIxWGTKjPUDEDc59xMx3vJnEzC_wZ5Rkol84R4ucq_hiwgKFvH6ZyPANgXPV78_z-01ZiudJp2bdKD8IP3E0ymS-aZSjzQEL0Di6-Yew0Ci0HC9i5Ni4WDQjivye3JYl01kP-DVwRMoRg8GdFu05QIndFvxwGmZ9aCSp7EDxqQPbn2uA3ZSm_ZlIWRAq3zDF41xRK9JI9w6tzLjhhVtuWGXWDZ-1WJqJ-AbkRI6mYGPki_ki32EQnRXxYzvEIKKLrhuuQLyb6Zu0zMR9IO2U7XDpAXUzk_OHlEPoOU73NyH3FRnSRFd24N0bkuMAe0RXnFR3ahOnPuT-gUZkR2QntXznlnzBJy55oPuFbqCT38j-Jpw7A5SGaVrY6NMU4u2NYrwkjHVFcBzFvqFFLXxHi5w5T74hI1vBLk30CIeZRF-_baRMSNbUvQgEmjrn4cPuWpuU2b-BF3IWxyPGiMkXqtEccU70yTEoqPNeTPQ1YL7D9Jg6nQMm-hH_Zco1834RzCLEKe8k-JrC7l-kFgd5VCetxbQnp5QN-J6f_nEG9p02h44DhdiCa0k_lHVKGmFWA2R2jxDzoUzPa1ZHt2eyWXWQM5-5QuHiZYuJXA7wdQKXh_05BsnsXDM-RcdXsbrTO6G6wHwwTnj3XYJ0zEbRJNCsXM4y42QWuilum0m6zHsZ8Rm4Sst1kYBaos8HJ7FiXQTKqLNC71-tj2KFQmo6TmIuz6AWuH6wJ1NL3vN94CN6gixsrvlwWhz6Ikw6mFHsyfLYzFFPRS2UgFrWFa5kXeEHSM5IZ-5HJ4NzH_PClfR-UaRQavnYw8Oeh2b8bSANFe6APZ_ruMZJpgubG8nFmmFmuQqxd_CN6Jxppiz_0riwP3IwG-Pd3p2YS3ZUnCHtGmN22EcmLIQolJSj26F9EW2DcZxLXFZuLYJDfukWCwUfuvw-H8hRNgnUXBzE-5ot40of8ujxwK64trHg6YhG9woW20fgM1DpJRF0FKys0RlkiurfwKeBGI4Cp1iS12CxfE0mLjncaXkx5oP0zXJg0_NQFm0o_ReZYu20cCXEhU3jLfcNmrOsysm___z5r-dpThUUmPyufJnoGxk7-gUw1kjtVhteqDSVDjNq8uceRtzjNc7CfwRqfitcsFuhOkCEbulh2jPWDGBf_CilRt5_jLX8A7rcxYQsLBCfa2Fs4JyVc3yQVQbHzKD0xJEMB93GLYbMMkF-x8jHQjUe_CVb37mUTc3gJv1DaD3wOU22e_SKiXuAwie8tx-Y2Y6T1b3whAR81F1cguuOLMGFujkBnnXAegm4Z9vbM_9H1o3NY__RU5ZxHBgnLdc93MCfMvIhgCs_rhnWBvXoFKxP7RDlp5ZCDkvDzexLlxwbpZfC87aYwst1kKiK1AZPyIt3kzZjM9yDji_FJtYvqZTshNurzPB8pG721B0Jm8ry0oML-MW-_fTMl_7jx485b2X4gqapS1amswTmq7jnX2KOxVcR3x_IAZce7i34JugfpDpnHaTC-h778pQJKNdw9TUaNL8K0W5cV3Xsxe-w8vUDrdtK6jlsFO68QW_a043wHZNyTx2ez5LxitR8N7xiu-EFVyvWsHJytaDjuKtQgnC-o6I4mi3eOeA8XtSVwW9qvoxY132kOA27vA2_hyHcc-4JqPmucB1d02hvCGk8VxzwxGtmopNmGeDlnbXc8qREEXPR3Ci1ajkYSyhDWLrgPhaooFqCnVAdaCe8eHKU7AugFpfBcq1YqF5Vjlx8cGM9iDnRN-KetFrik1YIEgx1XhgMRcqW-sdn_vyMga7Q9xhGKJLJSF8Tr7r78s4aleL7GeYPqJb_JFXin6RUxuUjk3lYisp0LVpTL17Xsgy_q2ZPYh3aMmKhOXQvVc2M8hfn-Kyxc57k6IyYM2igGW9Lk0hZVhO9wVs82JFe4M0YjkG5DQL2WTw3ocUcep2Y8Wfcwu5pSAxTGpiZ2KWmbMmOsA6QiznvE-8vZec-a3sZx9Y1QUQLBckQK_-yNDpnfd9MDl9CYEYph06xTdsHP-cM69uJVZpCsVIyR0TDNkYKubEzbHew2MLDUQgXVSzHYlJkvhm_HGSOpQN3N_WK2Pc7bwH8FF1k7-XjWKsTS95HBaNeRiLslnIkrmVvmh67-dwYOg6mYS-gwgw2uGPWcTZ0ZZam5GWHb6S26nSw45eOWQd2MXc9XG4HpNAysHZorf_1rY3ROKV7rmBjd7Hu0soB5JiCDvqWSxYW3ydnjyra2MUncp57iHUeL9r1958HV4KJj00TwTb-LGO5TWEeF-4_WZPX_wOTTg3n"; in { imports = [ @@ -14,23 +16,34 @@ in ./limiter.nix ]; - services.nginx.virtualHosts."searx.aristote.fr" = lib.mkIf (cfg.enable && cfg.configureNginx) { - locations."/" = { - extraConfig = '' - proxy_set_header Host $host; - proxy_set_header Connection $http_connection; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Scheme $scheme; - # proxy_set_header X-Script-Name /; - ''; - }; + services.nginx.virtualHosts.searx = { + serverName = "searx.${config.networking.domain}"; forceSSL = true; enableACME = true; + extraConfig = '' + rewrite ^/static(.*) https://${redirectTo}/static$1 permanent; + rewrite ^/search(.*) https://${redirectTo}/search?preferences=${preferences}&$1 permanent; + rewrite ^/(.*) https://${redirectTo}/search?preferences=${preferences}&$1; + ''; }; + # services.nginx.virtualHosts."searx.aristote.fr" = lib.mkIf (cfg.enable && cfg.configureNginx) { + # locations."/" = { + # extraConfig = '' + # proxy_set_header Host $host; + # proxy_set_header Connection $http_connection; + # proxy_set_header X-Real-IP $remote_addr; + # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + # proxy_set_header X-Scheme $scheme; + # # proxy_set_header X-Script-Name /; + # ''; + # }; + # forceSSL = true; + # enableACME = true; + # }; + services.searx = { - enable = true; + # enable = true; package = pkgs.searxng; configureNginx = true; @@ -81,7 +94,7 @@ in }; systemd.services = { - searx-init.personal.monitor = true; - uwsgi.personal.monitor = true; + # searx-init.personal.monitor = true; + # uwsgi.personal.monitor = true; }; } diff --git a/tests/configuration.nix b/tests/configuration.nix index ef9476d..5ab52d1 100644 --- a/tests/configuration.nix +++ b/tests/configuration.nix @@ -42,7 +42,7 @@ in services.resolved.enable = lib.mkForce false; - services.searx.settings.server.limiter = lib.mkForce false; + # services.searx.settings.server.limiter = lib.mkForce false; services.rss-bridge.debug = true; @@ -50,7 +50,8 @@ in services.nginx.virtualHosts = { quentin = nginxMakeLocal 8080; - "searx.aristote.fr" = nginxMakeLocal 8081; + "searx" = nginxMakeLocal 8081; + # "searx.aristote.fr" = nginxMakeLocal 8081; rss = nginxMakeLocal 8082; webkeydirectory = nginxMakeLocal 8083; mesh = nginxMakeLocal 8084; diff --git a/tests/run-tests.sh b/tests/run-tests.sh index 77fabd6..ca931bc 100755 --- a/tests/run-tests.sh +++ b/tests/run-tests.sh @@ -32,12 +32,11 @@ do URL="http://$IP:${PORTS[$SERVICE]}/" echo Checking connection to container version of $SERVICE.aristote.fr ... RESULT=$(curl "$URL" $CURL_FLAGS --output /dev/null --write-out '%{http_code}\n') - if [[ ! "$RESULT" = 200 ]] - then - echo "Connection failed." - else - echo "Up and running at $URL !" - fi + case "$RESULT" in + 200) echo "Up and running at $URL !";; + 301) echo "Redirected.";; + *) echo "Connection failed.";; + esac done echo Checking connection to container version of mesh.aristote.fr ... URL="http://$IP:8084/health" @@ -88,29 +87,29 @@ done echo Done. -echo -echo Checking custom Searx engines: -declare -A QUERIES -QUERIES[alternativeto]=Searx -QUERIES[nlab]='Kan%20extension' -QUERIES[wfr]=Paris -QUERIES[wen]=Paris -for ENGINE in "${!QUERIES[@]}" -do - echo Checking engine $ENGINE ... - REQUEST_URL="http://$IP:${PORTS[searx]}/search?q=${QUERIES[$ENGINE]}+!$ENGINE&format=json" - JSON_RESULT=$(curl "$REQUEST_URL" $CURL_FLAGS) - RESULTS=$(echo $JSON_RESULT | jq '.results') - UNRESPONSIVE_ENGINES=$(echo $JSON_RESULT | jq '.unresponsive_engines') - if [[ ! "$UNRESPONSIVE_ENGINES" = '[]' ]] - then - echo "Engine not responsive." - elif [[ "$RESULTS" = [] ]] - then - echo "No results found." - fi -done -echo Done. +# echo +# echo Checking custom Searx engines: +# declare -A QUERIES +# QUERIES[alternativeto]=Searx +# QUERIES[nlab]='Kan%20extension' +# QUERIES[wfr]=Paris +# QUERIES[wen]=Paris +# for ENGINE in "${!QUERIES[@]}" +# do +# echo Checking engine $ENGINE ... +# REQUEST_URL="http://$IP:${PORTS[searx]}/search?q=${QUERIES[$ENGINE]}+!$ENGINE&format=json" +# JSON_RESULT=$(curl "$REQUEST_URL" $CURL_FLAGS) +# RESULTS=$(echo $JSON_RESULT | jq '.results') +# UNRESPONSIVE_ENGINES=$(echo $JSON_RESULT | jq '.unresponsive_engines') +# if [[ ! "$UNRESPONSIVE_ENGINES" = '[]' ]] +# then +# echo "Engine not responsive." +# elif [[ "$RESULTS" = [] ]] +# then +# echo "No results found." +# fi +# done +# echo Done. echo read -n1 -srp "Press any key to stop the server." |
