🔀 Merge branch 'release/v82'
[Sone.git] / README.md
index c8e8a00..f3a7df1 100644 (file)
--- a/README.md
+++ b/README.md
@@ -2,19 +2,31 @@
 
 Sone aims to provide social network functionality for [Freenet](https://freenetproject.org/) (also here [on GitHub](https://github.com/freenet/)).
 
+## Compiling
+
+Sone’s build process is handled by [Gradle](https://gradle.org/). Just use the Gradle wrapper that comes with Sone:
+
+    # ./gradlew clean build fatJar
+
+This will resolve Sone’s dependencies, compile Sone, run all the tests, and put the file `sone-jar-with-dependencies.jar` into the `build/libs` directory. This is the file that you can load from Freenet’s plugin manager to run Sone.
+
 ## Installing
 
 ### Prerequisites
 
 For Sone to work you will need a running Freenet node, of course. You will also need the Web of Trust plugin from the official plugins listed on your node’s plugin manager page (*Configuration â†’ Plugins* in the menu).
 
-If you already have a web of trust identity, you can skip the next section.
-
-You will also need to create an identity in the web of trust. Select *Community* from the menu, choose â€śGenerate” and follow the instructions on-screen until your identity has been created.
+You will also need a web of trust identity to use Sone. If you do not already have a web of trust identity, select *Community* from the menu, choose â€śGenerate” and follow the instructions on-screen until your identity has been created.
 
 ### Loading/Installing
 
-For Sone to work you will need a running Freenet node and the WebOfTrust plugin. Loading Sone happens from Freenet’s web interface using the â€śAdd an Unofficial Plugin from Freenet” section from the node’s plugin manager at *Configuration â†’ Plugins*, at the bottom of the page. Enter the key of the plugin (starting with â€śUSK@”) into the text field and press the â€śLoad” button. The plugin should then be downloaded from Freenet and started once it’s ready.
+#### From Freenet
+
+If you just want to run the latest version of Sone you first have to obtain the plugin key from [Sone’s homepage in Freenet](USK@nwa8lHa271k2QvJ8aa0Ov7IHAV-DFOCFgmDt3X6BpCI,DuQSUZiI~agF8c-6tjsFFGuZ8eICrzWCILB60nT8KKo,AQACAAE/sone/75/). Now head over to your node’s plugin manager which you can reach from the menu at *Configuration â†’ Plugins*. At the bottom of the page there’s a section called â€śAdd an Unofficial Plugin from Freenet.” Enter the key of the plugin into the text field and press the â€śLoad” button. The plugin should then be downloaded from Freenet and started once it’s ready.
+
+#### From Disk
+
+If you have compiled Sone yourself, there’s a different section on the plugin manager page, called â€śAdd an Unofficial Plugin.” Enter the full path name of the JAR file created by Gradle and press the â€śLoad” button. Sone should then be ready instantly.
 
 The node will remember which plugins you loaded so that you don’t need to do that again after your node restarts (e.g. for updates).
 
@@ -48,6 +60,6 @@ Now, a social network wouldn’t be much fun if you couldn’t talk with other p
 
 When displaying posts and replies, Sone first parses the text. Special elements, such as Freenet URIs and Sone elements with a special syntax, are replaced with formatting that allow your browser to navigate the elements. Sone recognizes the following elements:
 
-* Links to Freenet URIs are linked to as-is. Make sure to separate the URI from surrounding text by whitespace, such as space or line breaks.
+* Links to Freenet URIs are linked to as-is. Make sure to separate the URI from surrounding text by whitespace, such as space or line breaks, or interpunction, such as commas and periods.
 * Links to other Sone’s profiles are added by the prefix â€śsone://” followed by the ID of the Sone. It is also possible to get the link for a Sone from a post or reply by that Sone; just copy the URL behind the â€ś[link author]” link.
 * Links to other posts are added by the prefix â€śpost://” followed by the ID of the post. You can also find the post ID behind the â€ś[link post]” link below a post.