As a website and group of people: A distributed archive curated by distributed archivists preserving public information to plug the memoryhole.
As software: An experimental (soon to be) federated bittorrent tracker.
Please see full instructions in the contributing docs
Installing
Clone the repository:
git clone https://codeberg.org/Safeguarding/sciop cd sciopWith pip
Make a python virtual environment and activate it:
python -m venv ~/.envs/sciop . ~/.envs/sciop/bin/activateInstall dependencies and then sciop itself in-place as an editable requirement:
pip install -e .sciop is also available on PyPI, though while we are in beta we do not regularly deploy versions there, so installing from the repository is strongly recommended.
python -m pip install sciopWith PDM
Install dependencies, automatically creating a virtual environment by default
pdm installConfiguration
All of the following commands can be run either with a venv or pdm install, though only the venv version is shown. For PDM installs, just prepend pdm run like pdm run sciop start
Create a default configuration:
# to see all config commands, # sciop config --help sciop config copyTwo fields must be set:
- SCIOP_ENV/env: one of dev, test or prod. One should only make a sciop instance publicly available in prod mode. dev mode is for local development purposes, as is test. You must ensure that you do not re-use the same db between a dev/test and prod instance, e.g. if the SCIOP_DB location is explicitly set to something other than the defaults.
- SCIOP_SECRET_KEY/secret_key: must be a securely-generated random hex value. A key can be generated with openssl rand -hex 32.
When generated from the cli, env is set to dev, and secret_key is automatically generated.
Run the dev sever
# see available CLI commands # sciop --help sciop startThis project includes the following vendored software:
- htmx - Zero-Clause BSD
- form-json - GPL 3.0
- fastapi_rss - MIT