Debian Squeeze: Trackpoint Geschwindigkeit

In die Datei /etc/rc.local folgenden Inhalt eintragen:

# By default this script does nothing.
 echo -n 120 > /sys/devices/platform/i8042/serio1/serio2/speed
 echo -n 176 > /sys/devices/platform/i8042/serio1/serio2/sensitivity
 exit 0

Für mich hat sich die Einstellung auf einem T61 als perfekt herausgestellt.
Gerne kann man ja noch mit den Werten 120 und 176 ein wenig spielen und diese direkt auf der Shell ausprobieren bevor man sie fest einträgt.

Debian Squeeze: TTY Auflösung Schriftgröße

Damit man auf einem Laptop mit einem WideScreen bei dem booten nicht von einer übergroßen Schrift erschlagen wird sollte man sich GRUB2 annehmen.
Als erstes sollte man herausfinden, welche Auflösung der Monitor unterstützt ( sollte eigentlich bekannt sein  und welche Auflösung die Grafikkarte (Framebuffer) bietet:

root@takeshi:/home/seraphyn# hwinfo --framebuffer
 02: None 00.0: 11001 VESA Framebuffer
 [Created at bios.464]
 Unique ID: rdCR.VSBbdW2x3qC
 Hardware Class: framebuffer
 Model: "NVIDIA G86 Board - NV_NB8M "
 Vendor: "NVIDIA Corporation"
 Device: "G86 Board - NV_NB8M "
 SubVendor: "NVIDIA"
 SubDevice:
 Revision: "Chip Rev"
 Memory Size: 14 MB
 Memory Range: 0xd5000000-0xd5dfffff (rw)
 --------------- gekürzt ----------------
 Mode 0x0348: 1400x1050 (+2800), 16 bits
 Mode 0x0349: 1400x1050 (+5600), 24 bits
 Mode 0x034a: 1600x1200 (+6400), 24 bits
 Mode 0x0352: 2048x1536 (+8192), 24 bits
 Mode 0x0360: 1280x800 (+1280), 8 bits
 Mode 0x0361: 1280x800 (+5120), 24 bits
 Mode 0x0362: 768x480 (+768), 8 bits
 Mode 0x0364: 1440x900 (+1440), 8 bits
 Mode 0x0365: 1440x900 (+5760), 24 bits
 Mode 0x0368: 1680x1050 (+1680), 8 bits
 Mode 0x0369: 1680x1050 (+6720), 24 bits
 Mode 0x037c: 1920x1200 (+1920), 8 bits
 Mode 0x037d: 1920x1200 (+7680), 24 bits
 Config Status: cfg=new, avail=yes, need=no, active=unknown

Ich kann mich nun Entscheiden, ob ich den Dezimalen Wert (1280×800) oder den Hexadezimalen Wert später eintragen möchte, die Wäre 0x0360 und ist in Zeile 19 zu finden.
Nun bearbeitet man die Datei /etc/default/grub und setzt GRUB_GFXMODE= auf seinen Wert:

# If you change this file, run 'update-grub' afterwards to update
 # /boot/grub/grub.cfg.

GRUB_DEFAULT=0
 GRUB_TIMEOUT=5
 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
 GRUB_CMDLINE_LINUX_DEFAULT="quiet"
 GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
 # This works with Linux (no patch required) and with any kernel that obtains
 # the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
 #GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
 #GRUB_TERMINAL=console

# The resolution used on graphical terminal
 # note that you can use only modes which your graphic card supports via VBE
 # you can see them in real GRUB with the command `vbeinfo'
 GRUB_GFXMODE=1280x800

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
 #GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
 #GRUB_DISABLE_LINUX_RECOVERY="true"

# Uncomment to get a beep at grub start
 #GRUB_INIT_TUNE="480 440 1"

Jetzt kommt das knifflige an der Sache, damit die Auflösung auch erhalten bleibt muss man eine Datei von Debian Squeeze umschreiben /etc/grub.d/00_header, keinen Fehler machen, sonst wird es mit der Generierung der /boot/grub/grub.cfg sehr schwer und ein booten kann unmöglich gemacht werden:

if loadfont `make_system_path_relative_to_its_root "${GRUB_FONT_PATH}"` ; then
 set gfxmode=${GRUB_GFXMODE}
 load_video
 insmod gfxterm
 fi

Ändert man in :

if loadfont `make_system_path_relative_to_its_root "${GRUB_FONT_PATH}"` ; then
 set gfxmode=${GRUB_GFXMODE}
 set gfxpayload=keep
 load_video
 insmod gfxterm
 fi

Und kann danach mit einem update-grub2 die /boot/grub/grub.cfg neu schreiben lassen.
Wer noch Lust hat kann ja in der Datei /etc/default/grub sein bootloader Mario spielen lassen :
GRUB_INIT_TUNE=“1000 334 1 334 1 0 1 334 1 0 1 261 1 334 1 0 1 392 2 0 4 196 2″

Backup von bitlbee

Ich liebe Bitlbee.
Bitlbee ist ein Gateway für Instantmessengersevices und bietet mir unter irssi die Benutzung von Jabber, ICQ, MSN etc. Bitlbee mag wohl auch Identi.ca und Twitter unterstützen, aber für identi.ca nutze ich mein eigenes Perlscript, welches die Sache mehr als Gut erledigt.
Bitlebee findet sich in den FreeBSD-ports, sowie in Debian in den Repositories.
Wer gerne die Entwicklerversion nutzen möchte, kann in Debian

deb http://code.bitlbee.org/debian/devel/karmic/i386/ ./

zu seiner sources.list hinzufügen.
Erklären wie man bitlbee installiert werde ich nicht. Es gibt genug Anleitungen im Netz und bitlbee hilft einem auch bei der Accounterstellung.
Mit geht es nur einfach und strikt um das Backup, Weigerung der Übernahme bei einem Paketrebuild sind vorhanden, warum auch immer.
Zu sichern sind die Verzeichnisse /etc/bitlbee und /var/lib/bitlbee. Zu beachten sind vor allem die Rechte und die Besitzer der Dateien. Wenn jene nicht stimmen läuft ein identify $PASSWORT mit der Anmerkung man habe noch keinen Account erstellt in das Leere.

Debian Squeeze: /var/lib/dpkg/status Doppelpunkt wurde erwartet

Ein sehr schönen Fehler kann einen mit Debian treffen, wenn die automatische Vervollständigung genutzt wird und die Datei /var/lib/dpkg/status einen Fehler hat.
Wenn nun auch der Fehler schon etwas länger besteht und die Sicherheitskopie /var/lib/dpkg/status-old auch betroffen ist, muss man selbst den Fehler ausmerzen.

root@a31:/home/seraphyn# aptitude install pcregrep
 pcregrep -nM 'ns*n[^P]+' /var/lib/dpkg/status
 root@a31:/home/seraphyn# pcregrep -nM 'ns*n[^P]+' /var/lib/dpkg/status
 40789: It will get/update source code, compile and install a functional Enlightenment (e17).

What is Enlightenment?
 Enlightenment is a window manager. Enlightenment is a desktop shell.
 Enlightenment is the building blocks to create beautiful applications.
 Enlightenment, or simply e, is a group of people trying to make a new generation of software.
 .
 This package does not contain any binaries,
 Enlightenment will be compiled from source code.
 root@a31:/home/seraphyn# vi +40789 /var/lib/dpkg/status

Der Fehler ist ein fehlender Punkt in der Zeile 5, welcher der Maintainer des Paketes in der control-Datei des debs vergessen hat.
Zeile 4 gibt an in welchem Bereich sich der Fehler befindet und kann somit mit Zeile 13 behoben werden.
Wird dieser hinzugefügt ist Alles wieder in Butter.
Somit einen Bugreport schreiben und dem Maintainer zukommen lassen.

Neue Version von Browserstart

Wer viele Browser zur Webentwicklung, oder einfach aus Spaß installiert hat, kennt das Problem.
Ein Link in der Shell per alt+u angesteuert und angeklickt, es gehen auch grafische Anwendungen, und ein anderer Browser öffnet sich, obwohl schon einer offen ist.
Hier springt das Script Browserstart in die Bresche, als definitiver Standardbrowser angegeben, schaut es nach, welcher Browser offen ist und öffnet in jenem ein Tab.
Bei mir ist die Einstellungen, dass wenn kein Browser offen ist, Chromium gestartet werden soll, falls dieser nicht vorhanden ist, bitte den Opera starten.
Am besten legt man sich das Script in sein ~/bin/-Verzeichnis, macht es ausführbar und definiert es als Standardbrowser.
Bei mir ist es z.B. für die Shell:

URxvt.perl-ext-common: url-select
 URxvt.keysym.M-u: perl:url-select:select_next
 URxvt.underlineURLs: true
 URxvt.urlLauncher: /home/seraphyn/bin/browserstart

Enthalten sind die Browser: Opera, Firefox, Google-Chrome, Chromium
Natürlich kann man das Script auch sehr einfach erweitern für z.B. Konqueror, Galeon etc

#!/bin/bash
 order=(
 opera_new_tab
 firefox_new_tab
 google_chrome_new_tab
 chrome_new_tab
 chrome_new_win
 opera_new_win
 )

function mozlike_new_tab {
 if [ "`pidof $2-bin`" ]; then
 $2 -new-tab "$1"&
 else
 return 1
 fi
 }
 # new firefox tab
 function firefox_new_tab {
 mozlike_new_tab $1 firefox
 }
 # helper function for firefox_new_win and swiftfox_new_win
 function mozlike_new_win {
 $2 -new-tab "$1"&
 }
 # new firefox window
 function firefox_new_win {
 mozlike_new_win $1 firefox
 }
 function opera_new_tab {
 if [ "`pidof opera`" == "" ]; then
 return 1
 fi
 opera -newpage $1
 }
 # new opera win
 function opera_new_win {
 opera -newwindow $1
 }

function chrome_new_tab {
 if [ "`pidof chromium-browser`" == "" ]; then
 return 1
 fi
 chromium-browser --new-tab $1
 }

function chrome_new_tab {
 if [ "`pidof chrome`" == "" ]; then
 return 1
 fi
 google-chrome --new-tab $1
 }

function chrome_new_win {
 chromium-browser --new-window $1
 }

for i in `seq 1 ${#order[@]}`;
 do
 ${order[$i-1]} $1 && exit
 done

HowTo: Mit pfSense 1.2.3 facebook blocken

Es gibt sehr viele Ideen wie man Facebook blocken kann. Man kann die IP-Ranges eintragen, man kann sich die Mühe machen den DNS in eine andere Richtung zu biegen, oder einfach SquidGuard nutzen. Da bei mir schon ein SquidGuard mit Squid läuft um die Werbung zu filtern und gegen ein 1×1 Pixel großes GIF auszutauschen, nehme ich doch am besten jenen.
Dazu geht man in der Oberfläche von pfSense auf den Proxyfilter und dort in den Reiter Target Categories.
Dort legt man eine neue Kategorie wie folgt an:

Name: facebook
Domain List: facebook.com
Redirect mode: int error page
Redirect: No Facebook in this Network available
Log: Kann man, muss man aber nicht anschalten
Descrition: facebookblock

Abspeichern und in den Reiter Common ACL wechseln und die Target Rules öffnen.
facebookblock [facebook] auf deny setzen.
Abspeichern und in General settings Apply drücken um die Regeln zu aktivieren.

Nun bekommt der nette Facebooker/in diese Meldung in seinem Browser:

Request denied by pfSense proxy: 403 Forbidden
Reason: No Facebook in this Network available
Client address: DIE IP DES AUFRUFENDEN
Client name: DER CLIENTNAME
Client group: default
Target group: facebook
URL: facebook.com

Natürlich lassen sich auch noch etwas mehr Gründe dafür einfallen, aber es reicht ja schon zu sagen, das in diesem Netzwerk so etwas nicht gemacht wird ツ

Debian Squeeze: Google Contacts in mutt integrieren

Es gibt mehre Wege um die Googlekontakte in mutt zu integrieren, z.B. einmal kann man sich ein Cronjob schreiben und die VCF der kompletten Kontakte mit dem Perlbeispiel vcard2abook.pl aus dem Verzeichnis /usr/share/doc/abook/examples/ in das abook-Format umschreiben lassen. Dazu muss aber die Datei vcard2abbok.pl angepasst werden, da die Transformation nicht stimmt. Sprich man muss sich die contacts.vcf anschauen und dann in dem Abschnitt %conversions den Spaß anpassen.

Weiterlesen

ShortURLs für Serendipity simplified

Ein Plugin für goo.gl selber zu schreiben ist ziemlich Arbeit, aber dann bin ich auf eine Idee gestoßen, welche in Wirklichkeit so simpel ist, dass es Spaß macht sie zu nutzen, weil sie keine weitere Instanz erfordert und in Serendipity schon einen eigener URL-Short-Service steckt.
Das ganze wurde von Gregor Nathanael Meyer geschrieben und ist in seinem Blogpost Nur halb so schlimm: Eigene Short-URLs zu finden.
Ich frage mich, warum dies nicht schon in Serendipity eingepflegt wurde, denn der Post ist von 2009.
Ich hoffe, dass G.N. Meyer sich doch noch dazu bewegen lässt ein Plugin dafür zu schreiben ツ

Somit habe ich mir das ganze angeschaut und Gregor dann angeschrieben.
Es dauerte keine zwanzig Minuten und er schickt mir das PHP-File.
Ich habe dann das File in meinem Rahmen angepasst mit einem RO-Account für die DB und natürlich die .htaccess bearbeitet.
Wie man sich selbst überzeugen kann funktioniert das ganze Super.

In dem Rahmen habe ich auch gleich meine Twitter- und Identi.ca-Links unter den Einträgen angepasst und die entries.tpl in den Zeilen 61 und 62 von:

| <a href="http://twitter.com/home?status=http://got-tty.org{$entry.link|escape:url}" target="_blank"><span style="color: #9a6d6f;">Twitter Post</span></a>
 | <a href="http://identi.ca/notice/new?status_textarea=http://got-tty.org{$entry.link|escape:url}" target="_blank"><span style="color: #d2b48c;">Identi.ca Post</span></a>

in folgendes geändert:
[bash 1=“<a“ href=“http://identi.ca/notice/new?status_textarea={$entry.title} http://got-tty.org/{$entry.id} “ 2=“target="_blank"><span“ 3=“style="color:“ 4=“#9a6d6f;">Twitter“ 5=“Post</span></a>“ 6=“|“ 7=“<a“ 8=“target="_blank"><span“ 9=“style="color:“ 10=“#d2b48c;">Identi.ca“ 11=“Post</span></a>“ 12=“|“ 13=“<span“ 14=“style="color:“ 15=“#5f9ea0;">ShortURL:</span>“ 16=“<a“ 17=“href="http://got-tty.org/{$entry.id}">http://got-tty.org/{$entry.id}</a>[/bash“ language=“|“]
Super Sache, Thx für die gute Idee

Rehack Chrome goo.gl shortener + share on twitter für identi.ca

Ja, Twitter, dafür gibt es einiges, aber wenn man mal eine Page an identi.ca melden möchte, welches ich favouritisiere, dann sieht es mau aus.
Somit habe ich die Erweiterung goo.gl shortener + share on twitter installiert und sie zu einem goo.gl shortener + share on identi.ca umfunktioniert.
Dazu geht man das Verzeichnis $HOME/.config/chromium/Default/Extensions/fdndabnoclcmkbdgakdhdpjghagfnapj/1.2_0 und ändert dort in der Datei googl.htmlin Zeile 92 den Aufruf der URL in:

url : "http://identi.ca/notice/new?status_textarea="+tab.title + " "+shorturl

um
Wer mag kann nun noch das twitter.png in ein identica.png ändern usw.
Wer Lust hat kann auch gleich eine neue Extension daraus machen und jene hochladen ツ

debian mount.nfs operation not permitted

mount.nfs operation not permitted in dem ersten Moment dachte ich mir, wie kann das gehen?!?!?
Überprüfen /etc/exports beim Server Kein Fehler
Überprüfen /etc/fstab beim Client Kein Fehler
Es liegt einfach daran, dass Squeeze versucht per NFSv4 auf den Server zuzugreifen.
Somit ein user,rw,noauto,nfsvers=3,wsize=32768,rsize=32768 in die Datei /etc/fstab und Server, Host, vor allem der User freuen sich.

Es bleibt die nächsten Tage bei solchen Shorties, da meine Hand immer noch gestaucht ist und furchtbar schmerzhaftes Tippen bereitet.
Entschuldigung….