Arts

How to Kill Arts Dead

This is a HowTo about how to remove Arts from your KDE system. There are a number of reasons to do this:

  • Arts is a buggy piece of junk.
  • Arts needlessly hogs memory and CPU cycles.
  • Arts grabs the sound device and won't play nice with other non-Arts applications.
  • Arts has poor-quality audio.
  • Arts hasn't been actively developed in a long time.
  • Arts is going to be canned anyway in KDE4. Might as well get a head start.

This HowTo was written after describing this process to a number of people on the #ubuntu freenode IRC channel, all of whom were pleased with their results. I hope you will be too!

Step One

Getting rid of Arts

The first thing we will do is disable Arts. For this you will need:

  • Your mouse-hand
  • A cupcake
  • A small candle
  • Matches

First, fire up KControl, goto 'Sound & Multimedia/Sound System' and deselect 'Enable the sound system'. Hit OK. Next, insert the small candle into the cupcake and light it. Dance a small jig or sing a song if you feel it is appropriate. I recommend 'Ding, Dong, the Witch is Dead'!

Step Two

Configuring notifications

Unfortunately without a sound system we won't get to hear any nice bells and whistles. Fortunately, KDE is flexible enough to provide ways around this problem. In KControl, goto 'Sound & Multimedia/System Notifications'. Click on 'Player Settings'. In the pop-up window, select 'Use an external player', and in the 'Player' box type: /usr/bin/mplayer (You do have mplayer installed already, right? If not, get right on that! I am a big mplayer advocate. If you don't like mplayer, find a suitable alternative. Good luck with that.) Hit OK and OK again. Notifications are go!

Step Three

Making sure ALSA works

This is mostly up to you - you'll have to make sure all the various sound applications you use are configured to talk to ALSA. This is usually pretty straightforward. Make sure that ALSA has the 'dmix' plugin working properly. Ubuntu should do this properly by default; if not, here's my /etc/asound.conf (you can keep a user-specific version in /home/<you>/.asoundrc instead, if you like)

# DMIX input device
#
pcm.!output {
type dmix
ipc_key 1234
slave {
pcm "hw:0"
period_time 0
period_size 1024
buffer_size 8192
rate 48000
}
}

#
# DSNOOP output device
#
pcm.!input {
type dsnoop
ipc_key 1234
slave {
pcm "hw:0"
period_time 0
period_size 1024
rate 48000
}
}

#
# ASYM duplex device
#
pcm.!duplex {
type asym
playback.pcm "output"
capture.pcm "input"
}

#
# Make the duplex device default
#
pcm.!default {
type plug
slave.pcm "duplex"
}

So far so good. Now, some applications won't be able to talk directly to ALSA - they only speak to OSS. Fortunately there's a handy ALSA OSS wrapper to deal with such back-compatibilities. Just install it from the repository: sudo apt-get install alsa-oss.

Now we're all set. You might have to do some trouble-shooting as you come across new apps that are not configured to talk to ALSA directly. In a worst-case scenario, these can be run via the wrapper: aoss <programname> will wrap sound output nicely into ALSA and allow full software mixing, etc. Most worthwhile applications these days can speak to ALSA, though, so don't worry too much.

Step Three

Fixing Firefox

We don't want to have to wrap Firefox every time we run it; Ubuntu lets us do this easily, though. Make sure Firefox is installed from the repository and NOT from the tarball from the Firefox website (if you don't want to do that, you can simply grab the /usr/lib/firefox/firefox script from the Ubuntu distribution and replace the "firefox" script that Mozilla gives you - it should be a drop-in replacement.)

Open up your favorite editor with sudo and edit /etc/firefox/firefoxrc: sudo vim /etc/firefox/firefoxrc. The contents should be:

# which /dev/dsp wrapper to use
FIREFOX_DSP="aoss"

Presto. Save, quit, etc. Restart Firefox.

Step Four

Enjoy

Make yourself a tall glass of melonade. Sip slowly. Do not gulp. A massage might be in order.

Arts (last edited 2008-08-06 16:41:30 by localhost)