[pkg-cinnamon] Bug#856699: cinnamon: recommends gksu which is deprecated

Margarita Manterola marga at debian.org
Sun Apr 23 09:35:19 UTC 2017


Hi,

On 2017-03-04 03:54, Jeremy Bicha wrote:
> Please try to do this before the Stretch release as we're going to
> try to remove gksu this cycle.

> I copy-pasted that from an older bug report. It doesn't look like gksu
> will end up being removed for stretch but I believe the Release Team
> would still be happy to accept updates to reduce the number of
> packages depending or recommending on gksu. And I believe it probably
> *will* happen for buster.

Yeah, getting a bug report about removing this dependency while already 
being in the freeze is not really a realistic "for stretch" expectation. 
  I don't expect we will solve this for stretch.  We can definitely fix 
it for buster.

> cinnamon should switch to a supported and securer way to
> become root, particularly one that doesn't mean running your whole
> application as root (including the GUI), e.g. using polkit.

Cinnamon does use polkit for most things, it seems only a few things 
actually use gksu. These are all the occurrences inside the code (I also 
checked all the other cinnamon related packages):

**********
Actual cases where gksu is used:

files/usr/share/cinnamon/applets/menu at cinnamon.org/applet.js:
Util.spawnCommandLine("gksu -m '" + _("Please provide your password to 
uninstall this application") + "' /usr/bin/cinnamon-remove-application 
'" + this._appButton.app.get_app_info().get_filename() + "'");

files/usr/share/cinnamon/cinnamon-settings/cinnamon-settings.py:
[_("Login Window"),                  "gksu /usr/sbin/mdmsetup",      
"cs-login",           "admin",          _("login, mdm, gdm, manager, 
user, password, startup, switch")],

files/usr/share/cinnamon/cinnamon-settings/bin/Spices.py:
                         if os.path.exists("/usr/bin/gksu") and 
os.path.exists("/usr/share/cinnamon/cinnamon-settings/bin/installSchema.py"):
                             launcher = "gksu  --message \"<b>%s</b>\"" % 
sentence
(...)
                     if os.path.exists("/usr/bin/gksu") and 
os.path.exists("/usr/share/cinnamon/cinnamon-settings/bin/removeSchema.py"):
                         launcher = "gksu  --message \"<b>%s</b>\"" % 
sentence

files/usr/bin/cinnamon-settings-users:
os.system("gksu 
/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py")

Other matches that are not actual invocations:

files/usr/share/cinnamon/cinnamon-settings/modules/cs_default.py:
                 if (exec_val is not None and name_val is not None and 
icon_val is not None and not "gksu" in exec_val and exec_val not in 
self.active_items):

files/usr/share/cinnamon/cinnamon-settings/bin/SettingsWidgets.py:
         name = self.name.replace("gksudo ", "")
         name = name.replace("gksu ", "")
**********

I guess this means that the work that needs to happen is:
1) Make /usr/bin/cinnamon-remove-application use polkit
2) Make /usr/sbin/mdmsetup use polkit (it's not part of this package)
3) Make /usr/share/cinnamon/cinnamon-settings/bin/installSchema.py and 
/usr/share/cinnamon/cinnamon-settings/bin/removeSchema.py use polkit
4) Make 
/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py 
use polkit

I don't think it would be realistic to expect this to happen for stretch

-- 
Regards,
Marga



More information about the pkg-cinnamon-team mailing list