Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. Etherpad Lite
  3. How to install plugins ?

How to install plugins ?

Scheduled Pinned Locked Moved Solved Etherpad Lite
7 Posts 3 Posters 69 Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    mononym
    wrote last edited by mononym
    #1

    Hello. Does one install plugins in the admin panel or the command line ?

    • In the admin panel, the available plugins never show up; just keeps Loading...

    64c63b68-786a-41c6-b1c3-2351067d5589-image.png

    • In the CLI, when running app/code# npm i ep_cursortrace, I get:
    npm error Cannot read properties of null (reading 'package')
    npm notice
    npm notice New major version of npm available! 10.9.3 -> 11.7.0
    npm notice Changelog: https://github.com/npm/cli/releases/tag/v11.7.0
    npm notice To update run: npm install -g npm@11.7.0
    npm notice
    npm error A complete log of this run can be found in: /root/.npm/_logs/2025-12-22T15_08_42_684Z-debug-0.log
    
    0 verbose cli /usr/local/node-22.20.0/bin/node /usr/local/node-22.20.0/bin/npm
    1 info using npm@10.9.3
    2 info using node@v22.20.0
    3 silly config load:file:/usr/local/node-22.20.0/lib/node_modules/npm/npmrc
    4 silly config load:file:/app/code/.npmrc
    5 silly config load:file:/root/.npmrc
    6 silly config load:file:/usr/local/node-22.20.0/etc/npmrc
    7 verbose title npm i ep_cursortrace
    8 verbose argv "i" "ep_cursortrace"
    9 verbose logfile logs-max:10 dir:/root/.npm/_logs/2025-12-22T15_08_42_684Z-
    10 verbose logfile /root/.npm/_logs/2025-12-22T15_08_42_684Z-debug-0.log
    11 silly logfile done cleaning log files
    12 silly packumentCache heap:415236096 maxSize:103809024 maxEntrySize:51904512
    13 http fetch GET 200 https://registry.npmjs.org/npm 221ms
    14 verbose stack TypeError: Cannot read properties of null (reading 'package')
    14 verbose stack     at set root (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/node.js:748:35)
    14 verbose stack     at set root (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/node.js:814:20)
    14 verbose stack     at set root (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/node.js:814:20)
    14 verbose stack     at set root (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/node.js:822:19)
    14 verbose stack     at set parent (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/node.js:1257:15)
    14 verbose stack     at Node.replace (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/node.js:1172:20)
    14 verbose stack     at #transplant (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js:239:10)
    14 verbose stack     at #loadActual (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/load-actual.js:209:21)
    14 verbose stack     at async /usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:299:11
    14 verbose stack     at async Arborist.buildIdealTree (/usr/local/node-22.20.0/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:178:7)
    15 error Cannot read properties of null (reading 'package')
    16 silly unfinished npm timer reify 1766416124310
    17 silly unfinished npm timer reify:loadTrees 1766416124315
    18 silly unfinished npm timer idealTree:init 1766416124316
    19 verbose cwd /app/code
    20 verbose os Linux 6.8.0-90-generic
    21 verbose node v22.20.0
    22 verbose npm  v10.9.3
    23 notice
    23 notice New major version of npm available! 10.9.3 -> 11.7.0
    23 notice Changelog: https://github.com/npm/cli/releases/tag/v11.7.0
    23 notice To update run: npm install -g npm@11.7.0
    23 notice  { force: true, [Symbol(proc-log.meta)]: true }
    24 verbose exit 1
    25 verbose code 1
    26 error A complete log of this run can be found in: /root/.npm/_logs/2025-12-22T15_08_42_684Z-debug-0.log
    
    1 Reply Last reply
    0
    • M mononym

      I found a way, maybe double check what it means in case of updates @james

      N.B.: The plugin in the example is ep_author_neat2

      1. Installation in the CLI

      Run app/data/data# npm i ep_author_neat2 (notice: data inside data directory)

      added 1 package, and audited 3 packages in 10s
      
      2 packages are looking for funding
        run `npm fund` for details
      
      found 0 vulnerabilities
      

      2. Add plugin info

      The plugin info is {"name":"ep_author_neat2","version":"2.0.11"} and has to be added to app/data/data/installed_plugins.json

      3. Restart the app

      M Offline
      M Offline
      mononym
      wrote last edited by mononym
      #7
      1. Add plugin info

      The plugin info is {"name":"ep_author_neat2","version":"2.0.11"} and has to be added to app/data/data/installed_plugins.json

      I think that the above step is the only one needed to install plugins. Simply add the wanted plugins into /data/data/installed_plugins.json and a restart will install them.

      Tested with the demo server: I installed Etherpad and modified the following files:

      /data/data/installed_plugins.json

      {"plugins":[
          {"name":"ep_button_link","version":"1.0.11"},
          {"name":"ep_delete_empty_pads","version":"0.0.11"},
          {"name":"ep_author_hover","version":"1.0.12"},
          {"name":"ep_spellcheck","version":"0.0.65"},
          {"name":"ep_disable_reset_authorship_colours","version":"0.0.27"},
          {"name":"ep_image_upload","version":"1.0.105"},
          {"name":"ep_disable_delete_button","version":"0.0.1"},
          {"name":"ep_prompt_for_name","version":"1.0.25"},
          {"name":"ep_table_of_contents","version":"0.3.89"},
          {"name":"ep_prefer_color_scheme","version":"0.0.10"},
          {"name":"ep_countable","version":"0.0.15"},
          {"name":"ep_default_colors_off","version":"0.0.1"},
          {"name":"ep_align","version":"10.0.2"},
          {"name":"ep_comments_page","version":"10.0.4"},
          {"name":"ep_embedded_hyperlinks2","version":"1.2.4"},
          {"name":"ep_font_color","version":"0.0.89"},
          {"name":"ep_headings2","version":"0.2.68"},
          {"name":"ep_markdown","version":"10.0.1"},
          {"name":"ep_openid_connect","version":"3.0.13"},
          {"name":"ep_user_displayname","version":"1.0.7"},
          {"name":"ep_stable_authorid","version":"1.0.5"},
          {"name":"ep_guest","version":"1.0.37"},
          {"name":"ep_etherpad-lite","version":"2.5.3"}
          ]
      }
      

      data/settings.json

      {
        "requireAuthentication": false,
        "ep_spellcheck": { 
          "disabledByDefault" : false 
        },
        "ep_toc": {
          "disable_by_default": false,
          "show_button": true
        },
        "ep_button_link": {
          "link": "https://www.cloudron.io/",
          "text": "Cloudron",
          "after": "[data-key='home']"
        },
        "ep_author_hover": {
          "disabledByDefault": false
        }
      }
      

      Logs

      Dec 27 10:17:58 [2025-12-27T09:17:58.576] [INFO] server - Starting Etherpad...
      Dec 27 10:17:58 [2025-12-27T09:17:58.605] [INFO] plugins - pnpm --version: 10.20.0
      Dec 27 10:17:58 [2025-12-27T09:17:58.619] [INFO] plugins - check installed plugins for migration
      Dec 27 10:17:59 [2025-12-27T09:17:59.059] [INFO] plugins - Loading plugin ep_button_link...
      Dec 27 10:17:59 [2025-12-27T09:17:59.059] [INFO] plugins - Loading plugin ep_delete_empty_pads...
      Dec 27 10:17:59 [2025-12-27T09:17:59.059] [INFO] plugins - Loading plugin ep_author_hover...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_spellcheck...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_disable_reset_authorship_colours...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_image_upload...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_disable_delete_button...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_prompt_for_name...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_table_of_contents...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_prefer_color_scheme...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_countable...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_default_colors_off...
      Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_align...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_comments_page...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_embedded_hyperlinks2...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_font_color...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_headings2...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_markdown...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_openid_connect...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_user_displayname...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_stable_authorid...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_guest...
      Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_etherpad-lite...
      Dec 27 10:17:59 [2025-12-27T09:17:59.068] [INFO] plugins - Loaded 23 plugins
      

      https://pad.demo.cloudron.io

      1 Reply Last reply
      0
      • jamesJ Offline
        jamesJ Offline
        james
        Staff
        wrote last edited by
        #2

        Hello @mononym
        It should work from the admin ui as documented here:
        https://docs.cloudron.io/packages/etherpad/#installing-plugins

        1 Reply Last reply
        0
        • M Offline
          M Offline
          mononym
          wrote last edited by mononym
          #3

          Thanks. It is the last line from the docs which made me doubt.

          Plugins which did not cause the problem can be reinstalled again with:

          npm i <pluginname>

          It seems there's some issue because the available plugins never show up. Even searching for a specific one:
          image.png

          Only log: Dec 22 17:17:00 [2025-12-22T16:17:00.732] [INFO] adminPlugins - Plugin search: ep_cursortrace'

          Could the app point to a wrong URL instead of the plugins' repository ?

          1 Reply Last reply
          0
          • robiR Offline
            robiR Offline
            robi
            wrote last edited by robi
            #4

            The new plugins are not local, so the search is of some GitHub repo with the available plugins.

            Feel free to test it with the Cloudron demo server.

            Conscious tech

            1 Reply Last reply
            0
            • M Offline
              M Offline
              mononym
              wrote last edited by mononym
              #5
              This post is deleted!
              1 Reply Last reply
              0
              • M Offline
                M Offline
                mononym
                wrote last edited by
                #6

                I found a way, maybe double check what it means in case of updates @james

                N.B.: The plugin in the example is ep_author_neat2

                1. Installation in the CLI

                Run app/data/data# npm i ep_author_neat2 (notice: data inside data directory)

                added 1 package, and audited 3 packages in 10s
                
                2 packages are looking for funding
                  run `npm fund` for details
                
                found 0 vulnerabilities
                

                2. Add plugin info

                The plugin info is {"name":"ep_author_neat2","version":"2.0.11"} and has to be added to app/data/data/installed_plugins.json

                3. Restart the app

                M 1 Reply Last reply
                1
                • M mononym marked this topic as a question
                • M mononym has marked this topic as solved
                • M mononym

                  I found a way, maybe double check what it means in case of updates @james

                  N.B.: The plugin in the example is ep_author_neat2

                  1. Installation in the CLI

                  Run app/data/data# npm i ep_author_neat2 (notice: data inside data directory)

                  added 1 package, and audited 3 packages in 10s
                  
                  2 packages are looking for funding
                    run `npm fund` for details
                  
                  found 0 vulnerabilities
                  

                  2. Add plugin info

                  The plugin info is {"name":"ep_author_neat2","version":"2.0.11"} and has to be added to app/data/data/installed_plugins.json

                  3. Restart the app

                  M Offline
                  M Offline
                  mononym
                  wrote last edited by mononym
                  #7
                  1. Add plugin info

                  The plugin info is {"name":"ep_author_neat2","version":"2.0.11"} and has to be added to app/data/data/installed_plugins.json

                  I think that the above step is the only one needed to install plugins. Simply add the wanted plugins into /data/data/installed_plugins.json and a restart will install them.

                  Tested with the demo server: I installed Etherpad and modified the following files:

                  /data/data/installed_plugins.json

                  {"plugins":[
                      {"name":"ep_button_link","version":"1.0.11"},
                      {"name":"ep_delete_empty_pads","version":"0.0.11"},
                      {"name":"ep_author_hover","version":"1.0.12"},
                      {"name":"ep_spellcheck","version":"0.0.65"},
                      {"name":"ep_disable_reset_authorship_colours","version":"0.0.27"},
                      {"name":"ep_image_upload","version":"1.0.105"},
                      {"name":"ep_disable_delete_button","version":"0.0.1"},
                      {"name":"ep_prompt_for_name","version":"1.0.25"},
                      {"name":"ep_table_of_contents","version":"0.3.89"},
                      {"name":"ep_prefer_color_scheme","version":"0.0.10"},
                      {"name":"ep_countable","version":"0.0.15"},
                      {"name":"ep_default_colors_off","version":"0.0.1"},
                      {"name":"ep_align","version":"10.0.2"},
                      {"name":"ep_comments_page","version":"10.0.4"},
                      {"name":"ep_embedded_hyperlinks2","version":"1.2.4"},
                      {"name":"ep_font_color","version":"0.0.89"},
                      {"name":"ep_headings2","version":"0.2.68"},
                      {"name":"ep_markdown","version":"10.0.1"},
                      {"name":"ep_openid_connect","version":"3.0.13"},
                      {"name":"ep_user_displayname","version":"1.0.7"},
                      {"name":"ep_stable_authorid","version":"1.0.5"},
                      {"name":"ep_guest","version":"1.0.37"},
                      {"name":"ep_etherpad-lite","version":"2.5.3"}
                      ]
                  }
                  

                  data/settings.json

                  {
                    "requireAuthentication": false,
                    "ep_spellcheck": { 
                      "disabledByDefault" : false 
                    },
                    "ep_toc": {
                      "disable_by_default": false,
                      "show_button": true
                    },
                    "ep_button_link": {
                      "link": "https://www.cloudron.io/",
                      "text": "Cloudron",
                      "after": "[data-key='home']"
                    },
                    "ep_author_hover": {
                      "disabledByDefault": false
                    }
                  }
                  

                  Logs

                  Dec 27 10:17:58 [2025-12-27T09:17:58.576] [INFO] server - Starting Etherpad...
                  Dec 27 10:17:58 [2025-12-27T09:17:58.605] [INFO] plugins - pnpm --version: 10.20.0
                  Dec 27 10:17:58 [2025-12-27T09:17:58.619] [INFO] plugins - check installed plugins for migration
                  Dec 27 10:17:59 [2025-12-27T09:17:59.059] [INFO] plugins - Loading plugin ep_button_link...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.059] [INFO] plugins - Loading plugin ep_delete_empty_pads...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.059] [INFO] plugins - Loading plugin ep_author_hover...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_spellcheck...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_disable_reset_authorship_colours...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_image_upload...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_disable_delete_button...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_prompt_for_name...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_table_of_contents...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_prefer_color_scheme...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_countable...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_default_colors_off...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.060] [INFO] plugins - Loading plugin ep_align...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_comments_page...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_embedded_hyperlinks2...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_font_color...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_headings2...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_markdown...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_openid_connect...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_user_displayname...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_stable_authorid...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_guest...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.061] [INFO] plugins - Loading plugin ep_etherpad-lite...
                  Dec 27 10:17:59 [2025-12-27T09:17:59.068] [INFO] plugins - Loaded 23 plugins
                  

                  https://pad.demo.cloudron.io

                  1 Reply Last reply
                  0
                  • M mononym has marked this topic as solved
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  • First post
                    Last post
                  0
                  • Categories
                  • Recent
                  • Tags
                  • Popular
                  • Bookmarks
                  • Search