Aus Linux-Magazin 01/2002

Tipps & Tricks

Nicht, dass wir gerade eine wurmfreie Zeit hätten, aber es hat sich wenig Berichtenswertes ereignet. Zeit also, sich mit den normalen Dingen des Linux-Alltags zu beschäftigen.

Während die Würmer Code Red, Nimda und wie sie alle heißen[1], immer noch scheinbar unausrottbar durchs Netz geistern, ist in dieser Ausgabe von etwas profaneren Dingen die Rede.

Unkomplizierte Softwarepakete

Die Ausgabe 10/01 des Linux-Magazins stellte unter anderem den ESP-Paketmanager vor[2]. Er ist optimal geeignet für größere Projekte und die Übersetzung für unterschiedliche Plattformen, aber Overkill für den Heimanwender, der nur seine Maschine sauber halten möchte. Dafür gibt es jedoch seit geraumer Zeit »checkinstall«[3].

Die Anwendung ist denkbar simpel: Statt »make install« ruft der Benutzer »checkinstall make install« auf. Nun wird die komplette Installation mit Hilfe eines weiteren Programms namens »installwatch« überwacht. Der Vorteil ist, dass »checkinstall make install« aus den soeben installierten Dateien ein RPM-, Slackware- oder Debian-Package erstellt und es dann nochmals installiert, um einen Eintrag in der Paketverwaltung zu bekommen (ähnlich wie »rpm -ba« zwar ein Paket übersetzt und installiert, es jedoch nicht in die RPM-Datenbank einträgt).

Nun kann man ohne Probleme mit dem entsprechenden Paketverwaltungstool die kompilierten Programme ohne Probleme sauber deinstallieren. Zudem hat man eine Sicherungskopie der kompilierten Programme. Wer sein System neu installieren muss, kann sich die Neuübersetzung sparen, da nur noch die auf einem externen Medium gesicherten Pakete einzuspielen sind.

Pixel zu Vektoren

Bisweilen steht man vor dem Problem, Pixelgrafiken in Vektorgrafiken verwandeln zu müssen, weil sich nur diese stufenlos skalieren lassen. Macht man das mit Pixelgrafiken in einem Grafik- oder Zeichenprogramm wie Gimp oder Xfig, sind störende Artefakte der Skalierung unvermeidlich. Die Anwendung von Blur- oder Wischerfunktionen macht das Bild aber höchstens unscharf und ist daher nicht zweckdienlich.

Abhilfe schafft zumindest bei halbwegs einfachen Grafiken Martin Webers Tool Autotrace[4]. Es konvertiert Bitmaps in Vektorgrafiken, die man zur weiteren Verarbeitung in ein Zeichenprogramm laden kann. Die Methode ist hierbei so einfach wie effektiv: Möglichst große Bereiche mit gleichen Farbwerten fasst es über Splines und Bezierkurven zu geschlossenen Flächen zusammen.

Die aktuelle Version 0.27a setzt auf Imagemagick 5.2.1 und Libpng 1.0.6 auf. An Ausgabeformaten bietet Autotrace ER, EMF, EPS, AI, SK, P2E, SVG, SWF, DXF, DXF12 sowie FIG, also so ziemlich jedes halbwegs gängige Vektorformat. Für die Konvertierung selbst steht eine ganze Reihe Stellschrauben zur Verfügung; so lassen sich etwa diverse Schwellenwerte für die Linienverfolgung und Eckenerkennung einstellen. An Dokumentation gibt es derzeit nur ein Readme, das allerdings recht ausführlich ist.

In der Regel macht Autotrace das alles recht selbsttätig. Unter Umständen ist aber etwas händische Nacharbeit notwendig. Im konkreten Fall war für die Herstellung einer Ersatz-Gerätefrontplatte ein schwarzweißes Herstellerlogo aus einer PDF-Broschüre in Xfig zu verkleinern, ohne dass die berüchtigten Treppenstufen-Effekte auftreten. Das Logo wurde dazu möglichst bildschirmfüllend mit »xv« per Screenshot eingefangen, invertiert und als PNM-Datei (Graustufen) gespeichert; Autotrace wandelte es dann nach FIG.

Es stellte sich heraus, dass Autotrace die kaum sichtbaren Graustufen-Übergänge an den Kanten sauber in kleine und kleinste Flächen gewandelt hatte, die manuell gelöscht werden wollten. Das Ergebnis ließ sich dann einwandfrei skalieren; Xfig unterstützt dazu einen Modus, der das Seitenverhältnis nicht verändert.

Mousewheel- Anbindung für Emacs

Ganz im Zeichen der Zeit spielen die Radmäuse eine immer größere Rolle; man bekommt fast keine Mäuse mehr ohne. Unter X11 ist generell die Einbindung mit Hilfe von Imwheel ein Kinderspiel. Wer aber nicht seitenweise, sondern vielleicht immer um zehn Zeilen blättern möchte, muss seine ».imwheelrc« etwas erweitern:

"emacs"
None,           Down,   Down, 10
None,           Up,     Up, 10

Hier kann man statt Sprüngen von je zehn Zeilen auch jede beliebige andere Zahl einstellen.

Das Beispiel funktioniert so für Xemacs (Bezeichner »emacs«); für andere Versionen ist der Bezeichner falls erforderlich anzupassen. Der Bezeichner (genauer: der X11-Fenstername) findet sich mit Hilfe von »xwininfo«.

Für die korrekte Funktion von Imwheel muss in »XF86Config« freilich Folgendes definiert sein:

Option  "ZAxisMapping" "4 5"

Mit den »PageUp«- und »PageDown«-Tasten auf der Tastatur kann man weiterhin seitenweise blättern. Ähnlich lässt sich Imwheel für jede denkbare X-Anwendung konfigurieren.

Exakte Uhrzeiten mit Kernel 2.4.9

Die beste Möglichkeit, eine Serveruhr genau einzustellen, bietet nach wie vor der lokale Anschluss eines DCF77-Empfängers. Damit ist die Serverzeit unabhängig von einem funktionierenden Netzwerk. Leonard Poetterings Tool DCF77[5] setzt auf den kleinen Parallelport-Empfänger des Elektronik-Versenders Conrad[6] auf (die Bestellnummer ist 967602).

Mit Kernel 2.4.9 lässt sich »dcf77.c« jedoch nicht mehr fehlerfrei übersetzen; ihm fehlt ein Include von »linux/spinlock.h«. Außerdem gibt es noch ein kleineres Jahr-2000-Problem mit der Jahreszahl, da das DCF77-Protokoll diese nur zweistellig liefert. Hier ist daher vor 70 einfach 100 zu addieren – dann ist DCF77 zumindest theoretisch bis ins Jahr 2069 verwendbar. Ein kleines Patch für diese Operation ist im Web unter[7] verfügbar.

Netscape, hast du Töne?

Netscape in der Version 6 und das ihm zugrunde liegende Mozilla 0.93 haben eine manchmal unangenehme Eigenart, wenn man die OSS-Audiotreiber direkt nutzt: Sie versuchen beim Start die Datei »/dev/dsp« zu öffnen. Wenn die aber belegt ist, beispielsweise durch ein laufendes XMMS, dann steht der jeweilige Prozess minutenlang, bis er endlich einen Timeout bekommt.

Während dieser Zeit ist auf dem Bildschirm nichts zu sehen; für den Anwender sieht es daher so aus, als sei der Start fehlgeschlagen. Gerade für die Benutzer mausbedienter Oberflächen kann das extrem verwirrend sein.

Abhilfe schafft nur, andere Audio-Tools auf ein anderes Device zu setzen, beispielsweise auf »/dev/dsp1«. Bei XMMS geht das unter “Options | Preferences | Audio I/O Plugins«. Dann klappt’s auch mit dem Browser.

Happy hacking! ( hmi)

Infos

[1] “Von Würmern,Mainboards, Tastaturen und PDFs”, Linux-Magazin 10/01, S. 72

[2] Christoph Dalitz: Flexible Verpackung, Der ESP-Paketmanager; Linux-Magazin 10/01, S. 68, auch online unter: [https://www.linux-magazin.de/ausgabe/2001/10/]

[3] Checkinstall: [http://asic-linux.com.mx/~izto/]

[4] Autotrace: [http://autotrace.sourceforge.net/]

[5] DCF77: [http://www.stud.uni-hamburg.de/users/lennart/projects/dcf77/]

[6] [http://www.conrad.de/]

[7] DCF77-Patch: [http://www.muc.de/~hm/linux/dcf77.diff]

LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben