Changelog
Bit of a curve ball idea I had few weeks ago and decided to actually polish it and merge it in, Degoog now ships with its own mini indexer. If enabled every search you make will get results stored in a local sqlite database, one per engine type you have installed. These indexes can be controlled, polished, curated to create your own real local engine. Your own results will then be aggregated to the actual engine results when searching for something. The idea being for you to end up with your own long term persistent cache that can power offline searches if needed.
If you own a public instance, be weary of how fast your database will fill up and make sure to set some guardrails such as banned words, banned domains, or allowed domains even, if you see fit. You can also be a good samaritan and enable public index downloads for other users to get and use locally for themselves.
Attention
This release changes how 4play works at a core level. You won't need to export a specific port for it, nor you'll need to add curl-impersonate to your docker entrypoint, it'll just work as is. This piece of work also allows degoog to nicely integrate with the ORIGINAL 4play built by lolcat for 4get. You will find a transport for it in the official extension store ❤️
The google images engine will now be compatible with both and you'll be able to switch between them at will. I'll say, the transport for the lolcat/4play is waaaay better, so I'd give it a fair chance.
features
- Add optional indexer to degoog (settings -> server -> enable indexer)
- Every search results index the top
Nresults in a local sqlite database for the type of engine you are searching for (e.g.index-web.dborindex-image.dband so on). - Indexes live as long as you decide to keep them there (they get queued for deletion if you set a max age and get replaced if you set a max number of indexes)
- Degoog only indexes raw results, you can block out domains or ONLY allow whatever domain you want (e.g. only results from instagram.com if you so wish)
- You can allow users to export your indexes if you run public instances, this would allow users to effectively populate their own search engines with your hard earned public indexes, very altruistic and extremely based
- Keep debloating the codebase
- Add loggers to every single empty catch - been wanting to do this for ages, AI was born for these kind of tasks
- Transports can now create websockets points, this should allow stuff like 4play to work internally without too much of a fuss
- Settings now use an actual schema (finally in a place where I can clear some real tech debt, yay!)
- Gandalf won't block private ips anymore
- HMAC for bot prevention moved from
/ping/to/style/to avoid adblockers triggering it by mistake
bugfixes
- Improve UX around the search results when no engines are installed (warn the user and send them to the store) #161
- Improve UX around the search engine tab in settings when no engines are installed (warn the user and send them to the store) #161
- Improve UX around the autocomplete tab in settings when no autocompletes are installed (warn the user and send them to the store) #161