Archiv für den Monat: Juni 2015

Shell: PDF aus HTML erstellen mit wkhtmltopdf

sudo apt-get install wkhtmltopdf xvfb xauth

(eventuell wird noch xserver-xorg Paket benötigt)

wkhtmltopdf nutzt das Webkit und braucht dafür den X-Server oder einen Framebuffer (xvfb).
xvfb braucht noch das xauth-Paket, um zu laufen.

Ausgabe unter virtuellem Framebuffer xvfb (hier: A4 mit Landscape statt Portrait):

xvfb-run -- /usr/bin/wkhtmltopdf -s A4 -O Landscape 'wktest.html' 'wktest.pdf'

Windows: Benutzerprofil kann nicht geladen werden

[ok – Windows 7 ist nicht Open Source, aber das Problem interessant]

Bei der Anmeldung kommt die Mitteilung „Benutzerprofil kann nicht geladen werden“ oder ein Hinweis, dass der Benutzerprofildienst nicht geladen werden kann.

– Rechner im abgesicherten Modus starten (F8 bei Boot)
– Anmelden an Konto mit Administratorrechten (kann auch das fehlerhafte Konto sein)
– Suche > Ausführen > „regedit.exe“
– Schlüssel: HKEY_LOCAL_MASCHINE\SOFTWARE\MICROSOFT\WindowsNT\CurrentVersion\ProfileList suchen
– Dort nach einem gleichlautenden Schlüssel (mit und ohne .bak) suchen
– Den Schlüssel ohne .bak mit Endung .old versehen (oder löschen)
– Beim Schlüssel mit .bak Endung diese entfernen (umbennnen)
– Den „state“-Wert im rechten Fenster des Editors auf „0“ setzen (steht oft 8000 drin).
– Registry-Editor schliessen und Rechner rebooten

nodejs: /usr/bin/env: node: No such file or directory

Wird nodejs über einen Paketmanager installiert, dann wird es als /usr/bin/nodejs (und nicht node) installiert.

Der Nodejs-Paketmanager npm erwartet aber node.js in /usr/bin/node und würde beim installieren eines Paketes folgende Fehlermeldung ausgeben:

/usr/bin/env: node: No such file or directory

Abhilfe schafft ein Symlink:

sudo ln -s /usr/bin/nodejs /usr/bin/node

Danach funktioniert dann auch der Nodejs-Paketmanager npm:

npm install -g bower

dpkg: warning: ‚ldconfig‘ not found in PATH or not executable

Problem:
Debian Jessie: Installieren von Nodejs schlug fehl.

Fehlermeldung:

dpkg: warning: 'ldconfig' not found in PATH or not executable
dpkg: warning: 'start-stop-daemon' not found in PATH or not executable
dpkg: error: 2 expected programs not found in PATH or not executable
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin
E: Sub-process /usr/bin/dpkg returned an error code (2)

Lösung:

sudo nano /etc/sudoers

Folgende Zeilen müssen vorhanden sein:

Defaults        env_reset
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

Codeigniter: Direkten Zugriff auf Dateien unterbinden

In der ersten Zeile folgendes unterbringen:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

Mit dieser Zeile wird der direkte Zugriff auf eine Datei verhindert (Aufruf über URL). Zugleich ist dieses Konstrukt übersichtlicher und kürzer als:

<?php
if (! defined(BASEPATH))
{
    exit('No direct script access allowed');
}