KDE Plasma-Bildschirm flackert

Wenn der KDE-Plasma-Bildschirm flackert und dies bei Plasma mit Wayland-Compositor ausbleibt, hilft folgender Workaround:

In den KDE-Einstellungen bei “Hardware” den Punkt “Anzeige und Monitor” aufrufen, dort “Compositor” aufrufen und beim Punkt “Einzelbild zerreißen (Tearing) verhindern (VSync):” den Punkt “Nie” auswählen.

Veröffentlicht unter Linux, openSuse | Verschlagwortet mit , , | Kommentare deaktiviert für KDE Plasma-Bildschirm flackert

Workaround: Dropbox-Synchronisierung unter Linux ohne Ext4-Dateisystem

In weniger als zwei Wochen ist es soweit: der Linux-Client der Dropbox stellt die Synchronisierung unter Linux ein – außer User benutzen das Ext4-Dateisystem. Wer also beispielsweise ein XFS-Dateisystem benutzt wie ich, der ist außen vor.

Zum Glück gibt es inzwischen aber einen Workaround, der darauf fußt, wie Dropbox erkennt, auf welchem Dateisystem es läuft (Originalbeitrag hier). Zunächst muss man eine kleine C-Datei dropbox_ext4.c mit folgendem Inhalt erstellen:

#define _GNU_SOURCE
  #include <stdlib.h>
#include <sys/vfs.h>
#include <linux/magic.h>
#include <dlfcn.h> 

int (*orig_statfs)(const char *path, struct statfs64 *buf) = NULL;
int statfs64(const char *path, struct statfs64 *buf) {
 
if (orig_statfs == NULL) {
orig_statfs = dlsym(RTLD_NEXT, "statfs64");
}
 
int retval = orig_statfs(path, buf);
 
if (retval == 0) {
buf->f_type = EXT4_SUPER_MAGIC;
}
 
return retval;
}

 

Diese Datei kompiliert man mit dem Befehl: 
gcc -shared -fPIC -ldl -o libdropbox_ext4.so dropbox_ext4.c

Zum Abschluss muss man noch den Starbefehl des Dropbox-Clients von dropbox -i in folgenden Befehl ändern (kann zum Beispiel in den KDE-Systemeinstellungen unter Starten und Beenden eingetragen werden):

LD_PRELOAD=/path-to/libdropbox_ext4.so ~/.dropbox-dist/dropboxd

Das /path-to/ muss selbstverständlich noch durch eine korrekte Pfadangabe ersetzt werden.

[UPDATE]: Eine weitere Anleitung gibt es hier.

 

Veröffentlicht unter Linux | Verschlagwortet mit , , , | Kommentare deaktiviert für Workaround: Dropbox-Synchronisierung unter Linux ohne Ext4-Dateisystem

Video-Probleme in firefox auf openSuse-Leap 42.3

Seit Mitte Dezember haben Nutzer von openSuse-Leap 42.3 das Problem, dass Videos aus dem Firefox-Browser heraus nicht mehr korrekt angezeigt werden. Das betrifft vor allem Facebook und Youtube.

Die Ursache ist ein Mix aus Multimeda-Codecs von den originalen openSuse-Repositorys und denen des Packman-Repository. Das Problem lässt sich deshalb aber auch ganz einfach lösen:

Einfach Yast2 aufrufen und dort “Software installieren”. Dann den Reiter “Installationsquellen” auswählen und dort das Packman-Repository. Dann nur noch oben auf “Wechsel von Systempaketen” klicken, das Update bestätigen – und shcon funktioniert wieder alles.

Veröffentlicht unter Firefox, Linux, openSuse | Verschlagwortet mit , , , , , | Kommentare deaktiviert für Video-Probleme in firefox auf openSuse-Leap 42.3

tails 3.1 und Optimus-Grafik

tails (the amnesic incognito live system) ist ein Linux-System zum Arbeiten am Computer, ohne dort Spuren zu hinterlassen. Es verfügt außerdem über sichere Internet-Zugänge über das Tor-Netzwerk. Derzeit liegt es in der Version 3.1 vor.

Diese Version hat jedoch den Fehler, dass sie nicht auf Systemen startet, die den Nouveau-Treiber für Nvidia-Grafikkarten verwenden – z.B. auch Systeme mit Optimus-Grafik. Um auf diesen Systemen tails 3.1 doch starten zu können, muss man beim Erscheinen des Boot-Menues die Leertaste drücken und folgende Startoption anfügen:

modprobe.blacklist=nouveau

Hinweis: auf der beim Boot-Menue eingestellten englischen Tastatur befindet sich das =-Zeichen dort, wo sich auf der deutschen Tastatur die Akzente befinden.

Veröffentlicht unter Datenschutz, Linux | Verschlagwortet mit , , , | Kommentare deaktiviert für tails 3.1 und Optimus-Grafik

VMWare-Player 12.5.7 und openSUSE Leap 42.3

Problem: nach dem Upgrade auf openSUSE Leap 42.3 funktioniert das Kompilieren der Kernel-Module des VMWare-Plaer 12.5.7 nicht mehr.

Lösung: Unter diesem Link zwei korrigierte Modulquellen (vmmon.tar und vmnet.tar im Verzeichnis /usr/lib/vmware/modules/source) herunterladen. Dann funktioniert es einwandfrei. Dank an Hendrik Woltersdorf.

Veröffentlicht unter Linux, Virtualisierung | Verschlagwortet mit , | Kommentare deaktiviert für VMWare-Player 12.5.7 und openSUSE Leap 42.3

Mac OSX auf Linux mit VirtualBox

Wenn man gerade mal keinen Mac zur Verfügung hat und trotzdem auf OSX angewiesen ist, ist es möglich, das Apple-Betriebssystem in einer virtuellen Maschine laufen zu lassen. Das ist eigentlich legal, da die Apple-Lizenzbedingungen es seit der OSX-Version 10.7 erlauben, OSX auch in einer virtuellen Maschine auszuführen. Allerdings gilt dies nur, wenn die Virtualisierung auf einem Apple-Computer erfolgt. Auf Linux- oder Windows-PCs besteht hier eine rechtliche Unsicherheit. Nichtsdestotrotz hat die Community nach Möglichkeiten gesucht, OSX auf Linux-Maschinen zum Laufen zu bringen. Ich beschreibe hier den Weg, den ich gegangen bin.

Voraussetzungen: Virtual Box 5.10.0, ISO-Datei von OSX 10.6 “Snow Leopard”

Erzeugen der virtuellen Maschine mit folgenden Daten:

  • Name: OSX_aktuell
  • Typ: OSX
  • Version: El Capitan
  • Hauptspeicher: 4096 MB
  • Zwischenablage: bidirektional
  • Hauptplatine: Diskette abwählen!
  • 1 Prozessor
  • Bildschirm: 128 MB
  • Massenspeicher: 60 GB

Anpassen der virtuellen Maschine mit dem Programm VBoxManage (zunächst VirtualBox beenden, dann in der Konsole folgende Befehle ausführen:

VBoxManage modifyvm "OSX_aktuell" --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
VBoxManage setextradata "OSX_aktuell" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"
VBoxManage setextradata "OSX_aktuell" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
VBoxManage setextradata "OSX_aktuell" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-F2238BAE"
VBoxManage setextradata "OSX_aktuell" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "OSX_aktuell" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1

Dann Virtualbox starten und OSX von der “Snow Leopard” Installations-CD installieren (wie auf einem “normalen” Mac). Dann die Softwareaktualisierung ausführen (mindestens zweimal). Anschließend im App-Store OSX “El Capitan” downloaden und das Installationsprogramm ausführen.

Danach noch folgende Anpassung der Bildschirmauflösung auf 1440 x9 00 Bildpunkte vornehmen:

VBoxManage setextradata "OSX_aktuell" "VBoxInternal2/EfiGopMode" 4

und schließlich die Zahl der Prozessoren auf 2 erhöhen. Fertig

Veröffentlicht unter Linux, Mac, OSX, VirtualBox, Virtualisierung | Verschlagwortet mit , , , | Kommentare deaktiviert für Mac OSX auf Linux mit VirtualBox

Optimus-Grafik mit Prime

Wer einen Laptop mit Optimus-Grafik hat – also eine Intel-Grafik, die den Bildschirm steuert und für alle “normalen” Darstellungsaufgaben zuständig ist und dazu eine Nvidia Grafik (ich habe z.B. die GeForce GTX 670 M), die für schnelle 3D-Anwendungen und Spiele zuständig ist – hat(te) unter Linux oft Probleme. Meist läuft nur die Intel-Grafik und der Nvidia-Teil ist nicht ansprechbar.

Zwischenzeitlich steht aber mit DRI_PRIME eine Methode zur Verfügung, die es ermöglicht diese sogeannten Hybrid-Grafiken als schnelle OpenGL-Renderer zu nutzen. Um dies zu nutzen wie folgt vorgehen:

$xrandr --listproviders

die Ausgabe sollte dann etwa wie folgt aussehen

Providers: number : 3
Provider 0: id: 0x8b cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 5 associated providers: 2 name:Intel
Provider 1: id: 0x62 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 1 associated providers: 2 name:nouveau
Provider 2: id: 0x62 cap: 0x7, Source Output, Sink Output, Source Offload crtcs: 2 outputs: 1 associated providers: 2 name:nouveau

Danach folgenden Befehl eingeben:

xrandr --setprovideroffloadsink nouveau Intel

Zur Überprüfung, ob alles geklappt hat, folgenden Befehl eingeben:

$ DRI_PRIME=1 glxinfo | grep "OpenGL renderer"

Es sollte dann folgende Ausgabe erscheinen

OpenGL renderer string: Gallium 0.4 on NVCE

Programme, die die Nvidia-Grafik nutzen sollen, können nun durch Voranstellen von DRI_PRIME=1 gestartet werden, z.B.

DRI_PRIME=1 glxgears
Veröffentlicht unter Linux | Verschlagwortet mit , , , | Kommentare deaktiviert für Optimus-Grafik mit Prime

Network-Manager besser als Wicked Services

Falls unter Linux (openSUSE 13.2) das WLAN oder andere Netzwerkverbindungen nicht mehr korrekt funktionieren, kann das daran liegen, dass neuerdings die “Wicked Services” zum Aufbau verwendet werden. Falls es dabei zu einem Fehler aufgrund fehlender Authentifizierung kommt, sollte man anstelle der “Wicked Services” den älteren “Network Manager” zur Steuerung der Netzwerkfunktionen auswählen. Dann läuft’s wieder.

Veröffentlicht unter Linux | Verschlagwortet mit , , , , | Kommentare deaktiviert für Network-Manager besser als Wicked Services

Steam friert ein

Nach einem Update oder Absturz von Steam kann es vorkommen, dass das Programm beim Start einfriert. In den Logdateien erscheint dann folgende Fehlermeldung

/home/buildbot/buildslave_steam/steam_rel_client_ubuntu12_linux/build/src/webhelper/../common/html/chrome_ipc_server.cpp (155) : Assertion Failed: !"Failed to bind shmem socket"

Um das Problem zu beheben muss (als root) die Datei /tmp/steam_chrome_shmem gelöscht werden. Danach startet das Programm wieder wie gewohnt.

Veröffentlicht unter Linux, Spiele | Verschlagwortet mit , , , | Kommentare deaktiviert für Steam friert ein

Qt-Standard-Buttons übersetzen

Wenn man QMessageBox::information oder ähnliches benutzt, sind die Standard-Buttons (z.B. QMessageBox::Yes) englisch beschriftet. Die deutsche Bezeichnung erscheint mit folgendem Code in der Main-Schleife:

QTranslator qttr;
qttr.load("qt_de", ".");
a.installTranslator(&qttr);

Wichtig ist dann nur noch, dass sich die mit Qt mitgelieferte Datei qt_de.qm im selben Verzeichnis befindet wie die ausführbare Programmdatei (unter Windows erledigt dies das Hilfsprogramm “windeployqt” mit).

Veröffentlicht unter Qt | Kommentare deaktiviert für Qt-Standard-Buttons übersetzen