docs: address CR on plugin documentation
License: MIT Signed-off-by: Steven Allen <steven@stebalien.com>
Steven Allen committed
Dec 26, 2018 at 19:33 UTC
02a1feab37f03582792bff9afcdd6eb085951cde
1 file changed
+22
-14
docs/plugins.md
+22
-14
@@ -32,27 +32,30 @@ Datastore plugins add support for additional datastore backends.
32
33
## Available Plugins
34
35
-| Name | Type | Built-In | Description |
36
-|---------------------------------------------------------------------------------|-----------|----------|------------------------------------------------|
37
-| [git](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/git) | IPLD | x | An IPLD format for git objects. |
38
-| [badgerds](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/badgerds) | Datastore | x | A high performance but experimental datastore. |
39
-| [flatfs](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/flatfs) | Datastore | x | A stable filesystem-based datastore. |
40
-| [levelds](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/levelds) | Datastore | x | A stable, flexible datastore backend. |
35
+| Name | Type | Preloaded | Description |
36
+|---------------------------------------------------------------------------------|-----------|-----------|------------------------------------------------|
37
+| [git](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/git) | IPLD | x | An IPLD format for git objects. |
38
+| [badgerds](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/badgerds) | Datastore | x | A high performance but experimental datastore. |
39
+| [flatfs](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/flatfs) | Datastore | x | A stable filesystem-based datastore. |
40
+| [levelds](https://github.com/ipfs/go-ipfs/tree/master/plugin/plugins/levelds) | Datastore | x | A stable, flexible datastore backend. |
41
42
-* **Built-In** plugins are built into the go-ipfs binary and do not need to be
43
- installed separately. At the moment, all *known* plugins are built-in as
44
- they're mature and have proven themselves to be useful.
42
+* **Preloaded** plugins are built into the go-ipfs binary and do not need to be
43
+ installed separately. At the moment, all in-tree plugins are preloaded.
44
45
## Installing Plugins
46
48
-External plugins must be installed in `$IPFS_PATH/plugins/` (usually
49
-`~/.ipfs/plugins/`). Alternatively, plugins can be preloaded and built into the
50
-go-ipfs binary itself.
47
+Go-ipfs supports two types of plugins: External and Preloaded.
48
+
49
+* External plugins must be installed in `$IPFS_PATH/plugins/` (usually
50
+`~/.ipfs/plugins/`).
51
+* Preloaded plugins are built-into the go-ipfs when it's compiled.
52
53
### External Plugin
54
54
-At the moment, this method is only supported on Linux and MacOS. Users of other
55
-operating systems should follow the instructions for preloaded plugins.
55
+The advantage of an external plugin is that it can be built, packaged, and
56
+installed independently of go-ipfs. Unfortunately, this method is only supported
57
+on Linux and MacOS at the moment. Users of other operating systems should follow
58
+the instructions for preloaded plugins.
59
60
#### In-tree
61
@@ -92,6 +95,11 @@ Finally, as with in-tree plugins:
95
96
### Preloaded Plugins
97
98
+The advantages of preloaded plugins are:
99
+
100
+1. They're bundled with the go-ipfs binary.
101
+2. They work on all platforms.
102
+
103
To preload a go-ipfs plugin:
104
105
1. Add the plugin to the preload list: `plugin/loader/preload_list`