From e12211e4c556e601cff5f84713abcc924193397d Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 20 Jan 2023 10:21:19 +0200 Subject: [PATCH 1/4] doc: install dialog --- docs/guide/extension-install.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/guide/extension-install.md b/docs/guide/extension-install.md index 2385584c..b70d4584 100644 --- a/docs/guide/extension-install.md +++ b/docs/guide/extension-install.md @@ -19,6 +19,25 @@ Multiple repositories can be configured. For more information check the [Manifes > **Warning** > Extensions can have bugs or mallicious code, be carefull what you install!! +## Install New Extension +Only administrator users can install or upgrade extensions. + +Go to `Manage Extensions` > `Add Remove Extensions` +![image](https://user-images.githubusercontent.com/2951406/213647560-67da4f8a-3315-436f-b690-3b3de536d2e6.png) + +A list of extensions that can be installed is displayed: +![image](https://user-images.githubusercontent.com/2951406/213647904-d463775e-86b6-4354-a199-d50e08565092.png) + +> **Note** +> If the extension is installed from a GitHub repo, then the GitHub star count will be shown. + +Click the `Manage` button in order to install a particular release of the extension. +![image](https://user-images.githubusercontent.com/2951406/213648543-6c5c8cae-3bf4-447f-8499-344cac61c566.png) + +> **Note** +> An extension can be listed in more that one repository. The admin user must select which repository it wants to installed from. + + ## Manifest File The manifest file is just a `JSON` file that lists a collection of extensions that can be installed. This file is of the form: From c2ca9403e448b913780c51dd46c3114714b074ab Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 20 Jan 2023 10:38:38 +0200 Subject: [PATCH 2/4] doc: add note --- docs/guide/extension-install.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/guide/extension-install.md b/docs/guide/extension-install.md index b70d4584..c1aa44a8 100644 --- a/docs/guide/extension-install.md +++ b/docs/guide/extension-install.md @@ -35,7 +35,15 @@ Click the `Manage` button in order to install a particular release of the extens ![image](https://user-images.githubusercontent.com/2951406/213648543-6c5c8cae-3bf4-447f-8499-344cac61c566.png) > **Note** -> An extension can be listed in more that one repository. The admin user must select which repository it wants to installed from. +> An extension can be listed in more that one repository. The admin user must select which repository it wants to install from. + +Select the version to be installed (usually the last one) and click `Install`. One can also check the `Release Notes` first. + +> **Note**: +> +> For Github repository: the order of the releases is the one in the GitHub releases page +> +> For Explicit Release: the order of the releases is the one in the "extensions" object ## Manifest File From 12790dec5d3167f005a03ea5b932ae0551964867 Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 20 Jan 2023 10:42:14 +0200 Subject: [PATCH 3/4] doc: start `Unistall Extension` section --- docs/guide/extension-install.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/guide/extension-install.md b/docs/guide/extension-install.md index c1aa44a8..334c9f74 100644 --- a/docs/guide/extension-install.md +++ b/docs/guide/extension-install.md @@ -46,6 +46,14 @@ Select the version to be installed (usually the last one) and click `Install`. O > For Explicit Release: the order of the releases is the one in the "extensions" object +The extension has been installed but it cannot be accessed yet. In order to activate the extension toggle it in the `Activated` state. + +Go to `Manage Extensions` (as admin user or regular user). Search for the extension and enable it. + + +## Uninstall Extension + + ## Manifest File The manifest file is just a `JSON` file that lists a collection of extensions that can be installed. This file is of the form: From 77312d5e3cfb8c62bbdc101caa361200809fe3ae Mon Sep 17 00:00:00 2001 From: Vlad Stan Date: Fri, 20 Jan 2023 10:47:47 +0200 Subject: [PATCH 4/4] doc: update `Uninstall` section --- docs/guide/extension-install.md | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/docs/guide/extension-install.md b/docs/guide/extension-install.md index 334c9f74..c938d25e 100644 --- a/docs/guide/extension-install.md +++ b/docs/guide/extension-install.md @@ -11,13 +11,13 @@ Go to `Manage Server` > `Server` > `Extensions Manifests` ![image](https://user-images.githubusercontent.com/2951406/213494038-e8152d8e-61f2-4cb7-8b5f-361fc3f9a31f.png) -An `Extension Manifest` is a link to a `JSON` file whitch contains information about various extensions that can be installed (repository of extensions). +An `Extension Manifest` is a link to a `JSON` file which contains information about various extensions that can be installed (repository of extensions). Multiple repositories can be configured. For more information check the [Manifest File](https://github.com/lnbits/lnbits/blob/extension_install_02/docs/guide/extension-install.md#manifest-file) section. **LNbits** administrators should configure their instances to use repositories that they trust (like the [lnbits-extensions](https://github.com/lnbits/lnbits-extensions/) one). > **Warning** -> Extensions can have bugs or mallicious code, be carefull what you install!! +> Extensions can have bugs or malicious code, be careful what you install!! ## Install New Extension Only administrator users can install or upgrade extensions. @@ -35,7 +35,7 @@ Click the `Manage` button in order to install a particular release of the extens ![image](https://user-images.githubusercontent.com/2951406/213648543-6c5c8cae-3bf4-447f-8499-344cac61c566.png) > **Note** -> An extension can be listed in more that one repository. The admin user must select which repository it wants to install from. +> An extension can be listed in more than one repository. The admin user must select which repository it wants to install from. Select the version to be installed (usually the last one) and click `Install`. One can also check the `Release Notes` first. @@ -52,7 +52,17 @@ Go to `Manage Extensions` (as admin user or regular user). Search for the extens ## Uninstall Extension +On the `Install` page click `Manage` for the extension you want to uninstall: +![image](https://user-images.githubusercontent.com/2951406/213653194-32cbb1da-dcc8-43cf-8a82-1ec5d2d3dc16.png) +The installed release is highlighted in green. + +Click the `Uninstall` button for the release or the one in the bottom. + +Users will no longer be able to access the extension. + +> **Note** +> The database for the extension is not removed. If the extension is re-installed later, the data will be accessible. ## Manifest File The manifest file is just a `JSON` file that lists a collection of extensions that can be installed. This file is of the form: @@ -87,7 +97,7 @@ It goes under the `extensions` object and it is of the form: | Field | Type | | Description | |----------------------|---------------|-----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| id | string | mandatory | The ID of the extension. Must be unique for each extensions. It is also used as the path in the URL. | +| id | string | mandatory | The ID of the extension. Must be unique for each extension. It is also used as the path in the URL. | | name | string | mandatory | User friendly name for the extension. It will be displayed on the installation page. | | version | string | mandatory | Version of this release. [Semantic versoning](https://semver.org/) is recommended. | | shortDescription | string | optional | A few words about the extension. It will be displayed on the installation page. | @@ -116,7 +126,7 @@ It goes under the `repos` object and it is of the form: | Field | Type | Description | |--------------|--------|-------------------------------------------------------| -| id | string | The ID of the extension. Must be unique for each extensions. It is also used as the path in the URL. | +| id | string | The ID of the extension. Must be unique for each extension. It is also used as the path in the URL. | | organisation | string | The GitHub organisation (eg: `lnbits`) | | repository | string | The GitHub repository name (eg: `withdraw-extension`) |