summaryrefslogtreecommitdiff
path: root/.github
AgeCommit message (Collapse)Author
2025-02-25Add missing handling for 4get and LibreY, remove LibreXBen Busby
2025-01-21Rewrite project, add daily update of services listBen Busby
The project was rewritten from Elixir to Go, primarily because: - I don't write Elixir anymore and don't want to maintain a project in a language I no longer write - I already write Go for other projects, including my day job, so it's a safer bet for a project that I want to maintain long term - Go allows me to build portable executables that will make it easier for others to run farside on their own machines The Go version of Farsside also has a built in task to fetch the latest services{-full}.json file from the repo and ingest it, which makes running a farside server a lot simpler. It also automatically fetches the latest instance state from https://farside.link unless configured as a primary farside node, which will allow others to use farside without increasing traffic to all instances that are queried by farside (just to the farside node itself).
2024-04-19Add support for Tent (#171)Sunny
Added support for Bandcamp front-end Tent No regex, as Bandcamp URLs don't 1:1 translate to Tent URLs
2024-02-05Add auto update for rimgo (#152)sian1468
2024-01-09Use LibreY instances for LibreX requestsBen Busby
LibreX is maybe abandoned and has been replaced by LibreY. Requests to LibreX are now forwarded to LibreY instances to avoid issues.
2024-01-08Update reddit + ig frontends, update rate limitingBen Busby
Farside ratelimiting has been updated to return a 429 when a user exceeds 1 request/sec. This should help eliminate a lot of scraping type behavior that instance maintainers have been dealing with from Farside lately. Service changes: - Teddit removed (not maintained) - Bibliogram replaced by Proxigram - Libreddit merged with redlib
2024-01-08Replace libreddit w/ redlib, remove tedditBen Busby
Teddit is no longer maintained Libreddit has been forked to redlib, which seems to be actively trying to work around the changes to Reddit's API. Libreddit instances are now a mirror of redlib instances for the time being.
2023-09-14[CI] Ensure teddit urls are not null before filterBen Busby
Teddit's instance file contains null URL entries, which was breaking the nightly build. This ensures that the URL exists for an entry before continuing with processing.
2023-09-13Change auto-update procedure for SearX instances (#134)sian1468
2023-09-13Add librey support (#133)sian1468
Co-authored-by: Ben Busby <contact@benbusby.com>
2023-09-13Add auto update for librex (#132)sian1468
2023-08-24Fix file typo in CIBen Busby
2023-08-23Poll nitter instances only in nightly buildBen Busby
From the recent changes to twitter/X, it sounds like guest accounts are now required for nitter, which are more easily rate limited. To avoid any impact from Farside, the instances are now health checked in the nightly build using https://status.d420.de (this doesn't seem to be directly associated with the nitter maintainers, so might not be entirely future-proof).
2023-07-18Add missing jq var name in nightly buildBen Busby
GotHub auto update missing the "gothub" variable name before applying the results
2023-07-17Add GotHub support (#116)NoPlagiarism
Adds support for GotHub, an alternative frontend for GitHub --------- Co-authored-by: Ben Busby <contact@benbusby.com>
2023-05-19Fix breezewiki tmp filename in nightly buildBen Busby
2023-05-19Add support for BreezeWikiBen Busby
Includes nightly build support for automatically pulling the most up to date instance list. Closes #104
2023-05-16Replace SimplyTranslate instance source in nightly buildBen Busby
Closes #101
2023-04-13Remove SimplyTranslate from nightly updateBen Busby
The ST website has been down for > 1 week, which seems to indicate that it isn't coming back online anytime soon. Should reevaluate later to see if it's back. Individual instances seem to be working fine.
2023-04-05Move SearXNG instance check to nightly buildBen Busby
searx.space includes metrics for instance uptime, which is now implemented as part of farside's nightly build. Accordingly, the instance availability task built into farside now excludes searxng instances. Closes #95
2023-01-04Add cf filter to nightly build, update servicesBen Busby
The cloudflare filter has been added back into the nightly build. Now that the filtering method uses direct querying of the instance IP(s), it should be more reliable than the namespace lookup (and more accurate). services.json has been updated with the latest filtered results from services-full.json as well.
2022-12-11Add auto update instances for libreddit (#80)sian1468
* Change libreddit's fallback URL to official instance's URL * Add auto update instances for libreddit
2022-11-07Remove version req from searx instance auto-updateBen Busby
The majority of searx instances returned by https://searx.space/data/instances.json seem to be running non-release versions of searx (i.e. versions like "2022.11.06-ae54c7d5" and not "1.0.0"). Since the version itself doesn't indicate reliability alone imo, I don't think it's necessary to exclude instances based on this criteria in the auto-update nightly build.
2022-10-31Use erlef/setup-beam, bump gha versions (#76)Kian-Meng Ang
Remove extra redirection. See https://github.com/erlef/setup-beam/issues/20
2022-10-31Remove Redis dep, replace w/ native Elixir libBen Busby
This removes the dependency on Redis for core app functionality. Rather than using the key/value store provided by Redis, Farside now uses a key/val store provided by [cubdb](https://github.com/lucaong/cubdb) for identical functionality but without reliance on a non-Elixir service. This solution was chosen instead of ets, because storing instance data in memory leads to a period of broken functionality whenever the app restarts and hasn't re-populated instance data yet. It was also chosen instead of dets, because the documentation for dets was pretty hard to understand at first glance. Tests and the CI build were updated to reflect the removed dependency on Redis. New environment variable `FARSIDE_DATA_DIR` can be used to point to a directory where the instance data can be stored by cubdb. Co-authored-by: Jason Clark <mithereal@gmail.com>
2022-10-20Remove Wikiless from nightly auto-update buildBen Busby
The wikiless repo has been removed by Codeberg until the maintainer makes some changes requested by Wikimedia. Follow https://orenom.fi for updates.
2022-09-15Manually clear out dead bibliogram instancesBen Busby
Also removes bibliogram from the auto-updater Bibliogram is discontinued, and many instances are going offline as a result. This clears out the ones that have already been deactivated, but the better solution would probably be to stop supporting bibliogram.
2022-08-04Remove cloudflare filter from update workflowBen Busby
The cloudflare filter, when performed as part of the github action workflow, doesn't seem to work nearly as reliably when run on an actual machine. The farside server will instead run the un-cloudflare script whenever it pulls in new changes to services-full.json, which should be a much more reliable approach to filtering out cloudflare instances.
2022-08-01[CI] Check for NOERROR return status in dig queryBen Busby
2022-08-01Add missing flag for sed replacement in update workflowBen Busby
2022-08-01Auto update bibliogram instances w/ instance apiBen Busby
Closes #57
2022-07-31Handle dig return code 9 in update workflowBen Busby
If dig returns exit code 9 (no reply from server) when checking an instance for cloudflare records, it shouldn't fail the CI build but rather just skip adding the instance to the non-cloudflare services list. This should be re-evaluated soon to see if the CI build routinely has issues with getting a server reply. If so, a different approach needs to be taken to check if an instance is using cloudflare.
2022-07-28Force remove cf filter output in auto update workflowBen Busby
2022-07-27Use full service list in auto update workflowBen Busby
2022-07-27Use full service list for testsBen Busby
The filtered service list isn't guaranteed to have more than one instance per service, which fails a test that was designed to ensure back-to-back requests don't use the same instance. Using the full services json file more accurately tests the intended functionality for Farside.
2022-07-27Exclude Cloudflare instances from services.json by defaultBen Busby
This updates the services json file to exclude all instances that are detected to be using Cloudflare nameservers. A separate "services-full.json" file will continue to be tracked in the repo, which will include the full list of all instances for each service and can be used with the `FARSIDE_SERVICES_JSON` environment variable for anyone wanting to access the full instance list for each service. See #43
2022-07-13Exclude i2p address from searx(ng) auto updateBen Busby
2022-06-21Fix Wikiless auto update workflowBen Busby
Wikiless updated their instance json with a couple of changes that broke Farside's auto update workflow: - The protocol for each instance is now included by default (no need to prepend "https://") - The instances are differentiated between regular, onion, and i2p (no need to check for ".onion" in regular instance URLs)
2022-04-05Use 'generator' field to filter SearXNG instancesBen Busby
See #23 More info: searxng/searxng#1046
2022-03-18Support SearXNGBen Busby
Added a new seperate service for only redirecting to SearXNG instances. Note that plain "searx" redirects will use both SearX and SearXNG instances for those who don't have a preference between the two. Closes #23
2022-02-24Add support for Wikiless instancesBen Busby
"A free open source alternative Wikipedia front-end focused on privacy" - https://codeberg.org/orenom/Wikiless
2022-02-03Auto update teddit and Scribe instances (#15)Austin Huang
2022-01-26Allow manually triggering auto-update workflowBen Busby
2022-01-26Auto update list of invidious instancesBen Busby
Adds Invidious to the auto-update nightly CI build Closes #12
2021-12-23Auto update whoogle instances from CIBen Busby
2021-12-15Support teddit, piped, and simplytranslateBen Busby
- teddit (https://teddit.net/about) A free and open source alternative Reddit front-end focused on privacy. Inspired by the Nitter project. - Piped (https://github.com/TeamPiped/Piped) An alternative privacy-friendly YouTube frontend which is efficient by design. - SimplyTranslate (https://simple-web.org/projects/simplytranslate.html) We aim to provide fast and private translations to the user without wasting much overhead for extensive styling or JavaScript ___ Also adds SimplyTranslate to the github pipeline, since they provide a list of the service's public instances. Closes #4
2021-11-29Fix instance update commit as gh-botBen Busby
2021-11-28Print instances found in workflow to logBen Busby
2021-11-27Simplify CI commit in "update" workflowBen Busby
The steps taken to commit the changes to services.json were overly complicated. This simplifies the steps to just `exit 0` if there are no changes to commit.
2021-11-26Fix sed command in instance update workflowBen Busby