Запуск пользовательского сохраненного сеанса в KDE

KDE поддерживает сохранение сеансов с произвольными именами. Это можно сделать с помощью команды saveCurrentSessionAs. Например, чтобы сохранить сеанс с именем 'session01', мы выполняем

DISPLAY=:0.0 qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.saveCurrentSessionAs "session01"

. Затем session01 появится в списке, возвращаемом

DISPLAY=:0.0 qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.sessionList

, следующим образом:

default
session01
saved by user
saved at previous logout

Содержание всех этих сохраненных сеансов можно увидеть в $HOME/.config/ksmserverrc, в котором, в частности, будут содержаться строки

[Session: session01]
clientId1=102221941cd1ac000155588720400000011540004
clientId10=102221941cd1ac000155604496400000011810016

и т. Д.

Я хотел бы заставить систему принять состояние, описанное в session01.

1129 Я знаю, как это сделать. Я могу вручную перезаписать в файле $HOME/.config/ksmserverrc текст, соответствующий сеансу saved by user, текстом, соответствующим сеансу session01. Теперь предположим, что я настроил свою систему так, чтобы при входе в систему она восстанавливала сохраненный вручную сеанс (как это сделать, описано в ответе на этот вопрос: Сохранение настроек сеанса в среде KDE без выключения ). Затем при следующем входе в систему KDE восстановит состояние в saved by user - что, конечно, после моего взлома будет идентично состоянию в session01.

Это можно сделать с помощью сценария. Действительно, я полагаю, что более или менее было выполнено с помощью сценария, а именно этого старого сценария от 2012 года (ищите функцию sessionRestore).

1131 Но мне интересно, есть ли способ сделать это без взлома. (Автор сценария, который я только что упомянул, согласен с тем, что сценарий является взломом (а не решением) - см. Конец на этой странице ). Вот мой вопрос:

Есть ли «нехакерский» способ заставить мою систему принять состояние, сохраненное в session01? Другими словами, есть ли конкретная команда KDE или параметр, который будет загружать этот сеанс по имени? А если нет, то какой смысл иметь команду saveCurrentSessionAs?

(Для чего я стою, я запускаю KDE Plasma Version 5.12.7 на Kubuntu 18.04.)

2
задан 4 July 2019 в 23:06

0 ответов

Другие вопросы по тегам:

Похожие вопросы: