geminispace.info

gemini search engine
git clone https://git.clttr.info/geminispace.info.git
Log (Feed) | Files | Refs (Tags) | README | LICENSE

commit c7d06895353747e61ab72c85f2f3446abbed4919
parent 83a758a4db4561bf6191fd60810a736f4e85849f
Author: René Wagner <rwa@clttr.info>
Date:   Fri, 14 Apr 2023 12:57:30 +0200

 donation info

Diffstat:
MREADME.md | 9+++++----
Mgus/crawl.py | 2+-
Minfra/rebuild_index.sh | 3++-
Minfra/update_index.sh | 7++++---
Mserve/templates/about.gmi | 20+++++++++-----------
Mserve/templates/fragments/footer.gmi | 2+-
Mserve/templates/fragments/header.gmi | 2+-
7 files changed, 23 insertions(+), 22 deletions(-)

diff --git a/README.md b/README.md @@ -4,15 +4,16 @@ ## Dependencies Install the following packages -- Python (>3.5) including `distutils` +- Python (>3.5) including `distutils` and `python-dev` (aka headers) - [poetry](https://python-poetry.org) +- gcc - OpenSSL - SQLite3 ## basic setup 1. Create a user who should run the service, e.g. `gus` -2. Clone this repo to a directory of your choice +2. Clone this repo: `git clone https://git.sr.ht/~rwa/geminispace.info geminispace` 3. Run `poetry install` in this directory @@ -37,8 +38,8 @@ Now you'll have created `index.new` directory, rename it to `index`. 1. Create a private key and TLS certificate (X.509 v3) for your host 2. Update `infra/gus.service` to match your needs: - - working directory - - domain + - working directory + - domain - certificate files 3. Copy `infra/gus.service` to `~/.config/systemd/user/` 4. Run the following commands to automatically start the daemon diff --git a/gus/crawl.py b/gus/crawl.py @@ -568,7 +568,7 @@ def run_crawl(should_run_destructive=False, seed_urls=[]): global domain_hit_timings domain_hit_timings = {} global max_crawl_depth - max_crawl_depth = 500 + max_crawl_depth = 700 global failure_count failure_count = {} diff --git a/infra/rebuild_index.sh b/infra/rebuild_index.sh @@ -1,6 +1,7 @@ #!/bin/bash BASEDIR="$1" +cd "${BASEDIR}" LOCKFILE="${BASEDIR}/crawl.lock" touch "${LOCKFILE}" @@ -9,7 +10,7 @@ mkdir -p "${BASEDIR}/index.new/" systemctl --user stop gus cp "${BASEDIR}/index/gus.sqlite" "${BASEDIR}/index.new/" systemctl --user start gus -~/.poetry/bin/poetry run build_index -d +/home/gus/.local/bin/poetry run build_index -d mv "${BASEDIR}/index" "${BASEDIR}/index.old" mv "${BASEDIR}/index.new" "${BASEDIR}/index" systemctl --user restart gus diff --git a/infra/update_index.sh b/infra/update_index.sh @@ -1,6 +1,7 @@ #!/bin/bash BASEDIR="$1" +cd "${BASEDIR}" LOCKFILE="${BASEDIR}/crawl.lock" if [[ -f "${LOCKFILE}" ]]; @@ -10,11 +11,11 @@ then fi touch "${LOCKFILE}" -rm "${BASEDIR}/gus.log" +rm -f "${BASEDIR}/gus.log" "${BASEDIR}/infra/filter_seed_request.sh" "${BASEDIR}" -~/.local/bin/poetry run crawl -~/.local/bin/poetry run build_index +/home/gus/.local/bin/poetry run crawl +/home/gus/.local/bin/poetry run build_index systemctl --user restart gus rm "${LOCKFILE}" diff --git a/serve/templates/about.gmi b/serve/templates/about.gmi @@ -1,26 +1,27 @@ {% include 'fragments/header.gmi' %} -## About geminispace.info +## About search.clttr.info -geminispace.info is a search engine for content served over the Gemini Protocol. It provides both a search interface, so you can look for content within Geminispace by keywords, content types, content sizes and more. It also provides data on the size and characteristics of Geminispace itself. +search.clttr.info is a search engine for content served over the Gemini Protocol. It provides both a search interface, so you can look for content within Geminispace by keywords, content types, content sizes and more. It also provides data on the size and characteristics of Geminispace itself. -geminispace.info is powered by GUS, an open-source crawler & search engine made by Natalie Pendragon and contributors. The source code is available at the following forges: +search.clttr.info is powered by GUS, an open-source crawler & search engine made by Natalie Pendragon and contributors. The source code is available at the following forges: => gemini://gmn.clttr.info/sources/geminispace.git/ browse the source on gemini => https://sr.ht/~rwa/geminispace.info source & mailinglist on sourcehut ### supporting geminispace.info -geminispace.info runs on a VPS dedicated solely to this service. At the moment this VPS costs 10€ a month and is paid by a single person. -If you'd like to help keep geminispace.info running feel free to donate a few bucks. Any donation will be directly used for server costs. -=> https://c-area.host-unlimited.de/checkout/donation/08c42c1a-6fc6-4aa3-9e09-4ec85242b13c send a donation +search.clttr.info runs on small PC lely to this service. +If you'd like to help keep search.clttr.info running feel free to donate a few bucks. Any donation will be directly used for server costs. => https://liberapay.com/rwa/ support me on LiberaPay +=> https://donate.stripe.com/9AQ7uT1kGbJn8jCaEE one time donation via Stripe +In 2023 geminispace.info received donations worth 0f 96.50€ (transaction fees already excluded). In 2022 geminispace.info received donations worth of 82.78€. ### index updates -Index updates run currently every three days. +Index updates run every three days. ### contact the admin(s) @@ -28,9 +29,6 @@ You can reach out to us by adressing our mailing list hosted by sr.ht: => mailto:~rwa/geminispace.info@lists.sr.ht send a mail to the list => https://lists.sr.ht/~rwa/geminispace.info mailing list archive -At the moment the bus factor is 1. -If geminispace.info becomes important for the geminispace i'll plan to give access to other persons of trust. This should help ensure that geminispace.info stays up-to-date when i'm on holiday or short of time. - ### What's the Gemini Protocol? Gemini is an application-level internet protocol for the distribution of arbitrary files, with some special consideration for serving a lightweight hypertext format which facilitates linking between files. It's been described as both "the web, stripped right back to its essence" as well as "Gopher, souped up and modernised a little". @@ -41,6 +39,6 @@ If you want to learn more, you should head over to the Gemini Project site itsel ### Documentation -For more extensive documentation about how GUS works, please see the documentation pages. +For more extensive documentation about how geminispace.info works, please see the documentation pages. {% include 'fragments/documentation-toc.gmi' %} diff --git a/serve/templates/fragments/footer.gmi b/serve/templates/fragments/footer.gmi @@ -1,4 +1,4 @@ -=> /add-seed missing results? add your capsule to search.clttr.info +=> /add-seed missing results? add your capsule to geminispace.info > Index updated on: {{ index_modification_time|datetimeformat }} diff --git a/serve/templates/fragments/header.gmi b/serve/templates/fragments/header.gmi @@ -1,4 +1,4 @@ -# search.clttr.info - Gemini Search Engine +# geminispace.info - Gemini Search Engine => / Home => /search Search