Как отключить или отключить параметр отключения из меню индикатора или диалогового окна отключения?

Моя цель - разрешить пользователю только перезагружать систему и запретить любое завершение работы (приостановка, спящий режим). Я бегу единство-2d.

Мне удалось отрицать приостановку и спящий режим с помощью файлов политик polkit, как описано в Как отключить выключение / перезагрузку / приостановить / спящий режим?

Я заметил, что это как-то отключает выключение способности, но не удалил запись «shutdown» из меню панели индикаторов, равно как и кнопку «shutdown ...» из диалога shutdown. Нажатие кнопки выключения в этот момент перезапускает lightdm, возвращаясь к экрану входа в систему.

Моя цель - убрать любое действие и кнопку «Завершение работы».

Итак, я добавил файл ovveride в /usr/share/glib-2.0/schemas, который содержит некоторые правила:

[com.canonical.indicator.session]
suppress-shutdown-menuitem = true

(all suppress - * - menuitem имеет значение «false» по умолчанию в схеме)

Компиляция, перезапуск X, теперь в меню панели индикаторов есть запись «закрыть сеанс ...»: это не то, что я хочу.

В этот момент, если я установил еще один элемент suppress-logout-menu в true, у меня не будет записи в меню панели индикаторов.

Попытка подобной комбинации «все» не дает возможности удалить ссылки / кнопки «выключения» без удаления опции перезапуска.

Все, что я хочу, это удалить любую ссылку на «выключение», но оставить опцию «перезапустить» где-нибудь в меню индикатора ...

Спасибо!

ОБНОВЛЕНИЕ! У меня все еще недостаточно данных для решения моей проблемы. Новые данные - это сопровождающий Ubuntu ( https://bugs.launchpad.net/ubuntu/+source/indicator-session/+bug/1015558 ) признает это как проблему, которая решена в 12.10 и является не будет решаться в ветке LTS! С моей точки зрения, это чистая регрессия, так как у меня не было никаких проблем сделать это в 10.04.

На этом этапе, даже если мне удастся изменить код сеанса индикатора, любое обновление из основного репозитория Ubuntu нарушит его: /

5
задан 13 April 2017 в 15:23

2 ответа

Если интеграция с меню индикатора не является обязательным условием, мы всегда можем определить пользовательский модуль запуска или пользовательский индикатор приложения, вызывающий следующую команду, чтобы разрешить только перезагрузку системы:

/usr/lib/indicator-session/gtk-logout-helper -r

См. Также: ] Что такое команда для открытия диалога выключения?

0
ответ дан 13 April 2017 в 15:23

Единица - 2-е использование названное представление declaritive

    GioDefaultApplication {
        id: defaultApplication
    }

    Application {
        id: application
        desktop_file: defaultApplication.desktopFile
    }

    visible: application.desktop_file != ""

    onClicked: dash.activateApplication(application)

     icon: "image://icons/" + application.icon
}

"Приложение" для запуска файла на рабочем столе, таким образом, можно сделать несколько вещей. 1) удалите файлы на рабочем столе под/usr/share/applications/, Они идут, как сопровождается

  • Выход из системы = indicator-session-logout.desktop

  • Приостановите = indicator-session-lock-screen.desktop

  • Перезапуск = indicator-session-restart.desktop

  • Выключите = indicator-session-shutdown.desktop

Или редактирующий эти файлы и или удаляющий их (копируют 1-й) совершит ошибку индикатора

Другая вещь, которую можно сделать, открыть источник для 2-й единицы и сделать его так всеми вещами нажатый = файл на рабочем столе, который Вы любите.

Надеюсь, что это помогает

1
ответ дан 13 April 2017 в 15:23

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

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