A wireframe globe breaking out of chains

Free the internet

Support tools that break the chains of censorship and surveillance. Donate to the Tor Project today.

Through December 31, your gift will be matched, up to $250,000!

Donate now

Persistent Storage

Adding new Persistent Storage features

Take these steps to add a new preset feature to the Persistent Storage:

  1. Add a new Feature subclass to config/chroot local-includes/usr/lib/python3/dist-packages/tps/configuration/features.py.

  2. Add a new Feature subclass to config/chroot local-includes/usr/lib/python3/dist-packages/tps frontend/views/features view.py.

  3. Add a new HdyActionRow child to the GtkListBox of the corresponding section you want to add the feature to.

You might need to add on-activated/on-deactivated hooks:

If you do, it's important that all privileged accesses of paths which are writable by an unprivileged user (e.g. amnesia) are done via the /run/nosymfollow mountpoint to avoid symlink attacks. For more information, see the section on symlink attacks in persistence.

Note that's is possible that on-activated hooks are run multiple times without the on-deactivated hooks being run in between, so they must handle that case gracefully.