Maintaining ethercalc

We are running ethercalc (a spreadsheet/wiki web software) at

It depends on node.js.

It was installed by running, as the calc user on mchesney (and in the /home/calc):

npm install ethercalc

That created a directory structure in /home/calc/node_modules.

The init script is handled by runit and is located in /etc/sv/ethercalc. The run file is:


exec 2>&1
exec chpst -e ./env -u calc:calc /usr/bin/nodejs /home/calc/node_modules/ethercalc/bin/ethercalc --basepath

And in the env directory, there is a file called NODE_ENV with the contents: production

We running apache which passed through traffic to ethercalc. The apache file (in site-enabled) has the following content:

        # web config for
        # ServerAlias

        <Proxy *>
          Order deny,allow
          Allow from all

        #SSL Stuff
        SSLEngine On
        SSLProxyEngine On
	SSLCertificateFile /etc/letsencrypt/live/
        SSLCertificateKeyFile /etc/letsencrypt/live/
        ProxyPreserveHost On
        ProxyRequests off
        ProxyPass / http://localhost:8000/
        ProxyPassReverse / http://localhost:8000/

To update to the latest version of ethercalc, run the following command in /home/calc as the ethercalc user:

npm update

Then, restart ethercalc (as root):

sv restart ethercalc && systemctl restart apache2

Note: the current version of ethercalc only works because of a patch described here. If updated, you may need to edit the specified file by hand.

Last modified 3 years ago Last modified on Dec 5, 2016, 6:08:38 PM