FreeBSD Sammlung
Im folgenden werden zu ausgesuchten FreeBSD-Ports Lösungen für Installations- oder Anwendungsprobleme dargestellt. Außerdem finden sich Hinweise zu Ports, die entweder vom Autor geschrieben (math/saga, math/ggobi) oder fehlerbereinigt (sysutils/xosview, games/jools) wurden.
SAGA GIS 6.1.0
Mit SAGA GIS existiert eine leistungsfähige GIS-Version,
die auf verschiedenen Plattformen (FreeBSD, Linux und Windows) lauffähig ist. SAGA GIS enthält nicht nur
eine eigene grafische Oberfläche (GUI), sondern kann auch von der Kommandozeile (shell) aus angesprochen
werden. Diese Funktionalität wird unter anderem gerne von R Usern
mittels des R Package
Um SAGA GIS nativ unter FreeBSD übersetzen und installieren zu können, waren nur wenige Anpassungen an den Linux-Sourcen notwendig (siehe SAGA Linux-Version 2.0.8). Diese Anpassungen wurden für mehrere SAGA GIS Versionen als offizielle Ports unter Bug 207693 (Drop LDFLAGS=opencv which causes overlinking), Bug 207565 (Version 2.2.4), Bug 205491 (Version 2.2.3), Bug 203899 (Version 2.2.2), Bug 203508 (Version 2.2.1), Bug 201329 (Version 2.2.0), Bug 198357 (Version 2.1.4), Bug 191491 (Version 2.1.2), PR 187795 (Version 2.1.1), PR 180366 (Version 2.1.0), PR 162858 (Version 2.0.8), PR 156948 (Version 2.0.7), PR 152410 (Version 2.0.6), PR 150157 (Version 2.0.5) und PR 140559 (Version 2.0.4) eingereicht. Der aktuelle Port findet sich im Portstree unter math/saga.
Ab Version 2.1.0 werden Multiprocessing, Unicode, LAS und OpenCV unterstützt. Karten (maps) können direkt als mehrseitige PDF-Datei zusammengestellt und gespeichert werden. Außerdem gibt es nun man-pages, eine Einbindung in Freedesktop-kompatible Oberflächen und die sogenannten SAGA-Tips, ein kleines Begrüßungsfenster mit interessanten und wissenswerten Kurzinformationen.
Ältere Unix-Versionen von SAGA GIS haben ein
Der Fehler tritt nicht auf (und einige weitere Ungereimtheiten im Zusammenhang mit Lokalisation auch nicht), wenn beim Aufruf älterer SAGA GIS Versionen die Lokalisation zurückgesetzt wird. Ich habe dafür ein kleines Script verwendet, über welches SAGA GIS aufgerufen wird:
#!/bin/sh
export LANG=C
/usr/local/bin/saga_gui &
Seit dem 16.01.2010 existiert zur Installation ein Wiki auf der SAGA-Projektseite, das ich für Anfänger bewusst einfach gehalten habe.
Quantum GIS 2.18.4
Seit Version 2.2.0 hat Wen Heping die 'maintainership' für Quantum GIS an mich abgetreten. Vielen Dank für seine langjährige Arbeit.
OpenJUMP 1.11.0
OpenJUMP ist ein Java-basiertes GIS-Werkzeug, welches den Vorzug hat, direkt aus GIS-Datenbanken wie PostGIS per SQL abgefragte GIS-Daten zu visualisieren.
Bis zur Version 1.4.0.3 waren noch einige Anpassungen notwendig, um OpenJUMP mittels OpenJDK lauffähig zu bekommen. Es wird empfohlen, die aktuelle Version 1.7.1 zu verwenden, da diese besser in das Dateisystem eingepasst wurde, zahlreiche Bugfixes enthält, PostGIS nun gut integriert ist und es auf Java-Seite einige Verbesserungen gibt, siehe Bug 193430 und PR 180093. Die aktuelle Version enthält neben einer aktualisierten Programmversion noch zahlreiche Plugins, eingebunden über die sogenannte Plus-Version von OpenJUMP.
PostgreSQL 9.5.9
- PostgreSQL mit GEOS-Einbindung
Wenn die Erweiterung PostGIS ihre GEOS-basierten Fähigkeiten voll einsetzen soll, ist es ratsam, die
Datenbank PostgreSQL mit gesetzter Umgebungsvariablen
setenv LDFLAGS -lstdc++
cd /usr/ports/databases/postgresql90-server
make clean && make install
unsetenv LDFLAGS
- Datentyp "hstore" aktivieren
Der Datentyp
psql -e -d MYGISDATABASE -f '/usr/local/share/postgresql/contrib/hstore.sql'
Nun kann dieser Datentyp verwendet werden.
PostGIS 2.3.3
- ESRI-Shapefile Konverter mit grafischer Oberfläche aktivieren
PostGIS, installiert durch den Port databases/postgis, installiert das Tool
Der Vorteil des grafischen Loaders shp2pgsql-gui ist, das er auch innerhalb des Verwaltungstools
- ESRI-Shapefile Konverter in PgAdmin3 einbinden
Nach erfolgreicher Installation von databases/pgadmin3 befindet sich in
/usr/local/share/pgadmin3/ ein Skript
Dieser Patch wurde als PR 158599 beantragt und ist ab PgAdmin3 1.14.0 enthalten:
;
; PostGIS shp2pgsql-gui (Unix):
;
Title=PostGIS Shapefile and DBF loader
Command="$$PGBINDIR/shp2pgsql-gui" -h $$HOSTNAME -p $$PORT -U $$USERNAME -d $$DATABASE
Description=Open a PostGIS ESRI Shapefile or Plain dbf loader to the current database.
KeyFile=$$PGBINDIR/shp2pgsql-gui
Platform=unix
ServerType=postgresql
Database=Yes
SetPassword=Yes
Mit Hilfe dieser Angaben kann der Loader über den Menüpunkt Plugins in PgAdmin3 aufgerufen werden. Damit ist es nun auch unter FreeBSD möglich, ESRI-Shapefiles oder auch nur deren dbf-Dateien direkt in eine PostGIS-aktivierte PostgreSQL-Datenbank einzulesen.
GDAL 2.2.2
Mit dem Update von NetCDF (science/netcdf4) auf Version 4.1.3 wird auch ein Update
von HDF5 (science/hdf5-18) benötigt. Bei beiden Programmen sollte die Option
# pkg_delete -f hdf5
# cd /usr/ports/science/hdf5-18
# make clean && make install
# portupgrade -o science/netcdf4 science/netcdf
Um graphics/gdal unter FreeBSD erfolgreich übersetzen zu können, muss
graphics/jasper ab der Version 1.900 mit der Option
LASzip 2.1.0
LASzip ist eine Bibliothek, um ASPRS LAS formatierte LIDAR-Daten zu komprimieren. LIDAR, Abkürzung für englisch Light Detection And Ranging, auch LADAR (Laser Detection And Ranging), ist eine dem Radar sehr verwandte Methode zur optischen Abstands- und Geschwindigkeitsmessung sowie zur Fernmessung atmosphärischer Parameter. Statt Funkwellen wie beim Radar werden jedoch Laserstrahlen verwendet.
Die LASzip-Bibliothek wird als LGPL-lizensierte Stand-alone Software bereitgestellt, um anderer mit LAS Daten arbeitender Software das Lesen und Schreiben LASzip-komprimierter Daten zu ermöglichen. Z.B. können das BSD-lizensierte Programm libLAS und das LGPL-lizensierte Programm LASlib von der Verwendung von LASzip profitieren. LASzip komprimiert vollständig verlustfrei. Unhandliche LAS Dateien werden in kompakte LAZ Dateien mit nur zehn bis zwanzig Prozent der Originalgröße gewandelt. Dabei wird jedes einzelne Bit unverändert bewahrt. Auch SAGA GIS kann LIDAR-Daten (unkomprimiert als LAS oder komprimiert als LAZ) verwenden.
Der FreeBSD-Port archivers/laszip (siehe PR 163956) wurde in Vorbereitung des erwarteten Updates von devel/libLAS auf Version 1.7.0 portiert, damit SAGA GIS ab der nächsten Version mit dem neuen Kompressionsalgorithmus arbeiten kann.
GGOBI 2.1.11
GGobi ist ein OpenSource Visualisierungssystem zum Analysieren mehrdimensionaler Daten. Es bietet hochdynamische und interaktive Graphiken sowie Touren, aber auch bewährte Diagrammtypen wie Scatterplots, Barcharts oder Parallel-Koordinaten-Plots. Verschiedene Plots können verlinkt, mit Labeln versehen und so interaktiv durchforscht werden.
Ich habe das Programm nach FreeBSD portiert, um diese Technologie über das
NVidia Grafiktreiber
Wie bereits auf der Hauptseite erwähnt, existieren für FreeBSD 32-bit und 64-bit Grafiktreiber, die binär von NVidia bereitgestellt werden. Diese binären Treiber ermöglichen hardwarebeschleunigtes 3D, so dass anspruchsvollere Modelle, aber auch viele 3D-Spiele hochwertig funktionieren.
Jeweils kurz nach Erscheinen einer neuen Treiberversion steht diese auch im Portsystem
x11/nvidia-driver zur Verfügung, so dass die Installation recht einfach von statten geht.
Nach der Installation des Treibers muss nvidia_load="YES" in /boot/loader.conf eingetragen
werden und danach unbedingt neu gebootet werden. Ab FreeBSD 9.0 ist auch das nachträgliche Laden
und Entladen des Treibers mittels
In bestimmten Fällen kommt es vor, dass die Installation des Treibers zwar reibungslos verläuft, der Treiber beim Starten von Xorg trotzdem nicht vorhanden ist oder nicht funktioniert. Hier sind vor allem zwei typische Fehlerursachen zu unterscheiden:
-
Das Modul
nvidia.ko wurde tatsächlich nicht geladen. Das kann mittelskldstat geprüft werden. Als Ursache kommt häufig in Betracht, dass die Version des laufenden Kernels älter ist als die Kernelsourcen. Der NVidia-Treiber greift während der Installation auf die Kernelsourcen zurück, hinterher erwartet er einen Kernel dieser Version. Abhilfe schafft hier das Neuübersetzen des Kernels. Danach sollte nach einem Neustart das Treibermodul geladen werden. -
Das Modul
nvidia.ko ist geladen, Xorg bricht beim Hochfahren mit einer Fehlermeldung ab. Für dieses Verhalten können verschiedene Ursachen in Frage kommen. Häufig sind jedoch Unstimmigkeiten der 3D-Grafikroutinen verantwortlich. Z.B. kann durch Aktualisieren von Xorg-Treibern oder durch mehrfaches Installieren/Deinstallieren des NVidia-Treibers der Fall auftreten, das nicht mehr die von NVidia ausgetauschten GL-Libraries verwendet werden. Abhilfe schafft kann folgende Vorgehensweise schaffen: zunächst wird der NVidia-Treiber deinstalliert; danach werden die Xorg-Ports xorg-server, libGL und libglut neu- bzw. reinstalliert; dann kann auch der NVidia-Treiber wieder installiert werden. Neustart des Rechners bei FreeBSD < 9.0 nicht vergessen!
Surround Sound 5.1
Das ASUS Mainboard M4A88TD-V EVO/USB3 (siehe Eingesetzte Hardware) enthält in der AMD Southbridge SB600 den Soundchip Realtek ALC892. Mit diesem Chip kann Surround Sound 7.1 erzeugt werden.
Die hier aufgeführten Erläuterungen gelten für FreeBSD 11.0-CURRENT. Der HDA Soundtreiber wurde von Alexander Motin Anfang 2012 vollständig überarbeitet. Prinzipiell sind die meisten Aussagen aber zumindest auf FreeBSD 9.x übertragbar.
Der Soundtreiber snd_hda aktiviert standardmäßig 2.0 Sound, also Stereo. Sollen weitere
Kanäle verwendet werden, muss entsprechend konfiguriert werden.
Für die Einrichtung von
Mittels cat /dev/sndstat kann die vom System gefundene Sound-Hardware angezeigt werden. Wenn diese Informationen für die Verfeinerung der Konfiguration nicht ausreichen, kann der Verbose-Level mittels sysctl hw.snd.verbose=[123] erhöht werden.
Die im Sytem zusätzlich vorhandene NVidia-Grafikkarte enthält ebenfalls einen Audiocontroller,
um im Falle der Ausgabe von verschlüsseltem Videomaterial auch Ton durchschleifen zu können.
Der NVidia-HDA-Chip gibt an den auf der Grafikkarte vorhandenen Displayport aus. Während des Bootvorgangs
wird dieser Chip vor dem Realtek-Chip des Mainboards gefunden und bekommt damit auch eine niedrigere
Controller-Bezeichnung (hdac0) als der Realtek-Chip (hdac1). Jeder der beiden Audio-Controller wird mit
vier Devices aufgeführt:
#cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
Installed devices:
pcm0: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa0 kld snd_hda (1p:1v/0r:0v)
pcm1: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa1 kld snd_hda (1p:1v/0r:0v)
pcm2: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa2 kld snd_hda (1p:1v/0r:0v)
pcm3: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa3 kld snd_hda (1p:1v/0r:0v)
pcm4: <Realtek ALC892 HDA CODEC PCM (Rear Analog 7.1/2.0)> on hdaa4 kld snd_hda (1p:1v/1r:1v)
pcm5: <Realtek ALC892 HDA CODEC PCM (Front Analog)> on hdaa4 kld snd_hda (1p:1v/1r:1v)
pcm6: <Realtek ALC892 HDA CODEC PCM (Rear Digital)> on hdaa4 kld snd_hda (1p:1v/0r:0v)
pcm7: <Realtek ALC892 HDA CODEC PCM (Onboard Digital)> on hdaa4 kld snd_hda (1p:1v/0r:0v)
Als erstes muss festgelegt werden, welches Device die Standardausgabe übernehmen soll. Außerdem
soll jetzt die Anzahl gewünschter Kanäle, die Anzahl virtueller Kanäle sowie die
Vorverstärkung konfiguriert werden. Dazu werden folgende Zeilen in
hw.snd.default_unit=4
hw.snd.verbose=1
dev.pcm.4.play.vchanformat=s16le:5.1
dev.pcm.4.play.vchans=6
dev.pcm.4.eq_preamp=+5
Nach Neustart des Rechners sehen die Sounddevices jetzt so aus:
#cat /dev/sndstat
FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
Installed devices:
pcm0: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa0 kld snd_hda (1p:1v/0r:0v)
pcm1: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa1 kld snd_hda (1p:1v/0r:0v)
pcm2: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa2 kld snd_hda (1p:1v/0r:0v)
pcm3: <NVIDIA (0x0011) HDA CODEC PCM (HDMI/DP 8ch)> on hdaa3 kld snd_hda (1p:1v/0r:0v)
pcm4: <Realtek ALC892 HDA CODEC PCM (Rear Analog 7.1/2.0)> on hdaa4 kld snd_hda (1p:6v/1r:1v) default
pcm5: <Realtek ALC892 HDA CODEC PCM (Front Analog)> on hdaa4 kld snd_hda (1p:1v/1r:1v)
pcm6: <Realtek ALC892 HDA CODEC PCM (Rear Digital)> on hdaa4 kld snd_hda (1p:1v/0r:0v)
pcm7: <Realtek ALC892 HDA CODEC PCM (Onboard Digital)> on hdaa4 kld snd_hda (1p:1v/0r:0v)
Die Kontrolle der sechs Kanäle (5+1) erfolgte mittels
speaker-test -Dsurround51 -c 6 -twav
speaker-test 1.0.23
Wiedergabe-Gerät ist surround51
Stream-Parameter sind 48000 Hz, S16_LE, 6 Kanäle
WAV-Datei(en)
Rate ist 48000 Hz (angefordert: 48000 Hz)
Puffergröße von 3 bis 10922
Periodengröße von 1 bis 5461
Verwende maximale Puffergröße 10920
Perioden = 4
gesetzt: period_size = 2730
gesetzt: buffer_size = 10920
0 - Vorne links
4 - Mitte
1 - Vorne rechts
3 - Hinten rechts
2 - Hinten links
5 - Bass
Zeit pro Periode = 8,413922
Dieser Test zeigte für mein System, daß die vorderen Lautsprecher rechts und links korrekt angesprochen wurden, die hinteren dagegen stumm blieben. Center und Subwoofer wiederum gaben Sound ab. Zusammen (getestet z.B. mit multimedia/vlc) klang der Sound aus vier von sechs Lautsprechern allerdings nicht korrekt, so als wären zusätzlich noch Kanäle vertauscht. Um herauszubekommen, ob Kanäle vertauscht sind, muss etwas tiefer in die Trickkiste gegriffen werden.
Der Rechner wird neu gestartet, die Bootoption 7 (verbose) wird gesetzt und die mit hdaa4
beginnenden Zeilen werden untersucht. Interessant in Zusammenhang mit der Reihenfolge von Kanälen ist
für mein ASUS-Board vor allem folgender Ausschnitt:
hdaa4:
hdaa4: Audio Function Group at nid=1: 37 subnodes 2-38
hdaa4: NumGPIO=2 NumGPO=0 NumGPI=0 GPIWake=0 GPIUnsol=1
hdaa4: GPIO0: disabled
hdaa4: GPIO1: disabled
hdaa4: Original pins configuration:
hdaa4: nid 0x as seq device conn jack loc color misc
hdaa4: 17 99430140 4 0 SPDIF-out Fixed ATAPI Onboard Unknown 1
hdaa4: 18 411111f0 15 0 Speaker None 1/8 Rear Black 1
hdaa4: 20 01014010 1 0 Line-out Jack 1/8 Rear Green 0
hdaa4: 21 01011012 1 2 Line-out Jack 1/8 Rear Black 0
hdaa4: 22 01016011 1 1 Line-out Jack 1/8 Rear Orange 0
hdaa4: 23 01012014 1 4 Line-out Jack 1/8 Rear Grey 0
hdaa4: 24 01a19850 5 0 Mic Jack 1/8 Rear Pink 8
hdaa4: 25 02a19c60 6 0 Mic Jack 1/8 Front Pink 12
hdaa4: 26 0181305f 5 15 Line-in Jack 1/8 Rear Blue 0
hdaa4: 27 02214c20 2 0 Headphones Jack 1/8 Front Green 12
hdaa4: 28 411111f0 15 0 Speaker None 1/8 Rear Black 1
hdaa4: 29 4005e601 0 1 Line-out None Optical 0x00 White 6
hdaa4: 30 01456130 3 0 SPDIF-out Jack Optical Rear Orange 1
hdaa4: 31 411111f0 15 0 Speaker None 1/8 Rear Black 1
hdaa4: Patching widget caps nid=29 0x00400400 -> 0x00700400
hdaa4: Patching pin config nid=21 0x01011012 -> 0x01012014
hdaa4: Patching pin config nid=23 0x01012014 -> 0x01011012
hdaa4: Patched pins configuration:
hdaa4: nid 0x as seq device conn jack loc color misc
hdaa4: 17 99430140 4 0 SPDIF-out Fixed ATAPI Onboard Unknown 1
hdaa4: 18 411111f0 15 0 Speaker None 1/8 Rear Black 1 DISA
hdaa4: 20 01014010 1 0 Line-out Jack 1/8 Rear Green 0
hdaa4: 21 01012014 1 4 Line-out Jack 1/8 Rear Grey 0
hdaa4: 22 01016011 1 1 Line-out Jack 1/8 Rear Orange 0
hdaa4: 23 01011012 1 2 Line-out Jack 1/8 Rear Black 0
hdaa4: 24 01a19850 5 0 Mic Jack 1/8 Rear Pink 8
hdaa4: 25 02a19c60 6 0 Mic Jack 1/8 Front Pink 12
hdaa4: 26 0181305f 5 15 Line-in Jack 1/8 Rear Blue 0
hdaa4: 27 02214c20 2 0 Headphones Jack 1/8 Front Green 12
hdaa4: 28 411111f0 15 0 Speaker None 1/8 Rear Black 1 DISA
hdaa4: 30 01456130 3 0 SPDIF-out Jack Optical Rear Orange 1
hdaa4: 31 411111f0 15 0 Speaker None 1/8 Rear Black 1 DISA
hdaa4: 6 associations found:
hdaa4: Association 0 (1) out:
hdaa4: Pin nid=20 seq=0
hdaa4: Pin nid=22 seq=1
hdaa4: Pin nid=23 seq=2
hdaa4: Pin nid=21 seq=4
Von diesen Meldungen sind in unserem Zusammenhang die Zeilen wichtig, in denen nid 20 bis nid 23 vorkommt. Diese entsprechen den Buchsen für externe Lautsprecher mit den Farben Green, black, orange und grey. Auf den ersten Blick ist fast alles in Ordnung. Es irritiert nur, dass die seq Nummerierung der nids 20 bis 23 in der Reihenfolge 0,2,1,4 verläuft. Und tatsächlich liegt hier auch der Fehler. Die Beschaltung der Farben black und grey ist vertauscht.
Ein Tausch der Kanäle 21 und 23 kann über folgende sysctl-Sequenzen erreicht werden,
die beim Systemstart in /boot/device.hints übergeben werden:
# Anschluesse 'black' und 'gray' tauschen
hint.hdac.1.cad0.nid20.config="as=1 seq=0"
hint.hdac.1.cad0.nid21.config="as=1 seq=4 device=Line-Out color=Grey"
hint.hdac.1.cad0.nid22.config="as=1 seq=1"
hint.hdac.1.cad0.nid23.config="as=1 seq=2 device=Line-Out color=Black"
hint.pcm.4.eq=1
hint.pcm.4.vpc=1
Nach dem nächsten Rechnerstart funktionieren alle 5+1 Kanäle wie erwartet.
Firefox Plugins
- Flashplayer 11.2
Nach der erfolgreichen Installation des Ports (www/linux-f10-flashplugin11) und des Wrappers
(www/nspluginwrapper) muss dem Browser noch beigebracht werden, wie er auf das Plugin
zugreifen kann. Dafür wird als normaler User (also nicht superuser) noch folgender Link erzeugt:
> cd /usr/local/lib/browser_plugins
> nspluginwrapper -i /usr/local/lib/npapi/symlinks/linux-firefox/libflashplayer.so
Im User-Verzeichnis für Mozilla-Plugins habe ich dann noch folgenden Link gesetzt:
> ln -s /usr/local/lib/browser_plugins/npwrapper.libflashplayer.so ~/.mozilla/plugins/npwrapper.libflashplayer.so
Weiterführende Informationen sind im Web zu finden, z.B. unter
Aragorn's Blog
JDK18 unter 11.0-CURRENT
Eine Zeit lang konnte das Java Delevopment Kit von Sun nicht mehr unter 11.0-CURRENT übersetzt werden. Der Grund dafür ist ein geändertes Signal-Handling des Systems ab Revision r199827, was unter ports/141105 auch beschrieben wird. Für von diesem Verhalten betroffene FreeBSD-Revisionen kann Java dank des von Dima Panov angebotenes Patches funktionsfähig gemacht werden. Folgende Änderungen genügen, um das JDK erfolgreich bauen und installieren zu können.
Das Makefile (
.if (${OSVERSION} > 900002)
@cd ${WRKDIR} && \
${PATCH} -p2 < ${FILESDIR}/extrapatch-j2se-make-common-Defs-bsd.gmk
.endif
Unter
$FreeBSD: ports/java/jdk18/files/extrapatch-j2se-make-common-Defs-bsd.gmk,v 1.0 1970/01/01 10:00:00
fluffy Exp $
--- ../../j2se/make/common/Defs-bsd.gmk.orig Wed Dec 02 17:58:29 2009
+++ ../../j2se/make/common/Defs-bsd.gmk Wed Dec 02 18:50:16 2009
@@ -311,7 +311,7 @@
override HAVE_FILIOH = false
override HAVE_GETHRTIME = false
override HAVE_GETHRVTIME = false
-ifeq ($(OS_VENDOR),NetBSD)
+ifeq ($(OS_VENDOR),FreeBSD)
override HAVE_SIGIGNORE = true
endif
ifeq ($(OS_VENDOR),Apple)
Logitech QuickCam Pro 9000
Seit dem 17.01.2010 sind angepasste Ports vorhanden, mit denen eine Vielzahl moderner WebCams den aktuellen USB-Stack von FreeBSD verwenden kann. Im folgenden wir anhand der Quickcam Pro 9000 von Logitech gezeigt, wie die Konfiguration aussehen kann. Die Website des Autors Hans-Peter Selasky gibt weitere Hinweise.
Zunächst müssen einige Ports installiert werden, damit der Kontakt zwischen USB-Stack und Videotreiber
hergestellt werden kann. Als Programm zur Bilddarstellung habe ich
- multimedia/v4l_compat
- multimedia/cuse4bsd-kmod
- multimedia/libv4l
- multimedia/webcamd
- multimedia/pwcview
Damit die installierten Ports verwendet werden, müssen in drei Dateien noch Zeilen hinzugefügt werden.
Bereits während des Boot-Vorganges werden der Video4BSD- und der USB-Soundtreiber (für das Mikrofon der
WebCam) geladen:
/boot/loader.conf
cuse4bsd_load="YES"
snd_uaudio_load="YES"
In der rc.conf wird die Erlaubnis erteilt, dass der WebCam-Daemon gestartet werden darf:
/etc/rc.conf
webcamd_enable="YES"
Damit
/etc/devfs.conf
perm video0 0666
Danach sollte ein Reboot durchgeführt werden, damit das System alle Änderungen ausführen kann. Als normaler
User kann nun mittels
WindowMaker Network Devices
WMND (WindowMaker Network Devices) ist ein hochgradig anpassbares Netzwerk-Monitoring DockApp für WindowMaker und kompatible Oberflächen.
Seitdem 2009 größere Änderungen im
Xorg 7.7
- Mauserkennung und Deutsche Tastatur
Um in Xorg ab 7.4 bei aktiviertem HAL-Treiber weiterhin die Maus und eine deutsch belegte Tastatur
verwenden zu können, mussten folgende Dateien erzeugt werden. In der Datei
# cd /usr/local/etc/hal/fdi/policy/
# ls
100-x11-input.fdi 101-keyboard-input.fdi 102-mouse-input.fdi
# cat 100-x11-input.fdi
<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_driver" type="string">kbd</merge>
</match>
<match key="info.capabilities" contains="input.mouse">
<merge key="input.x11_driver" type="string">mouse</merge>
</match>
</device>
</deviceinfo>
# cat 101-keyboard-input.fdi
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_driver" type="string">kbd</merge>
<merge key="input.xkb.Model" type="string">pc105</merge>
<merge key="input.xkb.Layout" type="string">de</merge>
<merge key="input.xkb.Rules" type="string">xorg</merge>
<merge key="input.xkb.Variant" type="string">nodeadkeys</merge>
<merge key="input.xkb.Options" type="string">grp:caps_toggle</merge>
</match>
</device>
</deviceinfo>
# cat 102-mouse-input.fdi
<?xml version="1.0" encoding="utf-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.mouse">
<merge key="input.x11_options.Protocol" type="string">auto</merge>
<merge key="input.x11_options.Device" type="string">/dev/sysmouse</merge>
<merge key="input.x11_options.ZAxisMapping" type="string">4 5</merge>
</match>
</device>
</deviceinfo>