Bug 367077

Summary: Telepathy not working for user without local account
Product: [Unmaintained] telepathy Reporter: Johannes Midgren <johannes>
Component: generalAssignee: Telepathy Bugs <kde-telepathy-bugs>
Status: RESOLVED WORKSFORME    
Severity: grave CC: abyss.andrey, quazgar
Priority: NOR    
Version: unspecified   
Target Milestone: Future   
Platform: Kubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Johannes Midgren 2016-08-17 07:41:17 UTC
At work I have joined my computer to our Active Directory using winbind. To be able to setup and administrate the machine when there are network problems, I also have a local account on the machine (created at installation).

When logged in with the local user I can use Telepathy just fine but when logged in through winbind/kerberos the Telepathy Contact List does not seem to register my Online Accounts. I don't know if the problem exists for all kind of "non-local" accounts though.

As there are so many components involved here, it's very hard for me as a user to know what causes the error. I would be glad to help sharing more details about my setup and to provide logs if possible.

This problem is not new, but I did not recognize that it was connected to me using a "non-local" account until now. 

Reproducible: Always

Steps to Reproduce:
On a system with no previously configured Online Accounts:
1. Register an Online Account e.g. by clicking the Telepathy Plasma Widget and then "Configure".
2. Click the Plasma Widget again and watch its content.
3. Open the IM Contact List.

Actual Results:  
1. I'm able to register Online Accounts through System Settings or Plasma. I have tried with a local Jabber server and my Google account.
2. The Plasma widget still says "It appears you have no accounts configured".
3. When opening the Contact List I immediately get an error message stating "You have no IM accounts configured. Would you like to do that now?". Clicking "Yes" I can see my previously configured accounts but if I select an entry and click "Configure", nothing happens. 

Expected Results:  
1. Watch the widget change as the account is brought online. 
2. My online contacts are listed.
3. My online contacts are listed.

I'm now running Kubuntu 16.04 (.01) and have installed the following packages as part of setting up AD authentication: krb5-user, winbind, samba, libnss-winbind, libpam-winbind, libpam-krb5.

My /etc/nsswitch.conf looks like this (if it at all matters...):
passwd:         compat winbind
group:          compat winbind
shadow:         compat winbind
gshadow:        files

hosts:          files mdns4_minimal [NOTFOUND=return] dns wins
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis
Comment 1 Johannes Midgren 2016-08-17 09:29:32 UTC
I tried running ktp-contactlist from the command line and copied the output here.

When Contact List started it immediately shows the error dialog claiming I have no accounts. I click "Yes" to add accounts, selects my (previously created and still listed) jabber account and finally click "Configure" (after which nothing happens except for the last two lines being added to the log).

$ ktp-contactlist 
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
ktp-people: Account manager ready
ktp-common-internals: Current presence changed
ktp-common-internals: Current presence changed
Don't know how to handle layout QVBoxLayout(0x1559970, name = "verticalLayout_4")
QObject::connect: No such slot KTp::SettingsKcmDialog::enableButtonApply(bool)
QObject::connect: No such signal KTp::SettingsKcmDialog::applyClicked()
ktp-logger: loaded factory : TpLoggerPluginFactory(0x11c4090)
ktp-logger: loaded logger plugin :  TpLoggerPlugin(0x164e5b0)
Created Utils instance
Checking "ktp-haze-gadugadu-im" "ktp-haze-yahoo"
Checking "ktp-sipe-haze-im" "ktp-haze-yahoo"
Checking "ktp-kde-talk-im" "ktp-haze-yahoo"
Checking "ktp-morse-telegram-im" "ktp-haze-yahoo"
Checking "ktp-haze-yahoo-im" "ktp-haze-yahoo"
Found a service, not skipping: "ktp-haze-yahoo-im"
Checking "ktp-haze-gadugadu-im" "ktp-morse-telegram"
Checking "ktp-sipe-haze-im" "ktp-morse-telegram"
Checking "ktp-kde-talk-im" "ktp-morse-telegram"
Checking "ktp-morse-telegram-im" "ktp-morse-telegram"
Found a service, not skipping: "ktp-morse-telegram-im"
Checking "ktp-haze-gadugadu-im" "owncloud"
Checking "ktp-sipe-haze-im" "owncloud"
Checking "ktp-kde-talk-im" "owncloud"
Checking "ktp-morse-telegram-im" "owncloud"
Checking "ktp-haze-yahoo-im" "owncloud"
Checking "ktp-generic-im" "owncloud"
Checking "ktp-jabber-im" "owncloud"
Checking "google-im" "owncloud"
Checking "ktp-haze-sametime-im" "owncloud"
Checking "ktp-haze-icq-im" "owncloud"
Checking "ktp-sipe-im" "owncloud"
Checking "ktp-haze-aim-im" "owncloud"
Checking "ktp-haze-gadugadu-im" "ktp-sipe-haze"
Checking "ktp-sipe-haze-im" "ktp-sipe-haze"
Found a service, not skipping: "ktp-sipe-haze-im"
Checking "ktp-haze-gadugadu-im" "ktp-sipe"
Checking "ktp-sipe-haze-im" "ktp-sipe"
Checking "ktp-kde-talk-im" "ktp-sipe"
Checking "ktp-morse-telegram-im" "ktp-sipe"
Checking "ktp-haze-yahoo-im" "ktp-sipe"
Checking "ktp-generic-im" "ktp-sipe"
Checking "ktp-jabber-im" "ktp-sipe"
Checking "google-im" "ktp-sipe"
Checking "ktp-haze-sametime-im" "ktp-sipe"
Checking "ktp-haze-icq-im" "ktp-sipe"
Checking "ktp-sipe-im" "ktp-sipe"
Found a service, not skipping: "ktp-sipe-im"
Checking "ktp-haze-gadugadu-im" "ktp-kde-talk"
Checking "ktp-sipe-haze-im" "ktp-kde-talk"
Checking "ktp-kde-talk-im" "ktp-kde-talk"
Found a service, not skipping: "ktp-kde-talk-im"
Checking "ktp-haze-gadugadu-im" "ktp-jabber"
Checking "ktp-sipe-haze-im" "ktp-jabber"
Checking "ktp-kde-talk-im" "ktp-jabber"
Checking "ktp-morse-telegram-im" "ktp-jabber"
Checking "ktp-haze-yahoo-im" "ktp-jabber"
Checking "ktp-generic-im" "ktp-jabber"
Checking "ktp-jabber-im" "ktp-jabber"
Found a service, not skipping: "ktp-jabber-im"
Checking "ktp-haze-gadugadu-im" "ktp-haze-icq"
Checking "ktp-sipe-haze-im" "ktp-haze-icq"
Checking "ktp-kde-talk-im" "ktp-haze-icq"
Checking "ktp-morse-telegram-im" "ktp-haze-icq"
Checking "ktp-haze-yahoo-im" "ktp-haze-icq"
Checking "ktp-generic-im" "ktp-haze-icq"
Checking "ktp-jabber-im" "ktp-haze-icq"
Checking "google-im" "ktp-haze-icq"
Checking "ktp-haze-sametime-im" "ktp-haze-icq"
Checking "ktp-haze-icq-im" "ktp-haze-icq"
Found a service, not skipping: "ktp-haze-icq-im"
Checking "ktp-haze-gadugadu-im" "ktp-haze-sametime"
Checking "ktp-sipe-haze-im" "ktp-haze-sametime"
Checking "ktp-kde-talk-im" "ktp-haze-sametime"
Checking "ktp-morse-telegram-im" "ktp-haze-sametime"
Checking "ktp-haze-yahoo-im" "ktp-haze-sametime"
Checking "ktp-generic-im" "ktp-haze-sametime"
Checking "ktp-jabber-im" "ktp-haze-sametime"
Checking "google-im" "ktp-haze-sametime"
Checking "ktp-haze-sametime-im" "ktp-haze-sametime"
Found a service, not skipping: "ktp-haze-sametime-im"
Checking "ktp-haze-gadugadu-im" "google"
Checking "ktp-sipe-haze-im" "google"
Checking "ktp-kde-talk-im" "google"
Checking "ktp-morse-telegram-im" "google"
Checking "ktp-haze-yahoo-im" "google"
Checking "ktp-generic-im" "google"
Checking "ktp-jabber-im" "google"
Checking "google-im" "google"
Found a service, not skipping: "google-im"
Checking "ktp-haze-gadugadu-im" "ktp-gadugadu"
Found a service, not skipping: "ktp-haze-gadugadu-im"
Checking "ktp-haze-gadugadu-im" "ktp-haze-aim"
Checking "ktp-sipe-haze-im" "ktp-haze-aim"
Checking "ktp-kde-talk-im" "ktp-haze-aim"
Checking "ktp-morse-telegram-im" "ktp-haze-aim"
Checking "ktp-haze-yahoo-im" "ktp-haze-aim"
Checking "ktp-generic-im" "ktp-haze-aim"
Checking "ktp-jabber-im" "ktp-haze-aim"
Checking "google-im" "ktp-haze-aim"
Checking "ktp-haze-sametime-im" "ktp-haze-aim"
Checking "ktp-haze-icq-im" "ktp-haze-aim"
Checking "ktp-sipe-im" "ktp-haze-aim"
Checking "ktp-haze-aim-im" "ktp-haze-aim"
Found a service, not skipping: "ktp-haze-aim-im"
Adding plugin KAccountsUiProvider(0x11ef6c0) "ktpaccountskcm_plugin_kaccounts.so"
Unexpected topLevelWindows found: 2 please report a bug
 Adding service "IM"
Adding plugin OwnCloudWizard(0x15970b0) "owncloud_plugin_kaccounts.so"
Unexpected topLevelWindows found: 2 please report a bug
Config UI ready 3 Accounts::Account(0x1627db0)
Couldn't find account for 3
Comment 2 abyss.andrey 2017-08-29 13:13:39 UTC
I can confirm the issue.
KDE neon 5.10
KDE Plasma 5.10.5
KDE Frameworks 5.37.0
Qt 5.9.1

Computer joined Active Directory with help of pbis-open
Domain account can not use telepathy
ktp-contactlist out is the same

With local account everything is OK.
Comment 3 quazgar 2018-01-30 10:18:34 UTC
I think I can confirm this bug, for a similar setting: A user with a local home directory can create accounts in kde-telepathy alright, but another user with a home directory linked from an NFS mount to /home/$USER can not.  The latest output from ktp-contactlist on the terminal is:

...
Info:
        Id: 5
        caption: "ktp-jabber"
        owner: ""
        userName: "username@server.net"
AccountsModel::accountCreated:  5
Config UI ready 5 Accounts::Account(0x7f30b801a1c0)
Couldn't find account for 5

The user's password shows up in kwalletmanager however, as ID 5 in accounts/Maps/.
Comment 4 quazgar 2018-01-30 10:20:39 UTC
KDE Telepathy Contact List Version 17.08.3
KDE Frameworks 5.37.0
Qt 5.9.2
Comment 5 Justin Zobel 2022-11-15 22:58:32 UTC
Thank you for reporting this issue in KDE software. As it has been a while since this issue was reported, can we please ask you to see if you can reproduce the issue with a recent software version?

If you can reproduce the issue, please change the status to "REPORTED" when replying. Thank you!
Comment 6 Johannes Midgren 2022-11-16 06:35:32 UTC
I can confirm that the problem can still be reproduced in Kubuntu 20.04, although my setup this time is a bit different. There is still no local account on the machine (i.e. no record in /etc/passwd), but I'm using FreeIPA instead of Active Directory as identity provider.

Reproduce like this:
- Enter system settings and goto Network Accounts ("Nätkonton" in my swedish locale)
- Hit "Add new Account"
- Select Telegram
- At this point I can see something quickly flashing by on the screen but I'm immediately brought back to the display shown when entering the "Network Accounts" section (i.e. a list of my successfully registered online accounts). That is, I'm not even shown a form where I can enter the account details.

I'm not sure this version of Telepathy can be considered "recent" though, so I'll try to reproduce the issue in a newer environment when I have the opportunity and then change status of this ticket. Of course others having newer versions at hand are very welcome to run ahead, I'm not sure when I will have a newer version available.
Comment 7 Bug Janitor Service 2022-12-01 05:13:52 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 8 Bug Janitor Service 2022-12-16 05:15:45 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!