Bug 759755

Summary: Printer Configuration not available in System Settings
Product: [Fedora] Fedora Reporter: Ignat Semenov <ragnarokk91>
Component: kdeadminAssignee: Than Ngo <than>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: jreznik, kevin, ltinkl, rdieter, rnovacek, ry, smparrish, than
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-12-08 14:48:48 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Ignat Semenov 2011-12-03 16:09:45 UTC
Description of problem:
When I try to open the Printer Configuration page in the System Settings, the following occurs. First, I'm prompted for the root password. After entering the password, there is a small delay (about a second or less), then this window appears:

http://imagebin.org/186769

Version-Release number of selected component (if applicable):
4.7.3

How reproducible:
Always

Comment 1 Rex Dieter 2011-12-03 18:09:40 UTC
Strange, seems to open ok for me.  maybe there's a missing dependency somewhere.

what does running manually:

kcmshell4 system-config-printer-kde

or 

kdesu kcmshell4 system-config-printer-kde

do? (work ok?  same error?  something else?)

Comment 2 Rex Dieter 2011-12-03 18:11:03 UTC
while we're at it,

$ rpm -q system-config-printer-kde system-config-printer-libs PyKDE4 PyQt4


please.

Comment 3 Kevin Kofler 2011-12-03 20:10:01 UTC
This error typically shows up when one of the Python modules imported in system-config-printer-kde is missing.

Comment 4 Ignat Semenov 2011-12-04 20:24:46 UTC
kcmshell4 system-config-printer-kde

Same window and the following output in the terminal (run as regular user):

kcmshell(2095)/kdecore (KSycoca) KSycocaPrivate::openDatabase: Trying to open ksycoca from "/var/tmp/kdecache-yarly/ksycoca4"
kcmshell(2095)/kutils (KCMultiDialog) KCMultiDialog::addModule: "Printer Configuration"
kcmshell(2095)/kutils (KCModuleProxy) KCModuleProxyPrivate::loadModule: Module not already loaded, loading module  "Printer Configuration"  from library  "kpythonpluginfactory"  using symbol  "kpythonpluginfactory"
kcmshell(2095)/python (plugin) KPythonPluginFactory::KPythonPluginFactory: KPythonPluginFactory::KPythonPluginFactory()
kcmshell(2095)/python (plugin) KPythonPluginFactory::initialize: Initializing Python interpreter.
kcmshell(2095)/python (plugin) KPythonPluginFactory::initialize: Succesfully initialized Python interpreter.
kcmshell(2095)/python (plugin) KPythonPluginFactory::create: KPythonPluginFactory::create iface:  KCModule
kcmshell(2095)/python (plugin) KPythonPluginFactory::create: keyword to be used for finding the plugin code:  "system-config-printer-kde/system-config-printer-kde.py"
kcmshell(2095)/python (plugin) KPythonPluginFactory::create: Path to plugin code is:  "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py"
kcmshell(2095)/python (plugin): Error while running factory function for Python plugin:  "system-config-printer-kde/system-config-printer-kde.py" 
Traceback (most recent call last):
  File "<string>", line 18, in kpythonpluginfactory_bridge
  File "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py", line 4397, in CreatePlugin
    kcm = u.makeui(component_data, widget_parent)
  File "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py", line 172, in makeui
    encryption=encryption)
  File "/usr/share/kde4/apps/system-config-printer-kde/authconn.py", line 168, in __init__
    self._connect ()
  File "/usr/share/kde4/apps/system-config-printer-kde/authconn.py", line 200, in _connect
    encryption=self._encryption)
RuntimeError: failed to connect to server
kcmshell(2095)/python (plugin) KPythonPluginFactory::create: KPythonPluginFactory::create iface:  KCModule
kcmshell(2095)/python (plugin) KPythonPluginFactory::create: keyword to be used for finding the plugin code:  ""
kcmshell(2095)/python (plugin) KPythonPluginFactory::create: Path to plugin code is:  "/home/yarly/.kde/share/apps/"
kcmshell(2095)/python (plugin): Failed to import module 
kcmshell(2095)/kcontrol KCModuleLoader::loadModule: This module has no valid entry symbol at all. The reason could be that it's still using K_EXPORT_COMPONENT_FACTORY with a custom X-KDE-FactoryName which is not supported anymore 
kcmshell(2095)/kutils (KCMultiDialog) KCMultiDialog::addModule: adding KCM  "Printer Configuration"  at the top level
kcmshell(2095)/kutils (KCMultiDialog) KCMultiDialogPrivate::_k_slotCurrentPageChanged:
kcmshell(2095)/kutils (KCMultiDialog) KCMultiDialogPrivate::_k_clientChanged:
kcmshell(2095)/kutils (KCMultiDialog) KCMultiDialogPrivate::_k_clientChanged:


Now

rpm -q system-config-printer-kde system-config-printer-libs PyKDE4 PyQt4

system-config-printer-kde-4.7.3-1.fc16.x86_64
system-config-printer-libs-1.3.7-2.fc16.x86_64
PyKDE4-4.7.3-1.fc16.1.x86_64
PyQt4-4.8.6-1.fc16.x86_64

So the printer config GUI should work in theory, but in practice it doesn't.

Comment 5 Ignat Semenov 2011-12-05 22:14:17 UTC
Any news on this? I have some free time these days, so can aid in debugging this issue further.

Comment 6 Rex Dieter 2011-12-05 22:38:17 UTC
Is the cups service running?

Comment 7 Ignat Semenov 2011-12-05 23:00:49 UTC
This is not clear. As in, the CUPS package is installed (the package is called "cups"), there are SysV service entries in /etc/ (such as K10cups), BUT when I do

systemctl --type=service --all

there is no CUPS in the listing. There is no CUPS process in the list of the running processes either. Hope this answers your question.

Comment 8 Ignat Semenov 2011-12-07 18:31:18 UTC
Are there any further debugging steps possible? I'd like to help in fixing this issue.

Comment 9 Rex Dieter 2011-12-07 18:44:40 UTC
ok, no running cups makes it hard to configure a printer ... for cups.

try,  (as root):
systemctl start cups.service

Does that make it work?

Comment 10 Ignat Semenov 2011-12-08 11:12:05 UTC
OK. I've found it, kinda.

With the CUPS service started, the configuration window appears just fine. Without the CUPS service running, there is this error.

I think this should be filed against KDE now? Because it looks like undefined behavior of the Printer KCM.

Comment 11 Kevin Kofler 2011-12-08 14:48:48 UTC
You can't print without CUPS. There's no bug here.

Comment 12 Ignat Semenov 2011-12-08 15:52:21 UTC
There is a bug. This window displays an error of unknown kind ("Factory? Module? Provides? not all users are coders, and I'm a coder but I don;t know Python), whereas it should say "No CUPS running. Make sure CUPS is launched and try again".

This is clearly not a Fedora bug but an upstream one. So you are right in that you've have closed it, but I'll change the resolution to "Upstream" and file this bug against KDE.