---- a/files/usr/lib/cinnamon-settings-users/cinnamon-settings-users.py 2014-09-30 09:55:06.000000000 +0100
-+++ b/files/usr/lib/cinnamon-settings-users/cinnamon-settings-users.py 2014-09-30 19:20:48.151829597 +0100
-@@ -45,10 +45,9 @@ class GroupDialog (Gtk.Dialog):
- print detail
+--- cinnamon-5.8.1/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py.orig 2023-06-14 06:31:31.876936429 +0200
++++ cinnamon-5.8.1/files/usr/share/cinnamon/cinnamon-settings-users/cinnamon-settings-users.py 2023-06-14 06:25:14.346681196 +0200
+@@ -82,10 +82,9 @@ class GroupDialog (Gtk.Dialog):
+ print(detail)
def _on_entry_changed(self, entry):
- name = entry.get_text()
- if " " in name or name.lower() != name:
+ if " " in entry.get_text():
- entry.set_icon_from_stock(Gtk.EntryIconPosition.SECONDARY, Gtk.STOCK_DIALOG_WARNING)
+ entry.set_icon_from_icon_name(Gtk.EntryIconPosition.SECONDARY, "dialog-warning-symbolic")
- entry.set_icon_tooltip_text(Gtk.EntryIconPosition.SECONDARY, _("The group name cannot contain upper-case or space characters"))
+ entry.set_icon_tooltip_text(Gtk.EntryIconPosition.SECONDARY, _("The group name cannot contain space characters"))
self.set_response_sensitive(Gtk.ResponseType.OK, False)
else:
- entry.set_icon_from_stock(Gtk.EntryIconPosition.SECONDARY, None)
-@@ -314,9 +313,9 @@ class NewUserDialog(Gtk.Dialog):
+ entry.set_icon_from_icon_name(Gtk.EntryIconPosition.SECONDARY, None)
+@@ -397,9 +396,9 @@ class NewUserDialog(Gtk.Dialog):
fullname = self.realname_entry.get_text()
username = self.username_entry.get_text()
valid = True
-- if " " in username or username.lower() != username:
+- if re.search('[^a-z0-9_.-]', username):
+ if " " in username:
- self.username_entry.set_icon_from_stock(Gtk.EntryIconPosition.SECONDARY, Gtk.STOCK_DIALOG_WARNING)
-- self.username_entry.set_icon_tooltip_text(Gtk.EntryIconPosition.SECONDARY, _("The username cannot contain upper-case or space characters"))
+ self.username_entry.set_icon_from_icon_name(Gtk.EntryIconPosition.SECONDARY, "dialog-warning-symbolic")
+- self.username_entry.set_icon_tooltip_text(Gtk.EntryIconPosition.SECONDARY, _("Invalid username"))
+ self.username_entry.set_icon_tooltip_text(Gtk.EntryIconPosition.SECONDARY, _("The username cannot contain space characters"))
valid = False
- else:
- self.username_entry.set_icon_from_stock(Gtk.EntryIconPosition.SECONDARY, None)
+ elif self.user_exists(username):
+ self.username_entry.set_icon_from_icon_name(Gtk.EntryIconPosition.SECONDARY, "dialog-warning-symbolic")