File cinnamon-wheel-and-sbin-path.patch of Package cinnamon
diff --color -rub a/files/usr/share/cinnamon/cinnamon-settings/modules/cs_info.py b/files/usr/share/cinnamon/cinnamon-settings/modules/cs_info.py
--- a/files/usr/share/cinnamon/cinnamon-settings/modules/cs_info.py 2024-07-06 01:58:54.000000000 +0600
+++ b/files/usr/share/cinnamon/cinnamon-settings/modules/cs_info.py 2024-07-08 22:32:49.792309881 +0600
@@ -41,7 +41,7 @@
count = 0
envpath = os.environ["PATH"]
os.environ["PATH"] = envpath + ":/usr/local/sbin:/usr/sbin:/sbin"
- for card in getProcessOut("lspci"):
+ for card in getProcessOut("/sbin/lspci"):
for prefix in ["VGA compatible controller:", "3D controller:"]:
if prefix in card:
cardName = card.split(prefix)[1].split("(rev")[0].strip()
diff --color -rub a/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py b/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py
--- a/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py 2024-07-06 01:58:54.000000000 +0600
+++ b/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py 2024-07-08 22:38:27.693020638 +0600
@@ -182,13 +182,11 @@
class PasswordDialog(Gtk.Dialog):
- def __init__ (self, user, password_mask, group_mask, parent = None):
+ def __init__ (self, user, password_mask, parent = None):
super(PasswordDialog, self).__init__(None, parent)
self.user = user
self.password_mask = password_mask
- self.group_mask = group_mask
-
self.set_modal(True)
self.set_skip_taskbar_hint(True)
self.set_skip_pager_hint(True)
@@ -253,13 +251,6 @@
def change_password(self):
newpass = self.new_password.get_text()
self.user.set_password(newpass, "")
- mask = self.group_mask.get_text()
- if "nopasswdlogin" in mask:
- subprocess.call(["gpasswd", "-d", self.user.get_user_name(), "nopasswdlogin"])
- mask = mask.split(", ")
- mask.remove("nopasswdlogin")
- mask = ", ".join(mask)
- self.group_mask.set_text(mask)
self.password_mask.set_text('\u2022\u2022\u2022\u2022\u2022\u2022')
self.destroy()
@@ -613,7 +604,7 @@
model, treeiter = self.users_treeview.get_selection().get_selected()
if treeiter is not None:
user = model[treeiter][INDEX_USER_OBJECT]
- dialog = PasswordDialog(user, self.password_mask, self.groups_label, self.window)
+ dialog = PasswordDialog(user, self.password_mask, self.window)
response = dialog.run()
def _on_groups_button_clicked(self, widget):
@@ -624,7 +615,7 @@
response = dialog.run()
if response == Gtk.ResponseType.OK:
groups = dialog.get_selected_groups()
- subprocess.call(["usermod", user.get_user_name(), "-G", ",".join(groups)])
+ subprocess.call(["/usr/sbin/usermod", user.get_user_name(), "-G", ",".join(groups)])
groups.sort()
self.groups_label.set_text(", ".join(groups))
dialog.destroy()
@@ -902,11 +893,11 @@
pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_size("/usr/share/cinnamon/faces/user-generic.png", 48, 48)
description = "<b>%s</b>\n%s" % (GLib.markup_escape_text(fullname), GLib.markup_escape_text(username))
piter = self.users.append(None, [new_user, pixbuf, description])
- # Add the user to his/her own group and sudo if Administrator was selected
+ # Add the user to his/her own group and wheel if Administrator was selected
if dialog.account_type_combo.get_active() == 1:
- subprocess.call(["usermod", username, "-G", "%s,sudo,nopasswdlogin" % username])
+ subprocess.call(["/usr/sbin/usermod", username, "-G", "%s,wheel" % username])
else:
- subprocess.call(["usermod", username, "-G", "%s,nopasswdlogin" % username])
+ subprocess.call(["/usr/sbin/usermod", username, "-G", "%s" % username])
self.load_groups()
dialog.destroy()
@@ -951,7 +942,7 @@
d.set_default_response(Gtk.ResponseType.NO)
r = d.run()
if r == Gtk.ResponseType.YES:
- subprocess.call(["groupdel", group])
+ subprocess.call(["/usr/sbin/groupdel", group])
self.load_groups()
d.destroy()