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

evolution doesn't work #12756

Closed
ben0x539 opened this issue Feb 1, 2016 · 19 comments
Closed

evolution doesn't work #12756

ben0x539 opened this issue Feb 1, 2016 · 19 comments
Labels
0.kind: bug 6.topic: GNOME GNOME desktop environment and its underlying platform 9.needs: documentation

Comments

@ben0x539
Copy link
Contributor

ben0x539 commented Feb 1, 2016

I'm trying to use evolution on a fairly fresh NixOS. It says 16.03pre75806.77f8f35 (Emu). I installed evolution with nix-env -i evolution. I'm not running gnome; I have .config/evolution and .local/share/evolution directories from another system.

When starting it, I get the following terminal output:

** (evolution:3935): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

(evolution:3935): Gtk-WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

and then a bunch of critical assertion failures, as you do with Gtk programs.

Instead of loading up my email accounts it greets me to "Welcome to Evolution" and acts as if it has never seen me before, prompting me for my email accounts. If I enter my info it occasionally indicates that it's unable to talk to mail servers like when I press the button to make it ask my mail servers for supported authentication methods. When I get through the whole thing and press Finish, I get a dialog window saying "The name org.gnome.evolution.dataserver.Sources5 was not provided by any .service files" and cannot proceed.

Then I run nix-env -i evolution-data-server and restart evolution and get the following terminal output:

** (evolution:3982): WARNING **: Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files
GLib-GIO-Message: Using the 'memory' GSettings backend.  Your settings will not be saved or shared with other applications.

(evolution:3982): Gtk-WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files

** (evolution:3982): CRITICAL **: em_utils_folder_is_sent: assertion 'CAMEL_IS_FOLDER (folder)' failed

It does seem to start up normally, then, and lists my email accounts and seems generally aware of my settings. However it still is unable to connect to mail servers, with those blue banner bars at the top going 'Failed to connect account "<my account name here>".', 'The reported error was "Could not connect to imap.gmail.com: Network is unreachable".'

I'm confident I am not having network issues because it happens with multiple mail servers, to which I can connect fine otherwise.

@jgillich
Copy link
Member

jgillich commented Feb 1, 2016

I think a lot of the GNOME stuff only works when GNOME is enabled currently. @lethalman

@lucabrunox
Copy link
Contributor

We can make it work for non-gnome I think. It should be enough for evolution to be wrapped with necessary gio modules. As for evolution-data-server, it's probably enough to put it in propagatedUserEnvPkgs and avoid the nixos module altogether.

@jgeerds jgeerds added 0.kind: bug 6.topic: GNOME GNOME desktop environment and its underlying platform labels Feb 1, 2016
@ben0x539
Copy link
Contributor Author

If I run evolution with GIO_EXTRA_MODULES={glib_networking}/lib/gio/modules set and evolution-data-server in profile, evolution gets my accounts and is able to connect.


gnome-keyring is apparently also needed. Without gnome-keyring in my profile, evolution prompts me for a password rather often, like a dozen times in a row on startup and then once per connection, or something. I'm not checkboxing "Add this password to your keyring", but the expected behavior is that evolution only prompts me once per start.

Terminal output:

(evolution:30086): e-data-server-ui-WARNING **: credentials_prompter_store_credentials_cb: Failed to store source credentials: The name org.freedesktop.secrets was not provided by any .service files
** Message: Remote error from secret service: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.secrets was not provided by any .service files

Apparently we also need the gio modules from dconf for evolution to remember its window size across restarts, the default window is rather tiny.


On the Contacts view:

Unable to open address book 'Personal'
This address book cannot be opened. Please check that the path $HOME/.local/share/evolution/addressbook/system-address-book exists and that permissions are set to access it.

Detailed error message: Unable to connect to 'Personal': The name org.gnome.evolution.dataserver.AddressBook9 was not provided by any .service files

Stderr:

(evolution:14811): evolution-util-WARNING **: name_selector_get_client_cb: Unable to connect to 'Personal': The name org.gnome.evolution.dataserver.AddressBook9 was not provided by any .service files

Also, in the Calendar view:

Failed to open calendar 'Contacts : Birthdays & Anniversaries'
Unable to connect to 'Birthdays & Anniversaries': The name org.gnome.evolution.dataserver.Calendar7 was not provided by any .service files


Also, this line shows up a whole lot on stderr:

(evolution:16370): dconf-WARNING **: failed to commit changes to dconf: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name ca.desrt.dconf was not provided by any .service files

Would it be appropriate to have evolution unconditionally propagate evolution-data-server and gnome-keyring? Propagating the entire output of evolution-data-server seems really coarse, but I'm not sure if there's a middle ground.

@lucabrunox
Copy link
Contributor

The problem here is quite controversial, however I think being e-d-s and gnome-keyring single-instance applications, it's doable to propagate them.
I don't care about propagating the entire e-d-s output, we're talking about evolution, not a simple unix tool.

If propagating e-d-s and gnome-keyring in the profile works, I'm fine with it.

@jgeerds
Copy link
Member

jgeerds commented Mar 8, 2018

I can't reproduce this issue with recent version of nixpkgs. I've tested Evolution on Debian (not NixOS) and it works just fine. I'm think the reporter has fixed the issue himself: #17926.

I'm closing it. If the issue still occurs please feel free to reopen it.

@jgeerds jgeerds closed this as completed Mar 8, 2018
@fgaz
Copy link
Member

fgaz commented Feb 23, 2019

I can reproduce (at least part of) this on 19.03pre169108.36f31600749 (Koi).

The settings are not modifiable and I get a lot of

(evolution:16370): dconf-WARNING **: failed to commit changes to dconf: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name ca.desrt.dconf was not provided by any .service files

@jschwartzenberg
Copy link

Same result as fgaz here. The settings can not be saved with this error:

The name org.gnome.evolution.dataserver.Sources5 was not provided by any .service files

And the exact same dconf warning over & over again.

@sheyll
Copy link

sheyll commented Mar 18, 2019

I ran into this as well.

The name org.gnome.evolution.dataserver.Sources5 was not provided by any .service files

@raboof
Copy link
Member

raboof commented Nov 2, 2020

I also get "The name org.gnome.evolution.dataserver.Sources5 was not provided by any .service files" after the last email account configuration dialog, so I can't save the settings.

@alyssais alyssais reopened this Mar 16, 2021
@stale
Copy link

stale bot commented Sep 14, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Sep 14, 2021
@fgaz
Copy link
Member

fgaz commented Jan 7, 2022

This appears to be fixed for me. Not sure if something changed in nixpkgs or if I enabled some option that did the trick (maybe services.gnome.{gnome-settings-daemon,evolution-data-server,gnome-keyring}.enable).

@ben0x539 @jschwartzenberg @sheyll @raboof is this fixed for you?

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jan 7, 2022
@ben0x539
Copy link
Contributor Author

sorry can't say, i stopped using email a while back

@raboof
Copy link
Member

raboof commented Jan 10, 2022

@raboof is this fixed for you?

I'm still getting "The name org.gnome.evolution.dataserver.Sources5 was not provided by any .service files" when I nix-shell evolution and try to go through the account configuration dialog, on nixos-unstable ff377a7

@fgaz
Copy link
Member

fgaz commented Jan 12, 2022

I just discovered that since a year ago there's a programs.evolution.enable option: https://github.com/NixOS/nixpkgs/blame/386234e2a61e1e8acf94dfa3a3d3ca19a6776efb/nixos/modules/services/desktops/gnome/evolution-data-server.nix#L37-L38

I think it can be expected that programs that have a programs.*.enabled option fail to launch if that's not enabled.
Maybe that could be better documented? There could be a section for evolution in the nixos manual, or even a generic section similar to the systemd one: https://nixos.org/manual/nixos/stable/index.html#sect-nixos-systemd-nixos

@raboof
Copy link
Member

raboof commented Jan 12, 2022

I just discovered that since a year ago there's a programs.evolution.enable option: https://github.com/NixOS/nixpkgs/blame/386234e2a61e1e8acf94dfa3a3d3ca19a6776efb/nixos/modules/services/desktops/gnome/evolution-data-server.nix#L37-L38

Hmm, that is a NixOS option though, so I guess it can't be used from nix-shell, home-manager or when using Nix and nixpkgs on other Linux distro's, right?

I think it can be expected that programs that have a programs.*.enabled option fail to launch if that's not enabled. Maybe that could be better documented? There could be a section for evolution in the nixos manual, or even a generic section similar to the systemd one: https://nixos.org/manual/nixos/stable/index.html#sect-nixos-systemd-nixos

I agree just documenting that it cannot be used completely standalone, and needs some context to be in place (pointing to the NixOS option as an easy way to achieve that), would be useful and 'sufficient'. I guess the nixpkgs manual would make most sense for that? Though I don't see a section where it would fit particularly well...

@nioncode
Copy link
Member

nioncode commented May 5, 2022

I'm running nixos, but cannot get evolution to work. I'm not running gnome (but just lightdm+i3).

To successfully run evolution, I had to set the following in my configuration.nix:

  programs.dconf.enable = true;
  services.gnome.evolution-data-server.enable = true;
  services.gnome.gnome-settings-daemon.enable = true;
  programs.evolution.enable = true;

It would be great if just doing programs.evolution.enable = true; pulls in the required dependencies.

@ribosomerocker
Copy link
Contributor

I get this same error if I do nix shell nixpkgs#evolution. Any way to solve it with just nix shell?

@SuperSandro2000
Copy link
Member

replaced by #222431

@winny-
Copy link
Contributor

winny- commented Nov 10, 2023

I'm not sure if offloading work to the user is the best way to approach this task. It sounds like evolution doesn't launch with certain misconfiguration. Why not fix the derivation to not permit this misconfiguration?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0.kind: bug 6.topic: GNOME GNOME desktop environment and its underlying platform 9.needs: documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.