Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 310897 - >=media-sound/amarok-2.3.0: add embedded to IUSE defaults
Summary: >=media-sound/amarok-2.3.0: add embedded to IUSE defaults
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] KDE (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on: 306315
Blocks:
  Show dependency tree
 
Reported: 2010-03-23 12:03 UTC by Navid Zamani
Modified: 2010-10-06 11:33 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info (emerge-info,5.12 KB, text/plain)
2010-03-23 13:13 UTC, Navid Zamani
Details
emerge -pv mysql amarok (emerge-pv-mysql-amarok,655 bytes, text/plain)
2010-03-23 13:15 UTC, Navid Zamani
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Navid Zamani 2010-03-23 12:03:26 UTC
When I start amarok 2.3.0, it shows me a database error, and then opens the settings dialog. There it shows an external mysql database on local host as enabled. I disable that database, close the dialog, close amarok and restart it. Now the exact same thing happens again, as the database is enabled again.

Additionally, now the music database of course does not work.

Reproducible: Always

Steps to Reproduce:
See above
Actual Results:  
See above

Expected Results:  
Use the internal database by default, and allow music to be indexed into it.
Comment 1 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-03-23 12:28:51 UTC
Please add the output of emerge --info and of emerge -pv mysql amarok
Comment 2 Navid Zamani 2010-03-23 13:13:45 UTC
Created attachment 224891 [details]
emerge --info

My pleasure!
Comment 3 Navid Zamani 2010-03-23 13:15:59 UTC
Created attachment 224893 [details]
emerge -pv mysql amarok

Done.
Comment 4 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-03-23 13:31:44 UTC
[ebuild   R   ] dev-db/mysql-5.0.90-r2  USE="berkdb community embedded perl ssl -big-tables -cluster -debug -extraengine -latin1 -max-idx-128 -minimal -profiling (-selinux) -static -test" 0 kB
[ebuild   R   ] media-sound/amarok-2.3.0  USE="mtp opengl semantic-desktop (-aqua) -cdda -daap -debug -embedded -ipod (-kdeenablefinal) -lastfm -mp3tunes" LINGUAS="de en_GB fr -bg -ca -cs -da -es -et -eu -fi -it -ja -km -nb -nds -nl -pa -pl -pt -pt_BR -ru -sl -sr -sr@latin -sv -th -tr -uk -wa -zh_TW" 0 kB

You built amarok without the embedded support. If you want to use the embedded database you'll have to rebuild amarok with the embedded use flag active.
Comment 5 Navid Zamani 2010-03-23 14:34:24 UTC
(In reply to comment #4)
> You built amarok without the embedded support. If you want to use the embedded
> database you'll have to rebuild amarok with the embedded use flag active.

I did not disable the “embedded” USE flag. So it is wrongly disabled by default. And hence every other user will get that problem too.
Comment 6 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-03-23 14:57:04 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > You built amarok without the embedded support. If you want to use the embedded
> > database you'll have to rebuild amarok with the embedded use flag active.
> 
> I did not disable the “embedded” USE flag. So it is wrongly disabled by
> default. And hence every other user will get that problem too.

The use flag is no longer enabled by default (on IUSE defaults), so you have to enable it yourself).
Comment 7 Navid Zamani 2010-03-23 16:13:41 UTC
Why would anyone do that?? Mysql is not running as a service in the background and you can’t expect desktop users to manually set up a mysql for it. So de facto every user who installs KDE 4(.4.x) / Amarok 2.x will have a non-working amarok. Yay.
Comment 8 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-03-23 17:49:20 UTC
(In reply to comment #7)
> Why would anyone do that?? Mysql is not running as a service in the background
> and you can’t expect desktop users to manually set up a mysql for it. So de
> facto every user who installs KDE 4(.4.x) / Amarok 2.x will have a non-working
> amarok. Yay.

You seem to have misunderstood me.
What I've told you is that by default the amarok ebuild no longer activates the embedded use flag - mainly because it won't work with mysql-5.1 (we're still working on a patch to get a libmysql.so). So what you need to do is to add to /etc/make.conf or preferably to /etc/portage/package.use[/*] the embedded use flag for amarok.
I don't understand your rant about mysql as I haven't asked you or anyone to setup mysql. I would also like to ask you to read the postinst messages for amarok as the ebuild currently warns you if you don't set the embedded use flag.

As this is a configuration issue and not a bug, I would also like to ask you not to reopen the bug again. If after enabling the embedded use flag for amarok and rebuilding it you still get a runtime error, please reopen the bug.
Comment 9 Navid Zamani 2010-03-23 18:07:18 UTC
Ok, I’m trying not to get angry here, and assume you misunderstood me, even though I think you know exactly what I am talking about since the first comment.
Again, slowly:

1. I assume we want Amarok to have a database, so it can index music, right?
2. Amarok can’t have the external MySQL because one can’t expect users to set up a MySQL server on their desktop.
3. Amarok can’t have the internal MySQL because of a bug, as you are saying.
4. So Amarok is left with no database, and since Amarok can’t do without a database, it will throw >>> AN ERROR WITH NO WORKAROUND AT EVERY STARTUP <<< HINT HINT HINT HINT HINT HINT HINT HINT !!!!
5. Conclusion: For Amarok to work in general, >>> THE embedded USE FLAG MUST BE ENABLED *IN PORTAGE / BY DEFAULT* <<<. But because of the bug (point 3), that apparently won’t work. So Amarok 2.3.0 does not work without the error in point 4. So Amarok 2.3.0 needs to be hard-masked (or even removed from portage).

The problem with the current situation is that I am left with two choices. Both of which have errors.
A) Disable embedded, and have an error at every startup.
B) Enable embedded, and have it fail because of that bug.
And in Portage, you chose A. Instead of masking the ebuild. Way to go.
Comment 10 Theo Chatzimichos (RETIRED) archtester gentoo-dev Security 2010-03-23 18:33:30 UTC
if you want the embedded mysql:
echo "media-sound/amarok embedded" >> /etc/portage/package.use
echo "dev-db/mysql embedded" >> /etc/portage/package.use
(for mysql >=5.1 mysql embedded is broken)

if you want the external mysql, just follow the instructions in amarok->configure amarok->database

and case closed.
Comment 11 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-03-23 18:35:32 UTC
(In reply to comment #9)
> Ok, I’m trying not to get angry here, and assume you misunderstood me, even
> though I think you know exactly what I am talking about since the first
> comment.

I suppose I should be the one trying hard not to get angry here.

> Again, slowly:

Yes, slowly to see if we can get anywhere.

> 1. I assume we want Amarok to have a database, so it can index music, right?

Yes.

> 2. Amarok can’t have the external MySQL because one can’t expect users to
> set up a MySQL server on their desktop.

Wrong. Some users don't want it, some *do* want it.

> 3. Amarok can’t have the internal MySQL because of a bug, as you are saying.

Wrong. All you need to get the internal db is to enable the embedded use flag in amarok. That will however force you to use mysql-5.0 as there's no support in 5.1 for it yet.

> 4. So Amarok is left with no database, and since Amarok can’t do without a
> database, it will throw >>> AN ERROR WITH NO WORKAROUND AT EVERY STARTUP <<<
> HINT HINT HINT HINT HINT HINT HINT HINT !!!!

Wrong. You can either use the external db (just follow the links in the postinst messages of the amarok ebuild) or you can enable the embedded use flag that will force you to use mysql-5.0.

> 5. Conclusion: For Amarok to work in general, >>> THE embedded USE FLAG MUST BE
> ENABLED *IN PORTAGE / BY DEFAULT* <<<. But because of the bug (point 3), that
> apparently won’t work. So Amarok 2.3.0 does not work without the error in
> point 4. So Amarok 2.3.0 needs to be hard-masked (or even removed from
> portage).

You haven't understood what I said before, so you got wrong assumptions that lead to an invalid conclusion.

> The problem with the current situation is that I am left with two choices. Both
> of which have errors.
> A) Disable embedded, and have an error at every startup.
> B) Enable embedded, and have it fail because of that bug.
> And in Portage, you chose A. Instead of masking the ebuild. Way to go.

If you chose A you'll have to enable the external mysql option in amarok and configure mysql accordingly.
If you chose B portage will downgrade mysql to 5.0 to prevent the error you'll get if you try to build amarok against mysql-5.1.

Is it clear now?
Comment 12 Navid Zamani 2010-03-23 22:27:22 UTC
(In reply to comment #11)
> I suppose I should be the one trying hard not to get angry here.
No, you don’t. Because, no offense, but you acted like a condescending dick from the first comment on. I bet you think every user is an idiot, people see that, and hence react unfriendly to you. Which conveniently “proves” that you were right all along.

But let’s start again, Ok?

———————————————————————————————————————————————————————————————————————————————

> > 1. I assume we want Amarok to have a database, so it can index music, right?
> Yes.

> > 4. So Amarok is left with no database, and since Amarok can’t do without a
> > database, it will throw >>> AN ERROR WITH NO WORKAROUND AT EVERY STARTUP <<<
> > HINT HINT HINT HINT HINT HINT HINT HINT !!!!
> Wrong. You can either use the external db (just follow the links in the
> postinst messages of the amarok ebuild) or you can enable the embedded use
> flag that will force you to use mysql-5.0.

Are you completely oblivious to the concept of a *proper default*? I.e. that if you emerge a package, without playing with any USE flags or installing a DB, should simply work?
You simply chose *neither* >>> by default <<< (in the ebuild). Not to enable the “embedded” USE flag by default and add a block for mysql 5.1 to the ebuild. And not to set up the external mysql in a working state, which is required if it’s *the default*.

Please choose a proper default. And by “proper” i mean one that makes the program usable right after emerging it.

I am shocked that you prefer to have a lengthy and stupid conversation, rather than quickly enable the “embedded“ USE flag by default. After all you already have a mysql 5.1 blocker in there. for it.

But I bet you will even now deny that your default is simply a bad choice for 99% of the users (those who won’t set up an external mysql). Ok?

———————————————————————————————————————————————————————————————————————————————

> > 2. Amarok can’t have the external MySQL because one can’t expect users to
> > set up a MySQL server on their desktop.
> Wrong. Some users don't want it, some *do* want it.
Not wrong. Correct. You can not *expect* it. You can still *offer the choice*. But that is a completely different question.

> > 3. Amarok can’t have the internal MySQL because of a bug, as you are saying.
> Wrong. All you need to get the internal db is to enable the embedded use flag
> in amarok. That will however force you to use mysql-5.0 as there's no support
> in 5.1 for it yet.
Which you missed to mention in your last comments. Why didn’t you say that crucial part (that there *are* other versions of mysql that are not problematic) right at the start? That would have saved a lot of time!

> > 5. Conclusion: For Amarok to work in general, >>> THE embedded USE FLAG 
> > MUST BE ENABLED *IN PORTAGE / BY DEFAULT* <<<. But because of the bug (point
> > 3), that apparently won’t work. So Amarok 2.3.0 does not work without the
> > error in point 4. So Amarok 2.3.0 needs to be hard-masked (or even removed 
> > from portage).
> You haven't understood what I said before, so you got wrong assumptions that
> lead to an invalid conclusion.

First you gave me incomplete information. And now you conveniently ignore to tackle the crucial point of what you quoted. (Is tacked by me, right above the line.)

> > The problem with the current situation is that I am left with two choices.
> > Both of which have errors.
> > A) Disable embedded, and have an error at every startup.
> > B) Enable embedded, and have it fail because of that bug.
> > And in Portage, you chose A. Instead of masking the ebuild. Way to go.
> If you chose A you'll have to enable the external mysql option in amarok and
> configure mysql accordingly.
> If you chose B portage will downgrade mysql to 5.0 to prevent the error you'll
> get if you try to build amarok against mysql-5.1.

There is a third option. And that option is *the default*. The option you chose. The good option that will be chosen when I don’t choose, and trust the upstream. And you sadly chose an option that causes problems for 99% of the users. Because all of them have to remerge amarok after enabling a use flag. Or set up apache. They don’t have the choice to not choose. They don’t have the choice to only emerge amarok once.

———————————————————————————————————————————————————————————————————————————————

Let this newfangled concept of a sensible default sink in for a couple of days. Perhaps then we can resolve this properly. (Yes. Right back at ya. ^^)
Comment 13 Navid Zamani 2010-03-23 22:28:02 UTC
Wrong click. This is not fixed until “embedded” is default, and users aren’t annoyed by a bad default anymore.
Comment 14 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-06-09 13:35:44 UTC
As the patch to enable libmysqld.so in mysql-5.1 is a long way to be complete and I won't enable the use flag by default as long as it forces a mysql downgrade, there's going to be no change here.
Comment 15 Navid Zamani 2010-06-09 19:56:32 UTC
(In reply to comment #14)
> As the patch to enable libmysqld.so in mysql-5.1 is a long way to be complete
> and I won't enable the use flag by default as long as it forces a mysql
> downgrade, there's going to be no change here.

And shit like this right here is exactly why “The year of Linux on the desktop” will never come, and why everybody at the university warned me about Gentoo.
I’m done. Until someone here gets a grip of reality again, I declare the horse dead, and dismount. A bunch of scripts and a small audio player can provide better functionality than this p.o.s. And it will work and stay working.
As they say: If you want it to be done right, you gotta do it yourself.
Comment 16 Andreas Nyback 2010-08-21 09:32:38 UTC
i stumbled on this bug too.
Even if the tone in the comments above are a bit too harsh, i agree with the statement that above nothing else, when installing stable gentoo packages, it should always work "as is".
Its been one of the biggest problems in gentoo land since gentoo came to exist.
Default should be to Install->it works.
Not Install->fiddle around to make it work.

So in this case. hardmask amarok, or block mysql 5.1 is the way to go.
If a user wants to fiddle around they can unmask and go ahead and edit things to make it running.
Comment 17 Vasco Figueira 2010-09-07 00:59:41 UTC
I'm sorry, adding embedded as default is *the* reasonable thing to do here. Not reopening the bug just out of politeness.

If someone badly wants MySQL 5.1, s/he probably doesn't care for amarok and certainly will read the postinst messages.

Common sense, guys. Come on.
Comment 18 Navid Zamani 2010-09-07 11:23:25 UTC
(In reply to comment #17)
> Common sense, guys. Come on.

I agree, and I think this is either a plot, to make people avoid the horrible Amarok 2, or a case of politician’s syndrome *. ;)
But hey, if I learned one thing, then that if you let people decide over other people, it will *always and without exception* turn into a Nazi-like regime. I’ve done some work about this, and I did prove that this is true for all life in this universe. Otherwise it will not exist for very long.) Wikipedia is another good example, that this is not only true for governments.

Anyway, I still hope(d), perhaps delusionally, that Gentoo would be better… :/

(* Politicians have this weird behavior, where they can’t admit that they were wrong, even thought they would like to, because they somehow think it’s bad to admit just being human. Probably strengthened by the media wrongly calling them “flip-floppers” and dumb people booing. In reality, of course we prefer the one who at least learns from his errors and admits them… as opposed to just carrying on, lying to everyone, including oneself, no matter what, for some paltry reason.)
Comment 19 Navid Zamani 2010-09-07 11:23:55 UTC
Oh, and: Reopening the bug, as the drift goes clearly against how it is now.
Comment 20 Claes 2010-09-21 11:49:47 UTC
I'd just like to add that for me, the sane thing would be to block mysql-5.1, say, if you're on a desktop/KDE profile? That's what I do myself. I'd say that getting a block _before_ the emerge is "less surprising" than finding that amarok doesn't work, once the emerge has finished.

Navid, I mostly agree with you :) Often it can really help to get your point across if you are a bit more subtle though.
Comment 21 Navid Zamani 2010-09-21 11:57:00 UTC
(In reply to comment #20)
> Navid, I mostly agree with you :) Often it can really help to get your point
> across if you are a bit more subtle though.

OT: I stop being subtle, when I stop caring if I get the point across. Which is early on, since I’m assuming everyone in the whole wide world to be a dick and an idiot anyway, until proven wrong. :P May be, because I stopped being dependent on the approval of other people. The state of the world is just a situation. People are just gears in it. So I solve my problems myself anyway. Sorry, lived trough too much shit, to be able to still believe the whole “social team” lie.
Comment 22 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-09-25 20:07:41 UTC
We've finally made some progress in the linked bug.

When we get the updated ebuilds in the tree, I'll add embedded back to IUSE defaults.
Comment 23 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2010-10-06 11:12:02 UTC
As we finally got our shared lib patch working with mysql / mariadb and they've finally been added to the tree, I just unmasked amarok-2.3.2-r1 which added embedded back to IUSE defaults.
Comment 24 Navid Zamani 2010-10-06 11:33:20 UTC
Hey, thank you man! That’s really appreciated! Sorry for being so angry in previous comments. But see, as much as I am angry when something is wrong in my eyes, I’m happy when it’s good. :)

*thinks* I have to get my income up, so I can start some monthly donation.