X-Git-Url: https://git.rohieb.name/stratum0-wiki.git/blobdiff_plain/bf08b12fd5dc48919bbedab77cce4a5ee33554ac..c1fa814754621a23f2bd4c9fba1400bf0077afc8:/Gapadriel.mw
diff --git a/Gapadriel.mw b/Gapadriel.mw
index 33486c58a..77868cad3 100644
--- a/Gapadriel.mw
+++ b/Gapadriel.mw
@@ -36,18 +36,50 @@
* Netzwerk intern, per DHCP
* HTTP kommt über [[gandolf]] als (SSL-)Proxy
+=== Node.js / npm ===
+
+Debian hat kein npm mehr. Etherpad braucht npm. (Keine schöne, aber eine) Lösung: [https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions]
+
+ sudo apt install apt-transport-https
+ NODEREPO="node_10.x"
+ DISTRO=$(lsb_release -c -s)
+ echo "deb https://deb.nodesource.com/${NODEREPO} ${DISTRO} main" | sudo tee -a /etc/apt/sources.list.d/nodesource.list
+ wget https://deb.nodesource.com/gpgkey/nodesource.gpg.key
+ sudo apt-key add nodesource.gpg.key
+ sudo apt update
+ sudo apt install nodejs # bringt npm mit
+
=== Etherpad ===
-Etherpad-Lite liegt als Git-Repo in /var/lib/etherpad/etherpad-lite, wird aus [https://stratum0.org/wiki/Gapadriel/etherpad-service?action=raw /etc/systemd/system/etherpad.service] als User etherpad gestartet und loggt nach /var/log/syslog.
+Etherpad-Lite liegt als Git-Repo in /var/lib/etherpad/etherpad-lite, wird aus [https://stratum0.org/wiki/Gapadriel/etherpad-service?action=raw /etc/systemd/system/etherpad.service] als User etherpad gestartet und loggt nach /var/log/syslog.
+
+Einige Ãnderungen sind als Commits im Branch deploy eingepflegt. Diese beim Update bitte rebasen.
MySQL als Datenbank, siehe /var/lib/etherpad/etherpad-lite/settings.json.
Etherpad-Updates etc. bitte per sudo, nicht sudo -u etherpad. Aus Sicherheitsgründen soll der etherpad-Benutzer möglichst wenig irgendwohin schreiben können.
==== Update ====
-* systemctl stop etherpad.service
-* cd /var/lib/etherpad/etherpad-lite; sudo git fetch; sudo git checkout release/$version
-* danach einmal kurz sudo bin/run.sh und Ctrl-C, um eventuelle Abhängigkeiten zu installieren
-* systemctl start etherpad.service
+ 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 node_modules/ nicht schreiben soll. Stattdessen:
@@ -55,32 +87,38 @@ Admin-Login auf der Weboberfläche funktioniert zwar lesend, aber kann halt kein
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 chmod etherpad node_modules/ep_$plugin
+ sudo chown etherpad node_modules/ep_$plugin
sudo systemctl restart etherpad.service
- sudo chmod -R root node_modules/ep_$plugin
+ sudo chown -R root:root node_modules/ep_$plugin
==== Sonstiges ====
* /var/lib/etherpad/etherpad-lite/var/ muss für die Gruppe etherpad schreibbar sein, dort werden beim Start des Dienstes die minifizierten CSS/JS-Files abgelegt.
==== Installierte Plugins ====
-* ep_ether-o-meter
-* ep_headings2
-* ep_hide_referrer, aus https://gitli.stratum0.org/rohieb/ep_hide_referrer/commits/feature/auto-redirect
-* ep_infopanel
-* ep_latexexport
-* ep_markdown
-* ep_mediawiki
-** Abhängigkeit von ep_headings, kann aber danach wieder gelöscht werden, ep_headings2 ist ausreichend. sudo rm -r node_modules/ep_headings
-* ep_pad_activity_nofication_in_title [sic!]
-* ep_ruler
-* ep_scrollto
-* ep_stratum_faqlink, aus https://gitli.stratum0.org/stratum0/ep_stratum_faqlink.git
-* ep_subscript
-* ep_superscript
-* ep_table_of_contents
-* ep_stratum0_blogpreview, aus https://gitli.stratum0.org/kasalehlia/ep_stratum0_blogpreview.git
+ for module in \
+ ep_ether-o-meter \
+ ep_headings2 \
+ ep_infopanel \
+ ep_latexexport \
+ ep_markdown \
+ ep_pad_activity_nofication_in_title \
+ ep_scrollto \
+ ep_subscript \
+ ep_superscript \
+ ep_table_of_contents \
+ ep_mediawiki \
+ https://gitli.stratum0.org/rohieb/ep_hide_referrer/-/archive/feature/auto-redirect/ep_hide_referrer-feature-auto-redirect.tar.gz \
+ 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
== Log ==
+* Update auf etherpad-lite 1.6.5, deploy-Branch angelegt und [https://github.com/ether/etherpad-lite/pull/3280 font-size-Ãnderungen] revertet --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 23:16, 11. Apr. 2018 (CEST)
+* Update etherpad 1.6.1, ep_hide_referrer 0.0.13 + autoredirect --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 03:38, 21. Mär. 2017 (CET)
* Update ep_hide_referrer, fix URL detection: [https://github.com/JohnMcLear/ep_hide_referrer/pull/16/files]
* Update auf Etherpad-Lite v1.5.7 --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 00:35, 29. Jan. 2016 (CET)
* Unicode-Issues behoben, die den Server abstürzen lieÃen: [https://github.com/ether/etherpad-lite/issues/2516#issuecomment-79659984], [https://github.com/ether/etherpad-lite/pull/2862/files] --[[Benutzer:Daniel Bohrer|Daniel Bohrer]] 00:34, 29. Jan. 2016 (CET)