Jump to navigation

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

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.