Commit graph

374 commits

Author SHA1 Message Date
github-actions d9c59b40fb [CI] Auto update instances 2021-12-11 00:37:01 +00:00
github-actions d97f3bf95a [CI] Auto update instances 2021-12-10 00:39:21 +00:00
github-actions f887ad0400 [CI] Auto update instances 2021-12-09 00:38:35 +00:00
Ben Busby 98e1083162
Fix missing slash in scribe test path 2021-12-08 16:36:00 -07:00
github-actions 50f449edfe [CI] Auto update instances 2021-12-08 00:40:20 +00:00
Ben Busby 44dc66b7d4
Add new whoogle instance (search.sethforprivacy.com)
https://blog.sethforprivacy.com/about/#privacy-preserving-front-ends-and-tools
2021-12-06 20:41:20 -07:00
Ben Busby 47b6d4abc3
Add scribe to supported services
scribe (https://https://git.sr.ht/~edwardloveall/scribe) is an
alternative frontend for Medium.
2021-12-06 20:15:49 -07:00
github-actions 614cf3daec [CI] Auto update instances 2021-12-06 00:39:51 +00:00
github-actions 417fbdf07c [CI] Auto update instances 2021-12-05 00:40:57 +00:00
github-actions 69706a0754 [CI] Auto update instances 2021-12-04 00:37:47 +00:00
github-actions 69faa2bdea [CI] Auto update instances 2021-12-03 00:37:39 +00:00
github-actions c2d4335ce8 [CI] Auto update instances 2021-12-02 00:37:27 +00:00
Ben Busby ec68582585
whoogle: Remove inactive instances, fix test url
The default url redirects to a session validation url first (w/ status
code 307). Disabling cookies by default allows a 200 code to be returned
for successful searches.
2021-11-29 17:35:28 -07:00
Ben Busby f36741b27b
Add official whoogle fosshost instance to services 2021-11-29 16:32:03 -07:00
Ben Busby 04388fcf3c
Use format str for search engine queries
Although the current list of queries is only 2 elements ("time" and
"weather"), this allows searches for Whoogle and Searx to be slightly
more random, and potentially avoid any issues with their parent engine
rate limiting them.
2021-11-29 16:31:55 -07:00
Ben Busby 8e3455a790
Automate updates for list of searx instances (#3)
* Create nightly update workflow for instances

A nightly GitHub Actions CI workflow has been added to fetch new
instances of supported services within Farside.

Currently only Searx is supported, but obviously others could be added
if there are similarly easy ways to fetch and filter instances
programmatically.

services.json has also been updated with the initial results of the
workflow script.

* Set headers for every HTTPoison request

This serves as a workaround for bot blocking via filtron.

* Expand filtering of searx instances

New filter enforces:
- No Cloudflare
- Good TLS config
- Good HTTP header config
- Vanilla instances or forks
- Instances with 100% search success
2021-11-26 09:12:46 -07:00
Albony Cal a22c02df70
Added my libreddit instance
I also host a libreddit instance, I just noticed that you created this thing, cool ;)
2021-11-24 09:10:37 +05:30
Ben Busby 365bb4eb28
Update searx instances
Should probably consider automating this at some point, but each instance
seemingly lists their public instances in a different format. Also don't really
want to mess with readme scraping. Idk, I'll think about it.
2021-11-18 18:25:09 -07:00
Ben Busby 46a905d258
Add searx instances to services.json 2021-11-15 17:51:29 -07:00
Ben Busby adbdd64b8c
Add whoogle instances to services.json
Whoogle is now eligible for Farside links. I haven't decided how I'd
like this implemented yet though. My idea is actually to refactor part
of Whoogle to work a bit better with this new "instance hopping"
paradigm -- namely, I'd like the config settings to be easily turned
into query params and appended to a farside link when a user's preferred
instance is blocked.
2021-11-15 17:18:12 -07:00
Ben Busby 56b9c52528
Display list of available instances on home page
This introduces a number of new changes:
- Services are now inserted into redis with a prefix prepended to the
key name. This allows for easier filtering to get only live instances.
- The home page now uses an eex template for displaying all live
instances for every service, determined by the last update
- A "last_updated" field was added
- farside.ex was added to contain all functionality related to querying
for instances (WIP)
- Other improvements
2021-11-08 17:08:19 -07:00
Ben Busby 06bb8403dd
Include protocol in service list
This circumvents the redirect encountered when sending a request to a
service without a specified protocol.
2021-11-07 12:28:06 -07:00
Ben Busby d7a425509e
Update services.json 2021-10-24 13:36:14 -06:00
Ben Busby 4949ae22bb
Output available instances and fallback URL to redis
Once a list of available URLs has been determined for a particular
service, the list is written as "service -> [list of instances]" to a
local redis connection. These can then be used in the greater routing
logic to pick a random instance from the list, or use a fallback
instance if none are determined to be available.
2021-10-22 17:15:40 -06:00