Lapsus - Linux on laptops

 


Project page    SVN access    Bugs   


See also driver for Asus' OLED display device: asus_oled!


 

Lapsus is a set of programs providing easy access to many features of various laptops. It currently supports most features provided by asus-laptop kernel module from ACPI4Asus project, such as additional LEDs, hotkeys, backlight control etc. It also has support for some IBM laptops features provided by IBM ThinkPad ACPI Extras Driver and NVRAM device.

It consist of a daemon program monitoring ACPI events, reading/writing system files created by either asus-laptop or ibm-acpi module and run commands that need privileged access. The daemon can be controlled over DBus using the client program, or any other programs which has support for that, or can be customized to do so. It can also be controlled with dbus-send utility.

Client program is a KDE Panel Applet (standalone client is planned). It gives easy access to daemon's functions, as well as (in the future) providing additional features, such as ACPI hotkeys bindings or power status monitoring.

It is quite easy to add new backends for other types of devices, such as laptops from other manufacturers. Unfortunatelly I have no other types of hardware to test it on, so if someone is willing to help with other types of devices that have some additional features like LEDs or backlight power switches supported in Linux - please contact me!

Even if no Asus or IBM features are found, Lapsus will still be able to control synaptics touchpad device and default channel of alsa mixer.


 

Latest Version: 0.0.6

ChangeLog

 


 

Currently supported:

 

All devices:
  • Alsa mixer (volume control, mute/unmute)
  • Synaptics touchpad (on/off)
  • All ACPI events are reported using DBUS
ASUS (with asus-laptop module loaded):
  • All the LEDs (on/off)
  • LCD Backlight
  • Wireless radio switch
  • Bluetooth adapter switch
  • Volume/Mute hotkeys
  • Touchpad hotkey
  • Backlight hotkeys
  • LightSensor switch and sensitivity level
  • All other hotkeys are reported using DBUS (as ACPI events)
IBM (with ibm-acpi module loaded):
  • All the LEDs (on/off/blink)
  • ThinkLight (on/off)
  • LCD Backlight
  • Bluetooth adapter switch
  • Built-in hardware mixer (volume control, mute/unmute)
Additional IBM features supported when nvram module is loaded and /dev/nvram is present:
  • Volume hotkeys
  • Mute hotkey
  • Backlight hotkeys
  • ThinkLight hotkey
  • All other hotkeys are reported using DBUS (as ACPI events)
IBM support has been tested on T42 laptop. However, I don't own this device, so help is needed :)
If you have an IBM laptop with some features supported by ibm-acpi driver, or by ThinkPad Buttons and you would like to help - please contact me!
While running lapsus on IBM device, you can set IBM_DEBUG_DUMP in sys_ibm.cpp to 1, recompile lapsusd and run it with '--no-daemon' parameter to see all debugging messages.

 

Screenshots

 

Lapsus 0.0.6
Lapsus 0.0.6

 

Lapsus 0.0.4
Lapsus 0.0.4 Lapsus 0.0.4 Lapsus 0.0.4 Lapsus 0.0.4

 

Lapsus 0.0.3
Lapsus 0.0.3 Lapsus 0.0.3 Lapsus 0.0.3

 

Installation

 

Get the source of the latest version: lapsus-0.0.6.tar.bz2

You may also get the newest sources from SVN with:
		svn co svn://svn.berlios.de/lapsus/trunk lapsus
	
To compile the sources run (the first step is only for sources from SVN):
		make -f Makefile.cvs
		./configure
		make
		make install
	
You need:
  • Qt >=3.3 <4 library
  • KDE 3.5 (haven't tested it with earlier versions though, so it might work too)
  • DBus >= 0.90 installed and running (I use 1.0.2, but it should work with 0.90)
  • asus-laptop >= 0.40 kernel module from ACPI4Asus project loaded to use Asus backend.
    Just make sure you are using asus-laptop module and NOT asus_acpi module!
  • ibm-acpi kernel module from IBM ThinkPad ACPI Extras project loaded to use IBM backend
You also need to configure your system so the daemon can run properly.
To do that you should place included lapsus.conf file in /etc/dbus-1/system.d/ and restart (or reload) dbus. That file contains rules for using DBus system bus by lapsus(d). Default lapsus.conf lets root user to run lapsusd, and any user who is in lapsus group to connect to the daemon. You can customize this file to fit your needs, but if you want to use it as it is, you need to create lapsus group with a command:
		groupadd lapsus
	
and add any user that should have the right to use lapsus to this group with:
		gpasswd -a user_name lapsus
	

If you use Gentoo, you may choose to install Lapsus using following ebuild: http://forums.gentoo.org/viewtopic-t-547055.html

For Slackware there is SlackBuild: http://slackbuilds.org/repository/12.0/system/lapsus/

For Arch Linux, there is AUR package: http://aur.archlinux.org/packages.php?ID=11207

And for SVN version: http://aur.archlinux.org/packages.php?ID=11776


Copyright (C) 2007, 2008 Jakub Schmidtke

TuxMobil - Linux on Laptops, Notebooks, PDAs and Mobile Phones    Valid HTML 4.01 Transitional    BerliOS Developer Logo    Play Ogg