Bug 351375

Summary: added accounts do not show in systemtray applet in plasma 5.3.95 using ktp 15.07.90
Product: [Unmaintained] telepathy Reporter: Robby Engelmann <robby.engelmann>
Component: generalAssignee: Telepathy Bugs <kde-telepathy-bugs>
Status: RESOLVED FIXED    
Severity: grave CC: gcala, gt, heri+kde, martin.ruessler, mklapetek, robby.engelmann
Priority: NOR    
Version: git-latest   
Target Milestone: Future   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: strace output of ktp-contactlist. app start > open settings by question > click "Configure..." on Google account, near Hangouts service.

Description Robby Engelmann 2015-08-16 20:04:52 UTC
the systemtray instant messaging applet not showing the configured accounts

Reproducible: Always

Steps to Reproduce:
1. add jabber accounts in systemsettings online accounts
2. click systemtray instant messaging symbol
3. applet still says: It appears that you do not have any accounts configured


Actual Results:  
no accounts available

Expected Results:  
connecting to accounts is possible

I am using openSuse Tumbleweed with http://download.opensuse.org/repositories/KDE:/Frameworks5/openSUSE_Factory/ and http://download.opensuse.org/repositories/KDE:/Applications/openSUSE_Factory_standard/ as additional repos added.
Comment 1 Tamás Gere 2015-08-18 16:22:19 UTC
Same here! I'm using Kubuntu 15.04 and Kubuntu-CI ppa.

I additionally noticed that the property windows for accounts no longer works in the accounts kcm. The .xsession-error and console error output says: "Couldn't find account for XX", where the "XX" is the id of account in libaccounts db (.config\libaccounts-glib\accounts.db).

I checked .config\libaccounts-glib\accounts.db and .config\signond\signon.db 

I don't know how should an account look like in those dbs.. but:
I found "METHODS",  "MECHANISMS" and "REALMS" tables empty in signon db, as well as the "method_id" and "mechanism_id" fields in "ACL" table. However, in libaccounts db, the 'auth/mechanism' set to web_server' and 'auth/method' set to 'oauth2' in "Settings" table.
I don't know it's normal or not.

When issuing signond commang, I got this in syslog:

Aug 18 18:06:15 gt-digi signond[12434]: Wallet can't be accessed
Aug 18 18:06:15 gt-digi signond[12434]: ../../../../src/signond/credentialsdb.cpp 1324 openSecretsDB SecretsStorage initialization failed:  ""
Aug 18 18:06:15 gt-digi signond[12434]: ../../../../src/signond/credentialsaccessmanager.cpp 478 openCredentialsSystem Failed to open secrets DB.
Aug 18 18:06:15 gt-digi signond[12434]: ../../../../src/signond/signondaemon.cpp 502 init Signond SUCCESSFULLY initialized.
Aug 18 18:06:15 gt-digi signond[12434]: QDBusConnection: name 'org.kde.kwalletd5' had owner '' but we thought it was ':1.1'
Aug 18 18:06:17 gt-digi signond[12434]: ../../../../src/signond/signondaemon.cpp 327 handleUnixSignal signal received:  2
Aug 18 18:06:17 gt-digi signond[12434]: ../../../../src/signond/signondaemon.cpp 352 handleUnixSignal #012#012 SIGINT
Aug 18 18:06:17 gt-digi signond[12434]: ../../../../src/signond/credentialsdb.cpp 1303 ~CredentialsDB
Aug 18 18:06:17 gt-digi signond[12434]: ../../../../src/signond/signondaemon.cpp 86 ~SignonDaemonConfiguration
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 390 init Failed to SUID root. Secure storage will not be available.
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 529 initExtension Loading plugin  "/usr/lib/x86_64-linux-gnu/signon/extensions/libkeyring-kwallet.so"
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 529 initExtension Loading plugin  "/usr/lib/x86_64-linux-gnu/signon/extensions/libsignon-apparmor-ac.so"
Aug 18 18:06:59 gt-digi signond[12455]: virtual SignOn::AbstractAccessControlManager* Plugin::accessControlManager(QObject*) const
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 164 finalize Enter
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 187 init Initializing CredentialsAccessManager with configuration:  "#012#012====== Credentials Access Manager Configuration ======#012#012Using encryption: true#012Metadata DB path: /home/gt/.config/signond/signon.db#012Cryptomanager name: #012ACL manager name: #012Secrets storage name: #012======================================================#012#012"
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 225 init No CryptoManager set, using default (dummy)
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 653 onEncryptedFSMounted
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 239 init No key authorizer set, using default
Aug 18 18:06:59 gt-digi signond[12455]: /build/buildd/signon-8.57+15.04.20150204.1/lib/signond/SignOn/key-handler.cpp 89 initialize No key manager has been registered
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 267 init CredentialsAccessManager successfully initialized...
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsdb.cpp 133 SqlDatabase Supported Drivers: ("QSQLITE", "QMYSQL", "QMYSQL3")
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsdb.cpp 134 SqlDatabase DATABASE NAME [ "/home/gt/.config/signond/signon.db" ]
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsdb.cpp 150 init Database connection succeeded.
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsdb.cpp 161 init SQL table structure already created...
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 399 openSecretsDB Database name: [ "/home/gt/.config/signond/signon-secrets.db" ]
Aug 18 18:06:59 gt-digi signond[12455]: Pass a valid window to KWallet::Wallet::openWallet().
Aug 18 18:06:59 gt-digi signond[12455]: Could not find any platform plugin
Aug 18 18:06:59 gt-digi org.kde.kwalletd5[8630]: Setting useNewHash to true
Aug 18 18:06:59 gt-digi org.kde.kwalletd5[8630]: Wallet new enough, using new hash
Aug 18 18:06:59 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 502 init Signond SUCCESSFULLY initialized.


Aug 18 18:09:00 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 327 handleUnixSignal signal received:  2
Aug 18 18:09:00 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 352 handleUnixSignal #012#012 SIGINT
Aug 18 18:09:00 gt-digi signond[12455]: ../../../../src/signond/credentialsaccessmanager.cpp 669 onEncryptedFSUnmounting
Aug 18 18:09:00 gt-digi signond[12455]: ../../../../src/signond/credentialsdb.cpp 1303 ~CredentialsDB
Aug 18 18:09:00 gt-digi signond[12455]: ../../../../src/signond/signondaemon.cpp 86 ~SignonDaemonConfiguration


When I start ktp-contactlist from commandline, I got:

QCoreApplication::arguments: Please instantiate the QApplication object first
QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave.
QCoreApplication::arguments: Please instantiate the QApplication object first
QCoreApplication::arguments: Please instantiate the QApplication object first
ktp-models: invalid index data requested QModelIndex(-1,-1,0x0,QObject(0x0) )
ktp-models: Built with kpeople support, using kpeople model
tp-qt 0.9.6 DEBUG: Creating new DBusProxy 
tp-qt 0.9.6 DEBUG: Creating new AccountManager: "org.freedesktop.Telepathy.AccountManager" 
tp-qt 0.9.6 DEBUG: ReadinessHelper: new supportedStatuses = QSet(0) 
tp-qt 0.9.6 DEBUG: ReadinessHelper: new supportedFeatures = QSet(QPair("Tp::AccountManager",0)) 
tp-qt 0.9.6 DEBUG: Calling Properties::GetAll(AccountManager) 
tp-qt 0.9.6 DEBUG: Got reply to Properties.GetAll(AccountManager) 
tp-qt 0.9.6 DEBUG: ReadinessHelper::setIntrospectCompleted: feature: QPair("Tp::AccountManager",0) - success: true 
ktp-people: Account manager ready
ktp-common-internals: Current presence changed
ktp-common-internals: Current presence changed
tp-qt 0.9.6 DEBUG: Client registered - busName: "org.freedesktop.Telepathy.Client.ListWatcher" objectPath: "/org/freedesktop/Telepathy/Client/ListWatcher" interfaces: ("org.freedesktop.Telepathy.Client.Observer") 
WARNING: Disabling PulseAudio integration for lack of GLib event loop.


The contactlist then asks: "You have no IM accounts configured. Would you like to do that now?". I click "Yes", then in the settings window (which is same as kaccounts kcm), I see my accounts, but still can't get the property windows while having the "Couldn't find account for 1"..

I tried delete signon and libaccounts db, which successfully removed all of my (older, telepathy-based) accounts from the account manager, but after added google acc. again, the result is same...

Attaching strace output of ktp-contactlist...
Comment 2 Tamás Gere 2015-08-18 16:24:07 UTC
Created attachment 94095 [details]
strace output of ktp-contactlist. app start > open settings by question > click "Configure..." on Google account, near Hangouts service.
Comment 3 Robby Engelmann 2015-08-21 05:12:37 UTC
Still valid for me in 15.08.0
Comment 4 Giuseppe Calà 2015-08-24 09:38:11 UTC
I confirm this with 15.08 from Chakra
Comment 5 Martin Klapetek 2015-08-24 14:07:18 UTC
Thanks for the reports

Can you post the output of "mc-tool dump" please? Feel free to replace any sensitive data in it.
Comment 6 Giuseppe Calà 2015-08-24 14:24:29 UTC
"mc-dump" returns an empty output but but IM Settings is https://i.imgur.com/XlfXcze.png
Comment 7 Robby Engelmann 2015-08-24 14:33:55 UTC
mc-tool dump empty here as well (openSUSE Tumbleweed)
Comment 8 Martin Klapetek 2015-08-24 16:02:26 UTC
Ok, can you guys check you have telepathy-accounts-signon installed? This is the crucial part that makes everything work.
Comment 9 Robby Engelmann 2015-08-24 17:31:28 UTC
indeed, that seems to be the cause of the problem...there is no such packages here on Tumbleweed. I'll try to contact the packagers for kde.
whats with the other distros?
Comment 10 Robby Engelmann 2015-08-24 18:36:29 UTC
now I installed the packages from another repo and it seems to work...however, the kde-talk accounts seems to not connect. I get notifications, that there was an connection error.

the mc-tool dump:
Account: gabble/jabber/ktp_2dkde_2dtalk_2dim_18
Display Name: robby.engelmann@kdetalk.net
     Enabled: enabled
        Icon: kde
    Connects: only when requested
     Service: ktp-kde-talk

Presences:
   Automatic: available (2) ""
     Current: offline (1) ""
   Requested: available (2) ""
    Changing: yes

Storage:
    Provider: im.telepathy.Account.Storage.AccountsSSO
  Identifier: uint32 18
Restrictions: Cannot_Set_Service

       (GStrv) fallback-socks5-proxies = [""]
      (string) resource = kde-telepathy-308240
      (string) account = robby81@jabber.de

------------------------------------------------------------

     Account: gabble/jabber/ktp_2djabber_2dim_19
Display Name: robby81@jabber.de
  Normalized: robby81@jabber.de
     Enabled: enabled
        Icon: im-jabber-talk
    Connects: only when requested
    Nickname: Robby Engelmann
     Service: ktp-jabber

Presences:
   Automatic: available (2) ""
     Current: offline (1) ""
   Requested: available (2) ""
    Changing: yes

Storage:
    Provider: im.telepathy.Account.Storage.AccountsSSO
  Identifier: uint32 19
Restrictions: Cannot_Set_Service

       (GStrv) fallback-socks5-proxies = [""]
      (string) resource = kde-telepathy-308240
      (string) account = robby81@jabber.de
Comment 11 Giuseppe Calà 2015-08-25 05:45:15 UTC
The package is missing in Chakra; package maintainers alerted
Comment 12 Martin 2015-08-26 13:03:59 UTC
I have extra/telepathy-accounts-signon 1.0-1 [installed], but get no mc-dump tool output nor can I connect.
Comment 13 Martin Klapetek 2015-08-26 15:46:23 UTC
@Martin - you do have kde-telepathy version 15.08, right?
Comment 14 Martin 2015-08-26 20:40:32 UTC
Yes, I have. On a second machine, reinstalling the telepathy-meta package solved the problem. I will try that and report back.
Comment 15 Martin 2015-08-27 09:08:45 UTC
After deleting an account and re-adding it the account seemed to work again. It looks like the issue is solved.