私の目標は、ユーザーにシステムの再起動のみを許可し、シャットダウン(サスペンド、休止状態)を拒否することです。 unity-2dを実行しています。
shutdown/reboot/suspend/hibernateを無効にする方法
私はそれが何らかの形でシャットダウン機能を無効にしていることを観察しましたが、シャットダウンダイアログの「シャットダウン」ボタンだけでなく、インジケータパネルメニューから「シャットダウン」エントリも削除していません。この時点でシャットダウンボタンを押すと、lightdmが再起動し、ログイン画面に戻ります。
私の目標は、「シャットダウン」アクションとボタンを削除することです。
そこで、いくつかのルールを含むovverideファイルを/usr/share/glib-2.0/schemasに追加しました。
[com.canonical.indicator.session]
suppress-shutdown-menuitem = true
(すべてのsuppress-*-menuitemには、スキーマのデフォルトで「false」値があります)
Xをコンパイルして再起動すると、インジケーターパネルメニューに「セッションを閉じる...」というエントリが表示されます。これは私が望んでいるものではありません。
この時点で、別のエントリsuppress-logout-menuitemをtrueに設定すると、インジケータパネルメニューにエントリがありません。
このすべての組み合わせを試しても、再起動オプションを削除せずに「シャットダウン」参照/ボタンを削除することはできません。
私が望むのは、「シャットダウン」への参照を削除することですが、インジケータメニューのどこかに「再起動」オプションを保持することです...
ありがとう!
更新!問題を解決するのに十分なデータがまだありません。新しいデータはUbuntuのメンテナーです( https://bugs.launchpad.net/ubuntu/+source/indicator-session/+bug/1015558 )これは12.10で解決された問題として認められ、 LTSブランチでは解決されません!私の観点からは、10.04でこれを行うのに問題はなかったので、これは明らかに回帰です。
この時点で、インディケーターセッションコードを修正できたとしても、メインストリームのubuntuレポからの更新はそれを壊します:/
インジケーターメニューへの統合が前提条件ではない場合、次のコマンドを呼び出してシステムの再起動のみを許可するカスタムランチャーまたはカスタムアプリケーションインジケーターを常に定義できます。
/usr/lib/indicator-session/gtk-logout-helper -r
Unity -2dは、
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回)と、インダケーターエラーが発生します。
他にできることは、ソースをunity-2dに開いて、クリックしたものすべてが好きなデスクトップファイルになるようにすることです。
これが役立つことを願っています