X61acpid Code
Status: Alpha
Brought to you by:
st0ff
File | Date | Author | Commit |
---|---|---|---|
configdir | 2009-03-06 | st0ff | [r11] translations updated |
pix | 2008-06-17 | st0ff | [r1] |
CMakeLists.txt | 2009-12-16 | st0ff | [r15] Switch to CMake |
Changelog | 2009-12-16 | st0ff | [r15] Switch to CMake |
Config.ui | 2008-06-17 | st0ff | [r1] |
EventConfig.ui | 2008-06-17 | st0ff | [r1] |
README | 2009-12-16 | st0ff | [r15] Switch to CMake |
config.cpp | 2009-03-06 | st0ff | [r14] more little changes - read the changelog |
config.h | 2009-03-05 | st0ff | [r8] Version Bump to 0.3 - see ChangeLog for details |
configfile.cpp | 2009-03-06 | st0ff | [r14] more little changes - read the changelog |
configfile.h | 2009-03-06 | st0ff | [r11] translations updated |
eventconfig.cpp | 2009-03-05 | st0ff | [r8] Version Bump to 0.3 - see ChangeLog for details |
eventconfig.h | 2009-03-05 | st0ff | [r8] Version Bump to 0.3 - see ChangeLog for details |
icons.qrc | 2008-06-17 | st0ff | [r1] |
linguas.qrc | 2008-06-17 | st0ff | [r1] |
main.cpp | 2008-06-17 | st0ff | [r1] |
x61acpid_de.ts | 2009-03-06 | st0ff | [r11] translations updated |
x61acpid_en.ts | 2009-03-06 | st0ff | [r11] translations updated |
======================================================= X61acpid - a helper application for convertible laptops ======================================================= See German readme below... ENGLISH ======= If you own a convertible laptop, did you already experience wanting to turn the display around and just start taking notes with f.e. Xournal? Well, it's not that easy in Linux. You'd have to call xrandr and xsetwacom. And you probably have to look out for other caveats of the system. X61acpid was developed with exactly this in mind. "Just have a daemon that does all this housekeeping for you". You could try to use standard acpid, but acpid does not have access to your X-session - so xrandr fails, xsetwacom fails, and so on. Now X61acpid comes into play. It listenes for acpi-events on the local acpid- socket and runs whatever you configured it to run. You can easily configure it with the QT4-Frontend, you'll see the acpi-events as balloon-tips. The confi- guration should be pretty much self-explaining, so I won't work it out in as much detail as you could find in the German version below. Just a few hints: - x61acpid uses ~/.X61acpid as configuration folder, this is the default place - also a possible folder is /etc/X61acpid/ - inside the configuration folder you'll find config files and a scripts folder - if you want to use scripts, they should reside in this folder ===> start obsolete info The program was created as a QT4 qmake application. So when making changes, you should run "make distclean && qmake && make" to rebuild the program. By version 0.3 I changed it to be a KDevelop qt4 qmake application. So you could just checkout the actual version and then open it with kdevelop and do whatever you like there. ===> end obsolete info The program was changed to the CMake build system. When making changes, or after checking out the repository it's advised to do: "cmake . && make" within the project directory. For KDevelop 4 users like me: just import it as CMake project. NEEDS: ====== - acpid installed and running with the default socket at /var/run/acpid.socket - QT4 development packages HOW TO COMPILE/INSTALL? ======================= - either use KDevelop to build and execute - or use "cmake .", "make", "make install", but please take care: if you had a global installation with config in /etc/X61acpid running, your config will most likely be overwritten and not work anymore - execute X61acpid ... now the SystrayIcon should show up, or else if there is no Systray on your box, the configuration dialog shows up ... ====== GERMAN ====== Ging es Dir mit Deinem Convertible nicht auch schon so? Du hast das Display umgedreht und wolltest mit einem Notetaker - z.B. Xournal - einfach loslegen? Tja ... dummerweise muss man da noch xrandr bemühen, xsetwacom und und und. Alles nicht so schön. Das sollte doch auch automatisch gehen, oder? Na klar! X61acpid wurde aus diesem Grunde entwickelt. Es "horcht" an der Pipe des acpid nach entsprechenden Events. Wenn ein Event festgestellt wurde, dann werden die entsprechend vorher konfigurierten Aktionen bzw. Skripte ausgeführt, oder einfach das Event ignoriert. Die derzeitige Version 0.3 erlaubt einerseits eine relativ einfache Konfi- guration mithilfe des QT4-Frontends. Clicke auf das Systrayicon (oder wenn kein Systray vorhanden ist, dann wird das Frontend mit dem Programm gleich ge- startet) und füge einfach ein Event durch klicken auf den entsprechenden Button hinzu. Es öffnet sich der EventConfig-Dialog. Hier drücke man nun auf den "auf Event warten"-Button und generiere das gewünschte Event (z.B. TabletMo- dus einschalten, oder ThinkVantage drücken). Jetzt kann man in der ListBox darunter einfach eine (oder mehrere) auszuführende Kommandos eingeben, indem ausgewählt wird, um was es sich handelt. Will man das Event ignorieren, dann muss "Ignorieren" ausgewählt werden. Soll ein Programm ausgeführt werden, so wähle man "Aktion". Soll ein Skript aus dem <configfolder>/scripts Verzeichnis ausgeführt werden, so wähle man "Skript". Nun kann man mit einem Rechtsklick auf die Befehlszeile einfach ein vorhandenes Skript wählen. Oder man doppel- klickt einfach die Befehlszeile und kann alles selbst eingeben (P.S.: so kann man einem ausgewählten Skript Kommandozeilenparameter mitgeben). !ACHTUNG!, die Kommandos stehen in keinem Zusammenhang zueinander. Sie werden einfach nacheinander geforked (eigenständig ausgeführt). Kompilieren: ------------ - Archiv entpacken - "cmake . && make" ausführen ODER - svn-abbild ziehen - "cmake . && make" Ausführen: ---------- Nach dem Kompilieren ausführen. Es sollte das TrayIcon - oder wenn TrayIcons nicht möglich sind: das ConfigFrontend - erscheinen. Viel Spass damit. Installation: ------------- Nach den Kompilierungsschritten einfach "make install" als root ausführen. Dabei wird das Programm nach /usr/local/bin (oder was auch immer der lokale Installationspfad bei Deinem System ist) kopiert und die Basiskonfiguration unter /etc/X61acpid gespeichert. Konfigurationsdateien: ---------------------- Beim Lesen von Einstellungen versucht das Programm zuerst /home/<username>/.X61acpid/config bzw. /root/.X61acpid/config zu lesen. Sollten diese nicht existieren, wird die systemweite Konfig unter /etc/X61acpid/config gelesen (diese sollte nach der Installation vorhanden sein. Die Datei ist wie ein standard-Configfile aufgebaut. Zeilen, die mit "#" beginnen, sind Kommentare. Die Parameter werden als Parameter = wert definiert. Boleesche Werte können mithilfe "1","yes","ja","enable" auf WAHR gesetzt werden, alle anderen Ausdrücke hinter dem "=" werden als FALSCH interpretiert. Folgende Einstellungen kann man in dieser Konfigurationsdatei setzen: TrayIcon = [bool] ... legt fest, ob das TrayIcon gezeigt werden soll oder nicht. Voreinstellung: TRUE. handledBalloons = [bool] ... legt fest, ob auch gehandhabte ACPI-Events als BalloonTip angezeigt werden sollen. Voreinstellung ist FALSE. BalloonMS = [int] ... legt fest, wie lange BalloonTips angezeigt werden sollen in Millisekunden. Voreinstellung ist 3000, also 3s. event = <Eventname, wie von ACPID zurückgegeben> ... startet eine Eventdefinition. Diese wird durch die nächste Eventdefinition beendet. Folgende Zeilen können enthalten: action = <Aktion Parameter> script = <Skript Parameter> ignore = Dadurch werden dann die entsprechenden "Happenings" dem Event zugeordnet.