vermischte Anleitungen

Hier finden sich sämtliche Informationen, Anregungen und Umsetzungsbeschreibungen von verschiedenen Dingen, die noch in keine andere Kategorie passen. Auch hier gilt: es kommt hin, was mich zu längeren Nachforschungen trieb, die ich fortan anderen ersparen möchte :)


Etherpad auf Debian Lenny installieren

Die Anleitung lasse ich noch online - vielleicht will sich ja wirklich jemand noch etherpad antun... ich habe inzwischen Etherpad-Lite getestet und für wesentlich einfacher zu installieren und wesentlich schlanker in der Nutzung befunden...

Etherpad steht seit einiger Zeit quelloffen zur Verfügung und kann somit auf jedem beliebigen Rechner installiert werden. Da es momentan allerdings noch nicht im Repo der großen Distributionen angelangt ist, gestaltet sich diese Installation oft schwieriger als gewünscht. Es gibt ein paar Tutorials, die allerdings immer mal ein paar Schritte auslassen. Auch diese Anleitung wird nicht vollständig sein können, aber hat zumindest mir zur Installation von Etherpad geholfen. ;-)
Zunächst muss man bei Debian Lenny vorerst die Sid-Quellen in die apt-sourcen eintragen. Dazu ersetzt man in der Zeile der /etc/apt/sources.list , wo http://ftp.de.debian.org/debian lenny main non-free steht durch

deb http://ftp.de.debian.org/debian sid main non-free

und führt

apt-get update
apt-get install sun-java6-jdk

aus.
Die Ausgabe von

java -version

sollte nun java version 1.6.0_22 oder höher ausgeben. Ist dies nicht der Fall (wird beispielsweise gij angezeigt), muss man mit folgendem Befehl das eben installierte java von sun als standard-ausführungsdatei für den befehl java einstellen.

update-alternatives --config java

Anschließend braucht man noch scala, den mysql-server, libmysql-java und mercurial:

apt-get install scala mysql-server libmysql-java mercurial

Nun müssen noch einige Anpassungen in /etc/profile getätigt werden. Dazu werden folgende Zeilen hinzugefügt, so sie nicht schon vorhanden sind:

export PATH
export JAVA_HOME="/usr/lib/jvm/java-6-sun"
export SCALA_HOME="/usr/share/java"
export JAVA="/usr/bin/java"
export SCALA="/usr/bin/scala"
export PATH="/usr/bin:/usr/bin:/usr/local/mysql/bin:$PATH"
export MYSQL_CONNECTOR_JAR="/usr/share/java/mysql-connector-java-5.1.10.jar"
export JAVA_HOME SCALA_HOME JAVA SCALA MYSQL_CONNECTOR_JAR PATH
umask 022

Nun kann etherpad heruntergeladen werden:

hg clone https://etherpad.googlecode.com/hg/ /usr/local/etherpad

Um nicht erst die Terminalsession neu zu starten, werden die Variablen von oben nun exportiert:

export JAVA_HOME="/usr/lib/jvm/java-6-sun"
export SCALA_HOME="/usr/share/java"
export JAVA="/usr/bin/java"
export SCALA="/usr/bin/scala"
export PATH="/usr/bin:/usr/bin:/usr/local/mysql/bin:$PATH"
export MYSQL_CONNECTOR_JAR="/usr/share/java/mysql-connector-java-5.1.10.jar"
export mysql=mysql

Nun wird die Konfigurationsdatei an die Produktivstelle kopiert:

cd /usr/local/etherpad/trunk/etherpad
cp etc/etherpad.localdec-default.properties data/etherpad.local.properties
vim data/etherpad.local.properties

und editiert es so, dass folgende Einstellungen überschrieben/ neu geschrieben werden:
in data/etherpad.local.properties:

devMode = false
etherpad.adminPass = PASSWORT
etherpad.isProduction = true
etherpad.SQL_PASSWORD = PASSWORT
listen = 0.0.0.0:9000

Natürlich sollten die Passworte geändert werden...
in bin/setup-mysql-db.sh:

echo "create database ${db};" | ${mysql} -u root -p
echo "grant all privileges on ${db}.* to 'etherpad'@'localhost' identified by 'PASSWORT';"\
 | ${mysql} -u root -p

in src/main.js:

  var newurl = "http://EIGENE_DOMAIN.de"+request.path;

in /src/templates/pro/admin/admin-template.ejs:

 <div class="fpcontent">
   <table id="admin-layout-table">
     <tr>
       <% if (validLicense) { %>              <-- Zeile entfernen!!!
         <td width="1%" id="admin-leftnav">
           <%= renderAdminLeftNav() %>
         </td>
       <% } %>                  <-- Zeile entfernen!!!
       <td width="99%" id="admin-right">
         <%= getAdminContent() %>
       </td>

in /src/templates/framed/framedheader-pro.ejs:

 <div id="pro-topnav">
   <div id="pro-topnav-inner">
     <% if (validLicense && account) { %>  <-- Zeile entfernen!!!
       <%= renderProTopNav() %>
       <%= helpers.clearFloats() %>
     <% } %>                 <-- Zeile entfernen!!!
   </div>
 </div>

in /src/static/crossdomain.xml:

<allow-access-from domain="*.tokbox.com" to-ports="*"/>  <-- Zeile entfernen!!!
<allow-access-from domain="tokbox.com" to-ports="*"/>  <-- Zeile entfernen!!!
<allow-access-from domain="*.EIGENE_DOMAIN.de" to-ports="*"/>
<allow-access-from domain="EIGENE_DOMAIN.de" to-ports="*"/>

in /src/etherpad/pro/pro_utils.js:

 function getEmailFromAddr() {
   var fromDomain = 'EIGENE_DOMAIN.de';  <-- anpassen
   if (pne_utils.isPNE()) {

in /src/etherpad/globals.js:

 var SUPERDOMAINS = {
   'localbox.info': true, <-- Zeile entfernen!!!
   'localhost': true,
   'EIGENE_DOMAIN.de': true <-- anpassen!!!
 };

in /src/etherpad/control/pro/pro_main_control.js:

//    evalExpDate: licensing.getLicense().expiresDate, <-- auskommentieren!!!

Das Etherpad-System ist nun fertig zur Installation durch:

./bin/setup-mysql-db.sh

und kann mit

bin/run-local.sh

gestartet werden.

Nun sollte das System lauffähig unter Port 9000 auf das Erstellen von Pads warten.
Wenn das noch nicht der Fall seien sollte und derselbe Fehler auftritt, wie bei mir: 2: Collab operation rejected due to missing value, case 13, so sollte man in /src/etherpad/sessions.js folgende Änderungen vornehmen:

return "." + d;  <= austauschen gegen => return undefined;

Anschließend das System nochmal starten und hoffen, dass alles nun funktioniert (so wie bei mir) ;-)

News - Sidebar
Ubuntu Touch Backup und Restore
Ubuntu Touch ist nun seit mehr als zwei Jahren mein Betriebssystem der Wahl auf meinem Nexus 4. Leider habe ich mir irgendwie den Update-Mechanismus zerschossen und so kurzerhand beschlossen, das System neu aufzusetzen. Den Prozess habe ich in der ubuntu touch section dokumentiert.
Ableton MIDI CC Automation
In der Audio-Sektion wird nun kurz erläutert, mit welchem Hilfsmittel man im Arrangement View von Ableton Live MIDI CC Parameter eines externen Instruments automatisieren kann.
x0xb0x und Reason 7
In der Audio-Sektion habe ich kurz niedergeschrieben, wie der Sound einer x0xb0x in Reason 7 per MIDI-Clock synchron geroutet werden kann.
LaTeX-Workshop
In der LaTeX-Sektion werden inzwischen Folien und weiteres zu einem LaTeX-Workshop verlinkt.
ClusterGL
Unter Projekte->ClusterGL habe ich ein paar Schritte zur Nutzung von ClusterGL online gestellt.
NFC MobiDoc
Unter Projekte->NFC MobiDoc habe ich eine in einer Gruppe von 5 Stundenten inklusive mir umgesetzte NFC-basierte Krankenhausanwendung dokumentiert.
VotingTool
Unter Projekte->VotingTool habe ich ein Grailsbasiertes VotingTool online gestellt.
neues Design
Heute habe ich ein Geschenk von Max bekommen - ein neues schönes Design. Vielen Dank an dieser Stelle!
ROBERTA
Heute habe ich neben der Übersetzung ins Englische auch eine Featurelist für den Server aus dem ROBERTA-Projekt erstellt.
Git + Apache
Wer sein Git-Repository über HTTP mit Apache und aber ohne VirtualHosts (also ohne Subdomain) verfügbar machen will, findet unter Anleitungen -> Vermischtes nun eine entsprechende Anleitung.
ARM-Toolchain
Wie man einen gcc Toolchain für ARM aufsetzt, findet sich ab sofort unter Anleitungen -> ARM. Diesen nutze ich beispielsweise für die Programmierung von OpenBeacon USB 2-RFID-Tags.
SD-Karte kaputt
Nach dem Netzteil nun auch die SD-Karte: Unter Anleitungen -> Sheevaplug mein Rettungsweg.
Netzteil kaputt
Wem das gleiche Glück mit dem Sheevaplug beschieden, der findet unter Sheevaplug meinen Lösungsweg.
ATMEGA verfust
Wer einen seiner AVR Mikrocontroller verfust hat, findet unter Anleitungen -> AVR nun einen rettenden Beitrag.
Abschlussarbeit
Unter Anleitungen -> LaTeX habe ich eine Vorlage für eine Abschlussarbeit verlinkt.
Etherpad
unter Anleitungen -> Vermischtes findet sich ein Tutorial zur Installation von Etherpad auf Debian Lenny

Valid XHTML 1.0 Strict CSS ist valide!