web-dev-qa-db-ja.com

場所に基づいて画面のタイムアウト/ロックを構成する

ラップトップが会社のLANにあるときに画面のタイムアウトとロックを有効にし、家にいるときは無効にします。場所の検出には、次のような単純な検出でwhereamiを使用します。

default unknown
testdhcp    '172.16.*.*'     work
testdhcp    '192.168.36.*'   home

「仕事」ネットワークに出入りするときに、対応する設定を行う必要があります。しかし、私はGnomeがこのようなものをどこに保存しているかを見つけるのに問題があります。画面構成ダイアログで「ロック」ボタンを切り替える場所をすでに見つけました。 whereami構成で次のようにします。

!work su -c "dconf write /org/gnome/desktop/screensaver/lock-enabled false" k
=work su -c "dconf write /org/gnome/desktop/screensaver/lock-enabled true" k

これは今のところ機能します。ただし、画面構成ダイアログで「後の電源を切る」設定も構成する必要があります。 dconfの影響を受けている3つのキーが見つかりました。

/org/gnome/desktop/session/idle-delay
/org/gnome/settings-daemon/plugins/power/sleep-display-battery
/org/gnome/settings-daemon/plugins/power/sleep-display-ac

しかし、それらを手動で変更すると、機能せず、画面ダイアログも新しい値を読み取りません。したがって、変更する必要のあるキーはまだあると思いますが、それらを見つけることができません(この新しいdconfの機能を検索するといいでしょう)。

それでは、画面タイムアウトを無効/有効にするためにどの設定を変更する必要がありますか?

3
kayahr

それを見つけた。 idle-delayuint32型であり、他の2つの値のような文字列ではない必要があります。だからこれは私のために働く:

=work su -c "dconf write /org/gnome/desktop/screensaver/lock-enabled true" k
=work su -c "dconf write /org/gnome/desktop/session/idle-delay 'uint32 120'" k
=work su -c "dconf write /org/gnome/settings-daemon/plugins/power/sleep-display-ac 120" k
=work su -c "dconf write /org/gnome/settings-daemon/plugins/power/sleep-display-battery 120" k
!work su -c "dconf write /org/gnome/desktop/screensaver/lock-enabled false" k
!work su -c "dconf write /org/gnome/desktop/session/idle-delay 'uint32 0'" k
!work su -c "dconf write /org/gnome/settings-daemon/plugins/power/sleep-display-ac 0"  k
!work su -c "dconf write /org/gnome/settings-daemon/plugins/power/sleep-display-battery 0" k
1
kayahr

構成を変更せずにcaffeineを使用してみてください。
= workで単純に実行し、!work
Sudo add-apt-repository ppa:caffeine-developers/ppa
Sudo apt-get update
Sudo apt-get install caffeine
で終了します
カフェインの詳細

0
Denis