Comment 17 for bug 934291

Revision history for this message
Mario Sánchez Prada (mariospr) wrote :

I've been investigating this issue recently and can confirm that, while this is not an issue in my Fedora machine with the very same version of cups, cups-pk-helper and gnome-control-center installed, it is still present in Ubuntu, due to what I believe it might be a bug in the way CUPS is being packaged by debian (thus Ubuntu would have inherited the bug). Thus it's probably a bug in Debian as well.

Long story short, while Fedora configures "root" to be part of CUPS system administration group, Debian/Ubuntu does not do that and instead defines "lpadmin" as the only member of that group. Now, because gnome-control-center actually relies in cups-pk-helper to cancel jobs, CUPS won't allow doing that in ubuntu because neither the owner of the job (cups-pk-helper runs as root, not as the username originating the cancel request from g-c-c) nor an user belonging to SystemGroup is requesting such an operation. As a result, the operation is not cancelled.

You can see a more detailed explanation here: https://bugzilla.gnome.org/show_bug.cgi?id=669679#c23

I fixed this locally by changing the debian/rules so that I pass "--with-system-groups='lpadmin root'" to dh_auto_configure, instead of simply passing 'lpadmin' and that works for me. I think it's worth reporting this to debian, but it's unclear to me how to do so, so I thought I would report it here for now, in case someone could lend a hand with it.

Thoughts?

PS: A temporary fix for users facing this problem, better than setting JobsPrivateValues to 'none', would be to simply edit /etc/cups/cups-files.conf and manually add 'root' to SystemGroup