Como posso personalizar a linha de comando do gnome-shell?

Como posso personalizar a linha de comando do gnome-shell?

Estou tentando criar uma nova sessão do GNOME que tenha alguns argumentos personalizados gnome-shell(especificamente, criando alguns monitores virtuais). Mas estou tendo algumas dificuldades estranhas.

Comecei criando /usr/share/xsessions/immersed.desktop. Contém:

[Desktop Entry]
Name=Immersed
Comment=This session logs you into Ubuntu with a VR desktop
Exec=env GNOME_SHELL_SESSION_MODE=ubuntu /usr/bin/gnome-session --session=immersed
TryExec=/usr/bin/gnome-shell
Type=Application
DesktopNames=ubuntu:GNOME
X-GDM-SessionRegisters=true
X-Ubuntu-Gettext-Domain=gnome-session-42

Isto é idêntico a, ubuntu.desktopexceto que o nome e o comentário foram alterados e especifica --session=immersedem vez de --session=ubuntu.

Então eu criei /usr/share/gnome-session/sessions/immersed.session. Contém:

 [GNOME Session]
-Name=Ubuntu
+Name=Immersed
 # Must be in sync with [email protected]/ubuntu.session.conf drop-in
 RequiredComponents=org.gnome.Shell;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.ScreensaverProxy;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;

A única mudança aqui é o nome da sessão. Mas quando tento iniciar esta sessão a partir da tela de login, o shell não inicia - alguns aplicativos de inicialização são iniciados, mas não há área de trabalho, nem painel, e as janelas não podem ser redimensionadas ou alternadas.

O que eu gostaria de fazer é alterar org.gnome.Shelle immersed-shelladicionar /usr/share/applications/immersed-shell.desktopcomo uma cópia, org.gnome.Shell.desktopmas com argumentos extras de linha de comando para criar os monitores virtuais. Mas mesmo que o que fiz acima não funcione, não vejo muita esperança nisso.

o que estou perdendo?

Parece que talvez eu precise criar uma nova sessão de usuário do systemd também - em caso afirmativo, alguém pode me indicar alguma documentação sobre como isso funciona, por favor?

informação relacionada