blob: 03cf180cb44c5cc4775ab575397c307cee2294d9 (
plain) (
tree)
|
|
# sear.c
sear.c is used as a lightweight replacement for [SearX](https://en.wikipedia.org/wiki/Searx) that proxies and caches search results
from the Google web search engine. The main advantages over SearX are speed and simplicity.
## instructions for debian and ubuntu systems
First add my software distribution repository [prog.sijanec.eu](https://prog.sijanec.eu) into your APT sources list.
```
apt install sear.c
service sear.c start
```
## requirements
* a POSIX system
* GNU C library
* GNU compiler collection (it's written in GNU C - it uses anonymous functions)
* GNU Make
* libxml2-dev (for the simple HTML/1.0 client and HTML parser)
* libmicrohttpd-dev (for serving results - use a reverse proxy, such as nginx, for HTTPS)
* xxd (for converting HTML pages into C arrays when compiling from source)
## compiling from source
```
make prepare
make
```
## instructions
* run the daemon - it starts listening on HTTP port 7327 (remember it by picturing phone keyboard buttons with letters SEAR (; )
* optional: create a reverse proxy for HTTPS
* navigate to [http://localhost:7327](http://localhost:7327) and do a couple of searches to see if everything works
* the horseshoe button redirects directly to the first result without wasting time on the results page. use if you feel lucky. (BP)
* check logs by navigating to /logs.html
## a word about public instances
It's not recommended to run a public instance of sear.c yet, as google likes to prevent spam by using a captcha.
It's expected that I'll write a simple captcha forwarder so that users of public instances will solve captchas that are presented and keep the instance healthy.
Currently it's recommended to run private instances, protected by a password using a reverse HTTP proxy.
|