Ok, I think I've fixed it. Please bear with me if the fix is not perfect / there's something wrong with it that I've missed, I'm no Python developer nor I've ever developed for GNOME projects.
Here's the patch: --- /usr/bin/gnome-terminal 2024-09-16 15:44:46.000000000 +0200 +++ gnome-terminal 2024-10-18 19:04:30.926428246 +0200 @@ -39,10 +39,8 @@ def server_appeared(self, con, name, owner): # start gnome-terminal now - Gio.Subprocess.new(['/usr/bin/gnome-terminal.real', - '--app-id', name] + - self.args, - Gio.SubprocessFlags.NONE) + self.args[1:1]=['--app-id', name] + Gio.Subprocess.new(self.args, Gio.SubprocessFlags.NONE) def spawn_terminal_server(self, name, cls): args = ['/usr/libexec/gnome-terminal-server', The issue is with a superflous argument during the invocation of `gnome-terminal.real` (as Egmont Koblinger mentioned) *and* with how arguments are ordered before the invocation; self.args already contains `/usr/bin/gnome-terminal.real` (along with the list of arguments), so the fix is to *not* inject another `/usr/bin/gnome-terminal.real` + `--app-id=name` at the start of the argument list and rather inject just `--app-id=name` after the first element in self.args (hence after `/usr/bin/gnome-terminal.real`). I haven't tested this extensively, but after the patch I can succesfully start the server and invoke new instances passing `--class`. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2073881 Title: gnome-terminal stopped accepting arguments: # Failed to parse arguments: Too many arguments To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/2073881/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs