Как правильно запустить расширение Gnome-Shell через командную строку?

После копирования папки [email protected] в .../gnome-shell/extensions/ я выполняю эту команду на терминале:

gnome-shell-extension-tool -e [email protected]

Затем я перезапускаю сеанс с помощью Alt + F2 и выполняю r, и все работает нормально.

Но могу ли я запустить свое расширение только через командную строку? Без Alt+F2+r? Без перезапуска моего сеанса gnome-shell?


person GusMilky    schedule 04.10.2017    source источник


Ответы (2)


Согласно некоторым ответам в Интернете, отправка SIGHUP процессу gnome-shell перезапускает его (то есть killall -HUP gnome-shell), но я не смог найти четкого источника по этому поводу и не смог найти обработку сигнала в коде. Что я знаю, так это то, что это должно быть точно эквивалентно Alt+F2 r:

busctl --user call org.gnome.Shell /org/gnome/Shell org.gnome.Shell Eval s 'Meta.restart("Restarting…")'

Потому что, кроме вызова gettext в сообщении, это именно то, к чему привязан Alt+F2 r (см. " rel="noreferrer">runDialog.js — поиск по _restart).

person Lucas Werkmeister    schedule 23.12.2017
comment
Это именно то, что мне нужно. killall тоже по какой-то причине убил мой браузер - person WuerfelDev; 03.05.2020
comment
@maxschlepzig Я не понимаю, почему это не должно… - person Lucas Werkmeister; 17.11.2020
comment
@LucasWerkmeister, потому что Alt+F2 r не работает под Wayland ... - person maxschlepzig; 17.11.2020
comment
О верно. Что ж, я только что попробовал, и, похоже, что-то получилось, и явного сообщения об ошибке не было. (Но то же самое верно, когда я запускаю Alt + F2 r, так что, возможно, это поддерживается с последней версии Gnome? Я на 3.38.) - person Lucas Werkmeister; 17.11.2020

Лично я предпочитаю твердые Alt+F2, r+Enter, но, возможно, попробуйте отключить и включить:

gnome-shell-extension-tool -d [email protected] && gnome-shell-extension-tool -e [email protected]

or

gnome-shell-extension-tool -r [email protected]

Который может сделать то же самое. Также есть gnome-shell-extension-prefs, который вы можете использовать для того же самого (и он обычно скрыт в Gnome по какой-то причине).

person andy.holmes    schedule 24.10.2017
comment
Спасибо, Энди. Но он не обновляет мое расширение без Alt + F2, r+Enter или перезагрузки моей системы. Если расширение уже установлено, я нашел команду в Gnome DBus для его обновления. Но если это первый раз, как я могу показать расширение без перезапуска сеанса? Я не могу найти способ перезапустить сеанс с помощью командной строки. Если я использую gnome-shell --replace, я получаю странное поведение, если закрываю терминал. - person GusMilky; 26.10.2017
comment
Правда, насколько я знаю, Alt+F2, r+Enter — единственный способ сделать это чисто. Я бы не стал сильно переживать по этому поводу и поступил бы так. - person andy.holmes; 26.10.2017
comment
@andy.holmes - Alt+F2, R Enter просто не работает, если Gnome-Shell работает под управлением Wayland... - person maxschlepzig; 16.11.2020
comment
Правильно, вам нужно перезапустить сеанс, если вы работаете под Wayland. - person andy.holmes; 17.11.2020