DIE BY THE SWORD

Transparenz unter Linux

Posted in PC by DieByTheSword on 28. Juni 2010

Viele kennen sicher den Compositions-Fenstermanager Compiz. Das kann sehr viel ist aber auch sehr schwer und zwingt einen eben Compiz als Fenstermanager zu nutzen. Manch einer, der nur Transparenz und Schatten sucht und dabei gleichzeitig nicht an einen Fenstermanager gebunden sein will, dem könnte xcompmgr gefallen. (Am Ende ein Screenshot für die ungeduldigen, oder die, die nur mal gucken wollen :P)

Bei meiner Suche nach einer Lösung des Problems nach „echten“ durchsichtigen Terminals bin ich also darauf gestoßen und erkläre hier kurz wie man das bewerkstelligt.

Zuerst installiert man sich die folgenden Programme: xcompmgr devilspie transset-df

Das geht unter Ubuntu und Debian folgendermaßen (als root):

apt-get install xcompmgr devilspie transset-df

Bei Debian muss man sich das Paket transset-df allerdings aus dem Entwicklungszweig „sid“ holen, weil es in Lenny noch nicht enthalten ist. Bearbeitet dazu eure /etc/apt/sources.list kopiert die Zeile und ersetzt lenny durch sid. Danach ein apt-get update und es sollte funktionieren. Danach empfehle ich allerdings das sid wieder herauszunehmen.

Dabei ist xcompmgr der Compositions-Manager, devilspie ein Programm um Fenster zu kontrollieren und transset-df ein Programm um Fenster transparent zu machen.

Je nachdem welchen Fenstermanager ihr nutzt, müsst ihr nun xcompmgr  und devilspie in den autostart packen. Bei Openbox wäre das z.B. die .config/openbox/autostart.sh oder aber in die ~/.xinitrc falls das der Fenstermanager unterstüzt.

Meine autostart.sh sieht bspw. so aus:

# Run the system-wide support stuff
. $GLOBALAUTOSTART
# Programs to launch at startup
eval `cat ~/.fehbg` &
# SCIM support (for typing non-english characters)
# Programs that will run after Openbox has started
xcompmgr &
devilspie -a &
(sleep 2 && tint2) &
(sleep 3 && mpd) &
Womöglich habt ihr nun nach der Installation noch keinen config-Ordner für devilspie, also erstellen wir den kurzerhand:
mkdir ~/.devilspie
Da devilspie Fenster kontrolliert brauchen wir nun ein script für die Transparenz. Erstellt also in diesem ordner eine Datei „opacity.ds“, ihr könnt sie auch „transparenz.ds“ nennen, wenn ihr wollt — wichtig ist nur die Endung .ds
Hier mein Inhalt:

if
(or
(is (window_class) „Leafpad“ )
(is (window_class) „Roxterm“ )
)
(begin
(spawn_async (str „transset-df -i “ (window_xid) “ 0.8″ ))
)
)
dabei werden die Programme Roxterm (mein Temrinal) und Leafpad (ein Texteditor) mit 80% (0.8) an Deckkraft dargestellt, also 20% an Transparenz.
Wichtig ist im oberen Teil mit den richtigen Funktionen die richtigen Fenster zu bestimmen.
die kann man herauskriegen indem man devilspie -a im Terminal startet und ein Fenster öffnet, es sollte dann das nötige ausspucken. Eine andere Methode wäre diese: http://wiki.ubuntuusers.de/Devilspie#Fenster-identifizieren
Neben window_class gibt es beispielsweise noch application_name, was aber bei Terminals meistens nicht funzt.
Alle Funktionen kann man bspw. hier nachschlagen (Englisch): http://foosel.org/linux/devilspie
Zum Schluss noch ein Screenshot (meine Terminals haben keinen Rahmen und keinen Scrollbalken, weil ich diese abgeschalten habe):
Azu-nyan
Quellen:

Tagged with: , , ,

Eine Antwort

Subscribe to comments with RSS.

  1. Kelhim said, on 22. Oktober 2010 at 14:32

    Ganz ehrlich, mit Devilspie habe ich vor einigen Jahren einmal gespielt, um das nachzurüsten, was andere Fenstermanager schon lange konnten, und nach einer Weile wurde mir das mit den Konfigurationsdateien zu mühselig. Naja, die Probleme sind Vergangenheit, momentan bin ich mit KDE 4.5 sehr zufrieden, und KWin ist schon sehr mächtig.


Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: