|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
--- a/files/usr/lib/cinnamon-settings-users/cinnamon-settings-users.py
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
+++ b/files/usr/lib/cinnamon-settings-users/cinnamon-settings-users.py
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
@@ -145,12 +145,11 @@ class EditableEntry (Gtk.Notebook):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
class PasswordDialog(Gtk.Dialog):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
- def __init__ (self, user, password_mask, group_mask):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
+ def __init__ (self, user, password_mask):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
super(PasswordDialog, self).__init__()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.user = user
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.password_mask = password_mask
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
- self.group_mask = group_mask
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.set_modal(True)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.set_skip_taskbar_hint(True)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
@@ -216,14 +215,7 @@ class PasswordDialog(Gtk.Dialog):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
def change_password(self):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
newpass = self.new_password.get_text()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.user.set_password(newpass, "")
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
- mask = self.group_mask.get_text()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- if "nopasswdlogin" in mask:
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- os.system("gpasswd -d '%s' nopasswdlogin" % self.user.get_user_name())
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- mask = mask.split(", ")
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- mask.remove("nopasswdlogin")
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- mask = ", ".join(mask)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- self.group_mask.set_text(mask)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
- self.password_mask.set_text(u'\u2022\u2022\u2022\u2022\u2022\u2022')
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
+ self.password_mask.set_text(u'\u2022\u2022\u2022\u2022\u2022\u2022')
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.destroy()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
def set_passwords_visibility(self):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
@@ -517,7 +509,7 @@ class Module:
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
model, treeiter = self.users_treeview.get_selection().get_selected()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
if treeiter != None:
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
user = model[treeiter][INDEX_USER_OBJECT]
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
- dialog = PasswordDialog(user, self.password_mask, self.groups_label)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
+ dialog = PasswordDialog(user, self.password_mask)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
response = dialog.run()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
def _on_groups_button_clicked(self, widget):
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
@@ -756,11 +748,11 @@ class Module:
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size("/usr/share/cinnamon/faces/user-generic.png", 48, 48)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
description = "%s\n%s" % (fullname, username)
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
piter = self.users.append(None, [new_user, pixbuf, description])
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
- # Add the user to his/her own group and sudo if Administrator was selected
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
+ # Add the user to his/her own group and wheel if Administrator was selected
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
if dialog.account_type_combo.get_active() == 1:
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
a42c6f4 |
- os.system("usermod %s -G %s,sudo,nopasswdlogin" % (username, username))
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
+ os.system("usermod %s -G %s,wheel" % (username, username))
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
113da80 |
else:
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
- os.system("usermod %s -G %s,nopasswdlogin" % (username, username))
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
+ os.system("usermod %s -G %s" % (username, username))
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
self.load_groups()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
da1fe70 |
dialog.destroy()
|
|
![](https://seccdn.libravatar.org/avatar/bc7e6a3ecec56e135abde432394bdac40420ac92a9bb2e2a9aed5e41cd3aea18?s=16&d=retro) |
eae76e3 |
|