Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Akonadi should include MySQL as BuildInput #1053

Closed
silverhook opened this issue Oct 8, 2013 · 38 comments
Closed

Akonadi should include MySQL as BuildInput #1053

silverhook opened this issue Oct 8, 2013 · 38 comments
Labels

Comments

@silverhook
Copy link
Contributor

Akonadi service won't start even manually. It whines that it cannot connect to MySQL.

@silverhook
Copy link
Contributor Author

The error I get is:

Akonadi: Failed to connect to database: can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
QMYSQL: Unable to connect.

If I open up the Configure Server dialogue in Akonadi Console, I get a blank window.

I don't know if it's related, but the KOrganizer Reminder Daemon ('korgac') crashes on start/login as well.

@edolstra
Copy link
Member

edolstra commented Oct 8, 2013

Isn't Akonadi supposed to start its own MySQL instance?

@Phreedom
Copy link
Member

Phreedom commented Oct 8, 2013

It does start its own instance. Probably it doesn't find mysql with default
settings. Does akonadi server configuration specify a path to mysql binary
that actually exists? Like this one:
/nix/store/ddry0pcrnkpigynz80i40vr2gcp9j5a1-mysql-5.1.69/bin/mysqld

@silverhook
Copy link
Contributor Author

@Phreedom: How do I check that?

@Phreedom
Copy link
Member

Phreedom commented Oct 8, 2013

akonadiconsole: server->configure server

@Phreedom
Copy link
Member

Phreedom commented Oct 8, 2013

This is funny. We both have mysql installed by accident. It isn't installed by
either akonadi or kde nixos module :)

@silverhook
Copy link
Contributor Author

@Phreedom As I said, if I go under server->configure server in Akonadi Console, I see a completely blank dialogue with no textboxes or whatsoever.

@silverhook
Copy link
Contributor Author

Currently Akonadi Nix package states:

buildInputs = [ qt4 soprano libxslt boost sqlite ];

I propose to change it to:

buildInputs = [ qt4 soprano libxslt boost mysql ];

Especially as MySQL is the upstream preferred back-end and also in practice it works a lot better then the current SQLite.

@edolstra
Copy link
Member

Hm, in the interest of combating dependency bloat, I'd prefer not to depend on mysql. But given that Qt already depends on it, it doesn't really get worse...

@silverhook
Copy link
Contributor Author

@edolstra, it would be OK to have it only with sqlite by default (against upstream's suggestion), but at least 4.10 doesn't work out of the box as it is set up now in NixOS/nixpkgs.

The minimum what we need to make sure is that it works after you install it ;)

@Phreedom
Copy link
Member

mysql is a runtime-only dep. it should work by default but I don't yet have
time to test it myself. akonadi does work for me with mysql.

@silverhook
Copy link
Contributor Author

@Phreedom I tried just installing mysql alongside, but the bug persisted just the same.

@silverhook
Copy link
Contributor Author

On IRC someone suggested to try with a new user – I did and it didn’t help.

I’ll try if updating to kde_next (4.11) will help, but am very much open to ideas.

@shlevy
Copy link
Member

shlevy commented Apr 5, 2014

Is this still broken on latest nixpkgs? Is there a quick fix?

@shlevy shlevy added the bug label Apr 5, 2014
@silverhook
Copy link
Contributor Author

At least on my install (in the VM), it is still not working even after updating to KDE 4.12.

@wmertens
Copy link
Contributor

@silverhook, how do you reproduce? I don't get any errors.

I'm packaging 4.13.2 right now, I could add mysql if needed but then why not Postgres as well?

@wmertens
Copy link
Contributor

Hmm the wiki is quite clear http://techbase.kde.org/Projects/PIM/Akonadi#Why_not_use_sqlite.3F
Looks like mysql is the best solution. I'll add it.

@silverhook
Copy link
Contributor Author

Thanks, I’ll be very happy to test it once you do ☺

@jgeerds
Copy link
Member

jgeerds commented Oct 14, 2014

Any news? @wmertens @silverhook 😄

@silverhook
Copy link
Contributor Author

@geerds, the last time I tried (a few weeks ago), updating NixOS didn’t solve this issue.

Is there anything else I shoud try out? A new user or reinstalling the whole system again?

@wmertens
Copy link
Contributor

@geerds are you still seeing this with KDE 4.14? I don't have a native nixos box at the moment sorry 😢

@jgeerds
Copy link
Member

jgeerds commented Oct 28, 2014

@wmertens I'll check this within the next few days

@Phreedom
Copy link
Member

On Tuesday, October 28, 2014 14:20:01 Jascha Geerds wrote:

@wmertens I'll check this within the next few days


Reply to this email directly or view it on GitHub:
#1053 (comment)

87610ca should at least enable you to configure akonadi server via
akonadiconsole

@silverhook
Copy link
Contributor Author

If I copy the lines from 87610ca into my /etc/nixos/configuration.nix, it works, even without medling with the akonadiconsole 😸

@Phreedom
Copy link
Member

Feel free to close this :)

@silverhook
Copy link
Contributor Author

If you consider it closed, I consider it closed ;)

@matthiasbeyer
Copy link
Contributor

Hi guys. I have the described issues. (server->settings is a blank window, akonadi crashes my kde plasma desktop at login, etc). Shall I open another issue for this or could this issue possibly be re-opened for this?


The fixes (kdepim_runtime and akonadi in the packages) does not solve this issue for me.

@vcunat
Copy link
Member

vcunat commented Jan 7, 2015

If it looks MySQL-related, then let's continue this issue.

@vcunat vcunat reopened this Jan 7, 2015
@matthiasbeyer
Copy link
Contributor

I don't know whether it looks/is mysql-related, ...

The KDE crash handler cannot tell me anything (no crash output). It appears right after login, plasma is already dead then.


Edit: I can use my OS without it, I just have a black screen. But I have hotkeys for bringing up a terminal or for starting applications, so no problem with that. But ... well... I guess this is not supposed to be like it is.

I can also start "KMail", but it gives me:

The Email program encountered a fatal error and will terminate now.
The error was:
Unable to obtain agent type ''.

and it closes right afterwards.


Edit 2: btw, akonadi is currently installed via nix-env -i akonadi only. Not in my config, but I had it in the config before, which results in exactly the same problems for me.


Edit 3: I can provide a .xsession-errors file, if you want. I could also provide the whole VBox image I'm running nixos in, if we cannot find a solution...


Edit 4: Running nix-env -e akonadi solves the issue, but now I cannot use any program from the "Kontakt" suite, as they require akonadi. Besides, why isn't akonadi packaged as dependency of these, anyways?

@matthiasbeyer
Copy link
Contributor

Short update: I did some further investigation: Installing all KDE packages and then starting akonadi succeeds. I can use kmail, kontact and so on ... everything seems to work!

After I did the nixos-rebuild switch, everything works. But after a reboot, the Plasma Desktop crashes after login. So it seems (to me) that the akonadi server wants to start which crashes the KDE Plasma desktop. I don't know why, though.

@silverhook
Copy link
Contributor Author

@matthiasbeyer, do you use the Eventlist plasmoid?

If so, that was a bug that I encountered in older versions of Eventlist.

@matthiasbeyer
Copy link
Contributor

@silverhook I don't even know what this is 😄

@matthiasbeyer
Copy link
Contributor

The issue vanished after I added the unstable channel. Maybe this was actually the fix for this, maybe not. If you want, I can invastigate further...

@thorhop
Copy link
Contributor

thorhop commented Feb 4, 2015

So this issue keeps popping up on IRC. I didn't get this issue when installing kde4, but now that I'm running with desktopManager.kde5.enable = true; and mysql is not pulled as a dependency within that package set. This means any application trying to use akonadi will fail outright. Shouldn't akonadi be directly dependent upon mysql? This is assuming ofc that pkgs/desktops/plasma-5.1 calls akonadi from pkgs.desktops.kde-4.14.support.akonadi since the plasma repo for neither 5.1 or 5.2 contain an akonadi package (and I couldn't find out what KF5akonadi was).

@ttuegel Thoughts?

@ttuegel
Copy link
Member

ttuegel commented Feb 4, 2015

@thorhop KF5Akonadi refers to the KF5 port of Akonadi, which I have not yet put in Nixpkgs because it is neither stable nor required. Please try adding pkgs.kde4.akonadi, pkgs.mysql, and pkgs.kdeApps.kdepim-runtime to environment.systemPackages and report whether the issue persists or not. If the issue does persist, please specify exactly which command triggers the issue, so that I can reproduce.

@flat235
Copy link

flat235 commented Jul 17, 2015

The issue is still there for me. unstable channel, kde4, all the kde stuff (except games and toys I think). The error is that the db isn't booting because default_home is set to /not/a/real/dir (says akonadi error log). To be honest I am not sure if it uses mysql or mariadb since I don't know how to find out / force one of them. Maybe the issue vanishes for people who setup a global database, thereby setting the default_home var for all dbs?

@wkennington
Copy link
Contributor

This is supposed to be addressed by #8494, but unfortunately this can't be merged until we have new nix features to support reference checking on multiple outputs.

@pwetzel
Copy link
Contributor

pwetzel commented Jun 12, 2016

If this problem is just what @flat235 described (it was my problem), then this issue can be closed. It's fixed in master by #15421.

@ttuegel ttuegel closed this as completed Jun 13, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests