コンピューターの画面をロックするときにランダムメッセージを設定する小さなスクリプトを作成しようとしています。
だから、私はコマンドラインからメッセージを定義し、ロック画面機能を実行するときにそれを呼び出すことができる必要があります。
画面をロックするコマンドが見つかりました:cinnamon-screensaver-command -l
しかしmanには、ロック画面メッセージの定義方法に関する詳細はありません。
アイデアがあれば...
CinnamonスクリーンセーバーはDBusサービスorg.cinnamon.ScreenSaver
には、特に次のメソッドがあります。
method void org.cinnamon.ScreenSaver.Lock(QString body)
このメソッドは、カスタムメッセージで画面をロックするときに呼び出されるものです。これをbashスクリプトから呼び出す場合、gdbusやqdbusなどのDBusフロントエンドが必要です。
私は個人的にはgdbusの構文をまだ理解していないので、qdbusを好みます。ただし、最初にqdbusをインストールする必要がある場合があります
Sudo apt-get install qdbus
これにより、他のQtライブラリもインストールされる場合があります。インストールすると、次を使用してメソッドを呼び出すことができます
qdbus org.cinnamon.ScreenSaver / Lock "$message"
$message
カスタムメッセージが含まれています。ただし、画面が既にロックされている場合、このメソッド呼び出しは機能しません。この場合、メソッドは画面がロック解除されるまでブロックし、画面を再ロックせずに戻ります。
cinnamon-screensaver-commandには、このための「-m」または「--away-message」オプションが追加されたため、そのまま使用できます。次のような小さなシェルスクリプトがあります。
_#!/bin/sh
_
cinnamon-screensaver-command -l -m $(fortune -s)