Text-Template now available on github

Today I’m publishing the first of a bunch of small spare-time projects on gibhub: Text-Template. (Also see: dermatthes.github.io/text-template)

Text-Template is a single-class template parser written in PHP i developed a few years ago and which is by now used by most of my private and business projects, especially when it comes to e-Mail Templates.

It supports conditions(if), loops (for) and filters – and does this using a set of (ugly) regex-code only. Even logic comparisons are parsed and handled by regular expressions.

It is quite well unit-tested (mainly to provide backward compatibility).

So – if you don’t want to waste your time on writing something like that your own – feel free to have your copy of Text-Template.

Posted in PHP, Programming, Uncategorized | Leave a comment

My new public profile on github

I just decided to reactivate my blog and publish some of my spare-time projects step by step using my new github-account: https://github.com/dermatthes

See you there.

Posted in Uncategorized | Leave a comment

Configuring wlan0 to use static ip in /etc/network/interfaces

Here is my configuration:

auto lo
auto wlan0
auto eth0

iface lo inet loopback
iface eth0 inet dhcp

allow-hotplug wlan0
iface wlan0 inet static
wpa-key-mgmt WPA-PSK
wpa-group TKIP CCMP

iface default inet dhcp

Posted in Uncategorized | Leave a comment

Installing PHPUnit on Ubuntu

pear channel-discover pear.symfony.com
pear channel-discover pear.phpunit.de
pear install pear.symfony.com/Yaml
pear install –alldeps pear.phpunit.de/PHPUnit

Posted in Uncategorized | Leave a comment

APC Smart-UPS RT 10.000 mit Auto-Shutdown

Herstellen der Verbindung mittels Konsole:

minicom -D /dev/ttyS0 -b 2400 -8

Benutzer und Passwort sind standardmäßig”apc”

Posted in Uncategorized | Leave a comment

Software RAID auf zwei iSCSI Targets

Speed-Limit für Raid-Syncronisation festlegen: (mindesten 1 MBit/s, maximal 10 MBit/s)

# sudo sysctl -w dev.raid.speed_limit_max=10000
# sudo sysctl -w dev.raid.speed_limit_min=1000

Posted in Uncategorized | Leave a comment

1&1 Server: Langsamer HDD-Zugriff – und was man dagegen machen kann

Billig und schnell verfügbar sind die 1&1 Server Angebote mit unlimitiertem Traffic.
Für 79 EUR mtl. gibts ordentlich Rechenpower – leider ohne ordentlichen Festplattendurchsatz.
(Schuld ist die Kombo aus Billighardware, Software-RAID und LVM).

Um einigermaßen MySQL Speed aus den Kisten rauszuziehen, muss der vorkonfigurierte Software-Raid-Verbund aufgelöst, die zweite Platte formatiert und auf /opt gemountet werden. (D.h. wir haben de facto kein Raid mehr)

Hier eine Kurzanleitung, was wir gemacht haben:

Festplatte failen lassen und rausziehen, danach neues Filesystem erzeugen:

# mdadm --fail /dev/md1 /dev/sdb1
# mdadm --remove /dev/md1 /dev/sdb1
# mdadm --fail /dev/md3 /dev/sdb3
# mdadm --remove /dev/md3 /dev/sdb3

# mkfs.ext4 /dev/sdb3

Danach /etc/fstab edtieren:

/dev/sdb3 /opt ext4 defaults,barrier=0,noatime 0 0

Dann MySQL auf /opt/mysql umstellen:

mv /var/lib/mysql /opt/
mkdir /var/lb/mysql
mount --bind /opt/mysql /var/lib/mysql

Danach sollte MySQL starten. (Symbolisches Linken von /var/lib/mysql klappt wegen Appamaor nicht)

Jetzt die ganzen Änderungen noch persistent machen:

/opt/mysql /var/lib/mysql none bind 0 0

Jetzt noch sicherheitshalber Grub updaten (möglicherweise auch nicht nötig).

# update-grub

Fertig ist unser Power-Server mit ohne Trafficlimit!

Posted in Uncategorized | Leave a comment

LaTeX Vector Graphics inclusion with Inkscape

Damit PDFLatex auch Vektorgrafiken ordentlich einbindet, müssen diese Vektorgrafiken im PDF Format vorliegen.

1) Datei öffnen in Inkscape.
2) Dokumentgröße auf Grafik zuschneiden (File -> Document Properties -> Resize to drawing or selection)
3) Speichern unter
Restrict to PDF version: 1.4
Alles abselektieren ausser Rasterize filter effects

Danach kann die Datei per

\includegraphics[width = \textwidth]{filename.pdf}

eingebunden werden

Posted in Uncategorized | Leave a comment

Create CSR/Key using OpenSSL for Thawte Certificate

openssl req -new -newkey rsa:2048 -nodes -out mydomain.de.csr -keyout mydomain.de.key -subj "/C=DE/ST=State/L=City/O=Company/CN=www.domain.de"

Make sure the domain specified as -subj/CN= equals exactly your domain (including/excluding www).

Posted in Linux | Leave a comment

Eclipse + Spket IDE + Ext.JS 4

Install Spket JavaScript IDE using the Eclipse Update Site. http://www.agpad.com/update

  • Go to Preferences > Spket > JavaScript Profiles
  • Click “New…” and enter “ExtJS”
  • Under ExtJS click “Add Library” and choose ExtJS
  • Click “Add File”. Choose the file sdk.jsb3 from the build-Path of your ExtJS library (extjs/build/sdk.jsb3)
Posted in Uncategorized | Leave a comment