+* Debian jessie, systemd
+* 1 GB RAM mit Option bis 2 GB
+* 8 GB Platte
+* 4 CPU-Kerne
+* Netzwerk intern, per DHCP
+* HTTP kommt über [[gandolf]] als (SSL-)Proxy
+
+=== Etherpad ===
+Etherpad-Lite liegt als Git-Repo in <tt>/var/lib/etherpad/etherpad-lite</tt>, wird aus <tt>[https://stratum0.org/wiki/Gapadriel/etherpad-service?action=raw /etc/systemd/system/etherpad.service]</tt> als User <tt>etherpad</tt> gestartet und loggt nach <tt>/var/log/syslog</tt>.
+
+Einige Änderungen sind als Commits im Branch <tt>deploy</tt> eingepflegt. Diese beim Update bitte rebasen.
+
+MySQL als Datenbank, siehe <tt>/var/lib/etherpad/etherpad-lite/settings.json</tt>.
+
+Etherpad-Updates etc. bitte per <tt>sudo</tt>, nicht <tt>sudo -u etherpad</tt>. Aus Sicherheitsgründen soll der etherpad-Benutzer möglichst wenig irgendwohin schreiben können.
+
+==== Update ====
+ cd /var/lib/etherpad/etherpad-lite
+ sudo git fetch
+ sudo systemctl stop etherpad.service
+ sudo git rebase -i $version
+ sudo bin/installDeps.sh # und dann warten.
+ # falls wd failt: (siehe https://github.com/admc/wd/issues/483#issuecomment-410725658 )
+ # sudo npm install --unsafe-perm wd
+ # sudo bin/installDeps.sh # und dann warten.
+
+ sudo chmod go-w .
+ sudo chown root:etherpad .
+ sudo chmod g+rw -R var/ # CSS minified cache muss schreibbar sein
+ sudo chown etherpad:etherpad -R var/
+ sudo chmod g+r -R settings.json # config muss lesbar sein
+ sudo chown root:etherpad settings.json
+
+ # damit etherpad Plugins initialisieren und ep_$module/.ep_initialized anlegen kann -.-
+ sudo chmod g+w node_modules/ep_*
+
+ sudo systemctl start etherpad.service
+ sudo chmod g-w node_modules/ep_*
+
+==== Plugins installieren ====
+Admin-Login auf der Weboberfläche funktioniert zwar lesend, aber kann halt keine Packages installieren, weil der etherpad-User in <tt>node_modules/</tt> nicht schreiben soll. Stattdessen:
+
+ cd /var/lib/etherpad/etherpad-lite
+ sudo npm install ep_$plugin
+ # damit etherpad beim restart eine node_modules/ep_$plugin/.ep-initialized anlegen kann: -.-
+ sudo chown etherpad node_modules/ep_$plugin
+ sudo systemctl restart etherpad.service
+ sudo chown -R root:root node_modules/ep_$plugin
+
+==== Sonstiges ====
+* <tt>/var/lib/etherpad/etherpad-lite/var/</tt> muss für die Gruppe <tt>etherpad</tt> schreibbar sein, dort werden beim Start des Dienstes die minifizierten CSS/JS-Files abgelegt.
+
+==== Installierte Plugins ====
+ for module in \
+ ep_headings2 \
+ ep_subscript_and_superscript \
+ ep_table_of_contents \
+ ep_pad_activity_nofication_in_title \
+ ep_infopanel \
+ ep_markdown \
+ https://gitli.stratum0.org/stratum0/ep_stratum_faqlink/-/archive/master/ep_stratum_faqlink-master.tar.gz \
+ https://gitli.stratum0.org/kasalehlia/ep_stratum0_blogpreview/-/archive/master/ep_stratum0_blogpreview-master.tar.gz \
+ ; do
+ sudo npm i $module
+ done
+ # Abhängigkeit von ep_headings, kann aber danach wieder gelöscht werden, ep_headings2 ist ausreichend:
+ sudo rm -rf node_modules/ep_headings
+ # damit etherpad beim restart eine node_modules/ep_$plugin/.ep-initialized anlegen kann: -.-
+ sudo chown etherpad node_modules/ep_*
+ sudo systemctl restart etherpad.service
+ sudo chown -R root:root node_modules/ep_*