Plume, haskal edition
https://blog.lain.faith
81acc96e64 | ||
---|---|---|
migrations | ||
src | ||
templates | ||
.gitignore | ||
.travis.yml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
rust-toolchain |
README.md
Plume
Federated blogging engine, based on ActivityPub.
Setup the database
You'll need Postgres.
sudo su postgres
psql
CREATE DATABASE plume;
CREATE USER plume WITH PASSWORD 'plume';
GRANT ALL PRIVILEGES ON DATABASE plume to plume;
\q
exit
Then run the migrations
diesel migrations run # Install diesel with `cargo install diesel_cli` if needed
You should repeat this operation every time the database schema has been modified.
A good practice is to run it after every git pull
.
Starting the app
Just use:
cargo run
You'll need Rust nightly.
Once the app started, try to visit localhost:8000.
To configure the instance (needed before you can do anything else), go on /configire.
Testing the federation
To test the federation, you'll need to setup another database (see "Setup the database"), also owned by the "plume" user, but with a different name. Then, you'll need to run the migrations for this database too.
diesel migration run --database-url postgres://plume:plume@localhost/my_other_plume_db
To run this other instance, you'll need to give two environment variables:
ROCKET_PORT
, the port on which your app will runDB_NAME
, the name of the database you just created
ROCKET_PORT=3033 DB_NAME=my_other_plume_db cargo run