Skip to content

Travellers' community for sharing, hosting and getting people together.

License

Notifications You must be signed in to change notification settings

Trustroots/trustroots

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



Trustroots

Travellers' community. Sharing, hosting and getting people together.

Maintenance mode

Trustroots is in maintenance mode.

No new features are being developed.

Our medium term plan is decentralisation thru the nostr protocol, see https://github.com/Trustroots/nostroots

We are also open to improvments that make trustroots forkable.

nvm & npm

We're using nvm to manage node versions.

  • nvm use
  • npm -g i npm@latest-7 node-gyp@0.8.0

It's important to use the latest version of npm v7 and not later.

To be able to install dependencies on macOS / apple silicon, the following dependencies are required:

  • brew install pkg-config cairo pango libpng jpeg giflib librsvg python-setuptools

Installing mmmagic expects python to be a valid binary, which it is not. This can be solved by adding a symlink from python to python3 like so:

  • ln -s "$(brew --prefix)/bin/python"{3,}

If you're running on apple silicon, you also need to run this command:

  • sed -i '' 's/"rU"/"r"/' ~/.nvm/versions/node/v16.20.2/lib/node_modules/npm/node_modules/node-gyp/gyp/pylib/gyp/input.py

You might also need to run the linux equivalent of that if you see an error about "ValueError: invalid mode: 'rU' while trying to load binding.gyp". The linux equivalent removes the first set of ''.

Running locally

npm start

or

docker compose up

If you experience docker issues you could try clearing up docker - even though it shouldn't be necessary, it can help:

docker image prune
docker image prune -a
docker container prune
docker volume prune
docker builder prune
docker builder prune -a
docker system prune
docker system prune -a --volumes -f

Building for production

See deploy/docker. Run dockerBuild.sh. Then docker push the latest tags which are output as the last part of the dockerBuild.sh script.

Merging

Only use git merge --no-ff branch or the "Create a merge commit" option on GitHub. We don't want to delete any commit hashes. No rebasing or squashing.

We use the commit hash to track what was deployed when, so any of those operations can destroy that history, making it much harder to understand what code was deployed when in the past.

License

  • The AGPL License
  • Photos copyright photographers - several of them are under Creative Commons. Others are permitted to use only with Trustroots.
  • Logos of external communities are copyrighted work and may be subject to trademark laws.