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 Desktop
Packages, which is subscribed to gnome-terminal in Ubuntu.
https://bugs.launchpad.net/bugs/2073881
Title:
gnome-terminal stopped accepting arguments: # Failed to parse
arguments: Too many arguments
Status in gnome-terminal package in Ubuntu:
Confirmed
Bug description:
I have created a simple org.weechat.weechat-ssh.desktop to launch
gnome-terminal with an app-id, window title, etc using
gnome-terminal --window --disable-factory --class weechat-ssh --name
weechat-ssh --app-id org.weechat.weechat-ssh --title WeeChat -- ssh
-oControlMaster=no -i /home/jak/.ssh/weechat_ssh_id_rsa -o
IdentitiesOnly=yes -t [email protected] -- tmux attach -dt irc
This stopped working with the (AFAICT) gnome-terminal:amd64 (3.52.0-1ubuntu2
-> 3.52.2-1ubuntu1) update.
Even reducing the argument list further breaks:
jak@jak-t14-g3:~/.local/share/applications$ $ gnome-terminal --window --class
weechat-ssh
# Failed to parse arguments: Too many arguments
jak@jak-t14-g3:~/.local/share/applications$ gnome-terminal --class
weechat-ssh
# Failed to parse arguments: Too many arguments
ProblemType: Bug
DistroRelease: Ubuntu 24.10
Package: gnome-terminal 3.52.2-1ubuntu1
ProcVersionSignature: Ubuntu 6.8.0-31.31-generic 6.8.1
Uname: Linux 6.8.0-31-generic x86_64
NonfreeKernelModules: zfs
ApportVersion: 2.28.1-0ubuntu4
Architecture: amd64
CasperMD5CheckResult: pass
CurrentDesktop: GNOME
Date: Tue Jul 23 22:06:54 2024
InstallationDate: Installed on 2022-11-26 (605 days ago)
InstallationMedia: Ubuntu 23.04 "Lunar Lobster" - Alpha amd64 (20221126)
SourcePackage: gnome-terminal
UpgradeStatus: No upgrade log present (probably fresh install)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gnome-terminal/+bug/2073881/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp