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

quasselcore doesn't work because qt5 libs don't have sqlite plugin enabled #28911

Closed
anderspapitto opened this issue Sep 2, 2017 · 6 comments
Milestone

Comments

@anderspapitto
Copy link
Contributor

I'm on NixOS unstable, the relevant configuration is just services.quassel.enable = true

here's the journalctl logs

Sep 02 15:40:16 thufir systemd[1]: Started Quassel IRC client daemon.                                                                                                                                                                         
Sep 02 15:40:16 thufir quasselcore[18374]: ()                                                                                                                                                                                                 
Sep 02 15:40:16 thufir quasselcore[18374]: Could not initialize any storage backend! Exiting...                                                                                                                                               
Sep 02 15:40:16 thufir quasselcore[18374]: Currently, Quassel supports SQLite3 and PostgreSQL. You need to build your                                                                                                                         
Sep 02 15:40:16 thufir quasselcore[18374]: Qt library with the sqlite or postgres plugin enabled in order for quasselcore                                                                                                                     
Sep 02 15:40:16 thufir quasselcore[18374]: to work.   
@anderspapitto
Copy link
Contributor Author

I suspect this might be a special case of "QT_PLUGIN_PATH mechanisms do not work from within systemd services"

@globin
Copy link
Member

globin commented Sep 8, 2017

cc @ttuegel

@globin globin added this to the 17.09 milestone Sep 8, 2017
@ttuegel
Copy link
Member

ttuegel commented Sep 8, 2017

Does the Quassel service actually install the daemon into the system environment, or does just put an absolute store path in ExecPath= for the service? If the latter, it (unfortunately) should not be expected to work. If the former, we are probably assuming something is set in the environment that systemd doesn't do.

@orivej
Copy link
Contributor

orivej commented Sep 8, 2017

Quassel puts its store path in ExecPath=. I guess that https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/services/x11/display-managers/sddm.nix is a good example of a Qt service.

@DIzFer
Copy link
Contributor

DIzFer commented Sep 20, 2017

@ttuegel what does "install the daemon into the system environment" mean in this context?

@orivej
Copy link
Contributor

orivej commented Sep 20, 2017

@DIzFer It means environment.systemPackages = [ sddm ]; and execCmd = "exec /run/current-system/sw/bin/sddm"; in the sddm example.

quasselcore also works as a service with this preFixup in pkgs/applications/networking/irc/quassel/default.nix:

preFixup = lib.optionalString buildCore ''
  wrapProgram "$out/bin/quasselcore" --suffix PATH : "${qtbase.bin}/bin"
''

orivej added a commit to orivej/nixpkgs that referenced this issue Sep 29, 2017
fpletz pushed a commit that referenced this issue Oct 14, 2017
Fixes #28911

(cherry picked from commit 8c70b55)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants