libcanberra needs to depend on sound-theme-freedesktop

Bug #790608 reported by Harald Sitter on 2011-05-31
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
libcanberra (Ubuntu)
Medium
Harald Sitter

Bug Description

Quoting the sound-theme-spec draft:
'The lookup is done first in the current theme, and then recursively in each of the current theme's parents, and finally in the default theme called "freedesktop" (implementations may add more default themes before "freedesktop", but "freedesktop" must be last). A last fallback is unthemed sound. As soon as there is a sound that matches in a theme, the search is stopped.'

Consequently either libcanberra0 or its output plugins *must* depend on sound-theme-freedesktop as to prevent no sound when there is sound to be expected (imagine: speaker setup widget in some app, letting you test different output setups).

Changed in libcanberra (Ubuntu):
importance: Undecided → Medium
Changed in libcanberra (Ubuntu):
assignee: nobody → Harald Sitter (apachelogger)
status: New → In Progress
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libcanberra - 0.28-0ubuntu4

---------------
libcanberra (0.28-0ubuntu4) oneiric; urgency=low

  * Add sound-theme-freedesktop to comply with the sound theme spec draft
    on freedesktop.org. Essentially the fd theme is the hicolor of sound
    themes. Every application can install their sounds their + rely on the
    presence of sounds in the default theme. LP: #790608
 -- Harald Sitter <email address hidden> Wed, 01 Jun 2011 15:54:07 +0200

Changed in libcanberra (Ubuntu):
status: In Progress → Fix Released
Sebastien Bacher (seb128) wrote :

That's wrong, the theme was let out of the CD on purpose as described in the changelog, the ubuntu sound theme is used by default and sounds should be added to it if needed rather than duplicating effects on the CD, can you revert that?

Harald Sitter (apachelogger) wrote :

So you also do not have hicolor-icon-theme on the CD?

Sebastien Bacher (seb128) wrote :

> So you also do not have hicolor-icon-theme on the CD?

what has that to do with the sound theme issue? We do have hicolor-icon-theme on the CD but it's only directories, it ships no icons and takes no space. The issue with adding sound-theme-freedesktop is that leads to have 2 set of sounds on the CD, what we had before is that we made the default theme to be the ubuntu one which is one way to avoid the duplication, the other one would be to replace the freedesktop sounds with the ubuntu ones in sound-theme-freedesktop, would that work better for you? Or you could perhaps just revert the depends and makes kde depends on it if you need it?

Sebastien Bacher (seb128) wrote :

reopening, we need that CD space so we should figure a way which works for both ubuntu and kubuntu, what do you think about the previous suggestions?

Changed in libcanberra (Ubuntu):
status: Fix Released → Confirmed
Colin Guthrie (launchpad-colin) wrote :

As was stated at the time, the sound-theme-freedesktop is meant to be a seed base theme welcoming contributions. I would encourage you to make any non-Ubuntu specific changes and push them into the this theme upstream. Obviously certain sounds you will want to keep unique to yourselves (such as login/logout sounds) but otherwise you should just try to improve the base.

Certain sounds do need to be in the base theme (like those for testing speaker setups) and there is likely little point in replacing them in any derived themes. Other things will eventually go into this theme but from external sources. Games for example will likely put some of their in-game sounds into the directory hierarchy of the sound-theme-freedesktop tree with their upstream install process. Then, if a derived theme wants to customise that game's sounds' they can do so easily. That is the intention.

The actual number of sounds in the fdo theme are pretty minimal. So as I said, I would simply try to improve them.

While I still think it's a bit of a bastardisation, I would be much happier with you removing some of the sounds from the base theme that you know you override or disable in your Ubuntu theme (such as login etc.) to save space, but that said, it would be nicer to keep things pristine if possible. I would certainly ensure that the sounds specified in the fdo theme are kept if at all possible as these really are the basic set of sounds needed for a desktop system.

Hope that answers your question to some degree.

I look forward to contributions to the s-t-fdo in due course :p

Sebastien Bacher (seb128) wrote :

Thanks for the reply, that doesn't really address the issue though which is that we want to keep the fdo sound theme as it's shipped by upstream but we also want our sound theme to maybe be different and that without shipping duplicates sounds effects on the CD.

Harald Sitter (apachelogger) wrote :

Sorry, I was a bit distracted the last week.

So.

Here is what I suggest as solution:
a) introduce a virtual package sound-theme-standard-freedesktop
b) have sound-theme-freedesktop and ubuntu-sounds provide the virtual package
c) have libcanberra depend on sound-theme-freedesktop | sound-theme-standard-freedesktop
d) have ubuntu-sounds provide empty foldersetup for freedesktop sounds (for sound installation by user and/or software)
e) seed ubuntu-sounds on ubuntu systems, thus providing the dependency as per c)

The advantage of this is: every installation that does not seed ubuntu-sounds or another "standard sounds covering" theme will end up with the standard freedesktop theme. Should a user uninstall ubuntu-sounds for whatever reason they will get the standard theme too (therefore ensuring that a user cannot accidentally break event sounds altogether).

Unresolved issues: if one were to install ubuntu, then install Xubuntu and Xubuntu where to use a different implementation of the spec this impl must depend on sound-theme-freedesktop to ensure it gets pulled in. An either or relationship as in canberra would not make sense as the impl would likely expect freedesktop to always be there (e.g. impl/xubuntu setting defaults to freedesktop sound theme, if that were not presented -> kaboom).

Additionally, since I am not quite sure how canberra stores the default theme. If it were to be stored in a way that would only set the default for on desktop, installing Ubuntu and then Kubuntu might result in broken sounds in latter as it is trying to use freedesktop whereas only ubuntu-sounds is installed. I don't think that is the case, but either way should be checked. Perhaps Colin could give input?

Colin Guthrie (launchpad-colin) wrote :

Well I think I need to understand what customised sounds are actually in the sound-theme-ubuntu package? What do you actually override or disabled from the fdo theme?

Once I know this, I can perhaps advise a bit better, but the advice will generally be the same: try and merge as many customisations as possible directly into sound-theme-fdo package and submit upstream. The idea of the fdo package is to be lean and only contain essential sounds (e.g. voip ringing, IM signon/offs/new message, Mail new message etc.) These are sounds you will *want* to have even on a live CD, so room needs to be found, or you should drop the IM apps, the voip apps and the mail apps etc too.

You could also consider putting smaller versions (e.g. higher compression, lower sample spec) of the files in place to save a few kb here and there.

If you feel you have to disable some of the base sounds, then perhaps this should be discussed upstream? e.g. if you feel you can disable it, then it is perhaps superfluous and can be omitted. The important part here is that this discussion should happen upstream. You can use the libcanberra list for this discussion.

Really I'd rather talk about specifics. There are only 35 sounds over all:
alarm-clock-elapsed
audio-channel-front-center
audio-channel-front-left
audio-channel-front-right
audio-channel-rear-center
audio-channel-rear-left
audio-channel-rear-right
audio-channel-side-left
audio-channel-side-right
audio-test-signal
audio-volume-change
bell
camera-shutter
complete
device-added
device-removed
dialog-error
dialog-information
dialog-warning
message-new-instant
message
network-connectivity-established
network-connectivity-lost
phone-incoming-call
phone-outgoing-busy
phone-outgoing-calling
power-plug
power-unplug
screen-capture
service-login
service-logout
suspend-error
trash-empty
window-attention
window-question

Which of these do you feel are not essential for a desktop system? The test sounds in particular are IMO essential to allow people to configure their sound system appropriately. I can see you wanting to replace the login/logout sounds to customise it to Ubuntu, in which case I'd say you could relatively safely patch those sounds out the way.

Changed in libcanberra (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers