Fancy Beeper Daemon
Latest source package: beep-2.6.24+.tar.gz
Introduction
One of the more annoying features of Linux on a generic PC clone box is that you are often stuck with the standard PC-speaker beep. GNOME, KDE, and the like often will provide sampled beeps for applications written to their APIs, but other applications, the console, and terminal windows still have the same beep as your 1984 PC-AT.
This is a kernel module that lets you replace the speaker beep with a userspace daemon that can perform the action of your choice, such as playing a sampled sound.
News
Much-belated changes to support Linux 2.6.24 and higher. The new version is in beep-2.6.24+.tar.gz. It also includes fixes to some of the included beeper daemons, and a contributed beeper daemon.
Linux 2.6.15 includes a change to the input device API which requires a change to the beeper module. The new version is in beep-2.6.15+.tar.gz.
A Mandrake RPM using DKMS has been contributed by Jean-Christophe Heger. See the download table below for a link to his webpage.
Some updates to the 2.6.x driver package fix a minor installation problem, fix compatibility with linux 2.6.8 and later, and add a fall-back to the PC speaker beep if no beeper daemon is running. Also, a beeper daemon for ALSA is added.
Download
| Kernel Version | Package |
|---|---|
| 2.2.x | beep-2.2.x.tar.gz |
| 2.4.x | patch-2.4.1-fancy_beep.gz |
| Current: 2.6.x | beep-2.6.x.tar.gz, beep-2.6.15+.tar.gz, or beep-2.6.24+.tar.gz |
| Mandrake RPM for 2.6.x using DKMS. | Contributor's website |
| 2.6.x - older release; may be needed for non x86 | beep-2.6.x_old.tar.gz |
Installation
For 2.2.x kernels, follow the instructions in the tarball. This involves patching your kernel, and also making the beeper module itself and installing it to your module directory.
The 2.4.x version is distributed as a patch to your kernel source tree. It should apply to most 2.4.x kernels with minimal fuzz, and integrates into the kernel build tree. See also the port author's site for more details on this version of the module.
Thanks to the new input subsystem in Linux 2.6, the 2.6.x version does not require any patches to your kernel; you can build it in its own directory and install into your modules directory. Instructions are included in the tarball.
Beeper Daemons
The fancy beeper kernel module creates a device that can be read by a userspace daemon to know when it should beep. There are some simple beeper daemons included with the source packages that should meet most people's needs. If you need something different, it should be quite easy to write your own with these as examples.
Credits
The oplbeep kernel patch was written by dave madden <dhm AT vheissu.net.dcl.co.jp> and updated by Gernot Zander <hifi AT scorpio.in-berlin.de>. I also used some of their code in my loadable module.
The idea for this module comes from modreq_beep by Bernd Meyer <bernie AT wombat.hanse.de>, and there's still a bit of his code living on in the new loadable module (even though a lot of it was rewritten).
I want to thank the authors of the Linux Kernel Module Programming Guide for a clear exposition of how to write misc devices.
The 2.4 port was written by Frank Johnson <ratty at they.org>.
I'm Jason F. McBrayer <jmcbray-beep AT carcosa.net>.
License
This package and all the software contained within is licensed
under the GNU Public License.
You should have received a copy of the license in the file
COPYING when you downloaded the package.
No Warranty
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.