40 lines
837 B
Nix
40 lines
837 B
Nix
{ config, pkgs, lib, ... }:
|
|
let
|
|
cfg = config.services.searx;
|
|
domain = "search.home.feal.no";
|
|
in {
|
|
services.searx = {
|
|
enable = true;
|
|
environmentFile = config.sops.secrets."searx/envfile".path;
|
|
settings = {
|
|
server = {
|
|
secret_key = "@SEARX_SECRET_KEY@";
|
|
base_url = "http://${domain}";
|
|
};
|
|
};
|
|
|
|
runInUwsgi = true;
|
|
uwsgiConfig = {
|
|
socket = "/run/searx/searx.sock";
|
|
chmod-socket = "660";
|
|
};
|
|
|
|
redisCreateLocally = true;
|
|
};
|
|
|
|
sops.secrets."searx/envfile" = {
|
|
owner = "searx";
|
|
group = "searx";
|
|
};
|
|
|
|
users.groups."searx".members = [ "nginx" ];
|
|
|
|
services.nginx.virtualHosts."${domain}" = {
|
|
locations."/".extraConfig = ''
|
|
include ${config.services.nginx.package}/conf/uwsgi_params;
|
|
uwsgi_pass unix:${cfg.uwsgiConfig.socket};
|
|
'';
|
|
};
|
|
}
|
|
|