Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 198436

Summary: media-sound/soundkonverter - add amarok support
Product: Gentoo Linux Reporter: juantxorena <juantxorena>
Component: New packagesAssignee: Gentoo Sound Team <sound>
Status: RESOLVED WORKSFORME    
Severity: enhancement CC: jakub
Priority: Lowest    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: soundkonverter-0.3.6-r1.diff
use.local.desc.diff

Description juantxorena@gmail.com 2007-11-08 08:49:15 UTC
media-sound/soundkonverter comes with an amarok script to transcode files from there. Is installed by default (in the ebuild and in the source package itself), but it needs kde-base/qtruby installed to work (and media-sound/amarok, of course), which isn't installed by default.

I have made a patch for the ebuild that adds a new "amarok" USE flag which pulls media-sound/amarok and kde-base/qtruby when selected, in the same way that media-sound/transkode. Patch is coming.

Reproducible: Always
Comment 1 juantxorena@gmail.com 2007-11-08 08:50:28 UTC
Created attachment 135475 [details, diff]
soundkonverter-0.3.6-r1.diff

The patch for the ebuild.
Comment 2 juantxorena@gmail.com 2007-11-08 08:51:23 UTC
Created attachment 135476 [details, diff]
use.local.desc.diff

The description for the new local USE flag.
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2007-11-08 09:23:46 UTC
Eh, all the audio use flags are already bogus and do nothing except for pulling in some dependencies; why do you want to add even more of them? They should be all removed and converted to some postinstall message.

Comment 4 juantxorena@gmail.com 2007-11-08 10:25:05 UTC
(In reply to comment #3)
> Eh, all the audio use flags are already bogus and do nothing except for pulling
> in some dependencies; why do you want to add even more of them? They should be
> all removed and converted to some postinstall message.
> 

Because if a package needs another as a dependency for a particular function it must pull it automatically. I'm aware of how some packages handle this kind of stuff, like gstreamer plugins. But there are a lot of apps and libs that they have to be only present to be used by other apps: the aforementioned gstreamer, media-sound/exaile, mostly everything with latex support, a lot of python and other script languages apps, etc.

Removing those kind of dependencies and putting them as postinstall messages is like killing the dependency handling and install everything you need one by one. In fact, media-sound/exaile hadn't got any USE flags to control the type of files that can play before it went into portage tree, because they were gstreamer plugins and they only need to be installed to be used by exaile (there's no need of recompile the program), but later they were added because searching in the ebuild and installing plugins one by one was a pain in the ass, is better to recompile unnecessarily the program a couple of times in a year that doing that.

Not only that: in this case, if soundkonverter is the only program that needs qtruby because of amarok and the user is forced to install it explicitly, it will be added to the world file. If he uninstalls the program, unset the useflag or the program changes and don't need qtruby anymore, the user will probably forget that he installed that because of the app, it won't be never removed when doing "emerge --depclean" and it will stay in the system forever with its own dependencies, wasting resources.

Resuming: the use of useflags for this kind of dependencies is not perfect but it's still way better than the alternative of postinstall messages and emerge dependencies by hand.
Comment 5 Samuli Suominen (RETIRED) gentoo-dev 2007-11-10 08:50:31 UTC
(In reply to comment #4)
> like killing the dependency handling and install everything you need one by
> one. In fact, media-sound/exaile hadn't got any USE flags to control the type
> of files that can play before it went into portage tree, because they were
> gstreamer plugins and they only need to be installed to be used by exaile
> (there's no need of recompile the program), but later they were added because
> searching in the ebuild and installing plugins one by one was a pain in the
> ass, is better to recompile unnecessarily the program a couple of times in a
> year that doing that.

Lies, I've added it into tree and maintain it.. it had these use flags from day one. Only reason exaile has these USE flags is small compile time it has.

I have to agree with Jakub here, post install message would be a lot better.. I'm doing this with media-sound/bmpx
Comment 6 Samuli Suominen (RETIRED) gentoo-dev 2007-11-10 08:58:58 UTC
pkg_postinst() {
        elog "The audio USE flags are for your convience, but are not required."
        elog "For AmaroK users there is a script included with this package."
        elog "You can enable it with the Script Manager tool in Amarok, after"
        elog "installing kde-base/qtruby."
}