Fedora メモ(2)
Fedora14 での, スクリーンセーバーのロック画面(ダイアログ) 周りの設定です。
ロック画面の背景を変更する
現時点(gnome-screensaver-2.30) では, ユーザ毎の設定は出来ない様なので, 背景のデフォルト値を変更する必要があります。(変更の影響はロック画面以外にも適応されるので注意)
- 画像を変更する例
$ sudo gconftool-2 \ --direct \ --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \ --type=string \ --set /desktop/gnome/background/picture_filename "/usr/share/backgrounds/nature/Aqua.jpg"
- 黒一色にする例
$ sudo gconftool-2 \ --direct \ --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \ --type=string \ --set /desktop/gnome/background/picture_filename "" $ sudo gconftool-2 \ --direct \ --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \ --type=string \ --set /desktop/gnome/background/color_shading_type "solid" $ sudo gconftool-2 \ --direct \ --config-source xml:readwrite:/etc/gconf/gconf.xml.defaults \ --type=string \ --set /desktop/gnome/background/primary_color "#000000"
ロック画面のテーマを変更する
テーマをダウンロードして '/usr/share/gnome-screnasaver' 以下に展開をします。(テーマは gnome-look.org で, 'lock dialog' や 'lock screen' 等のキーワードで検索すれば見つかります)
GTK+ には UI を XML ファイルから読み込んで構築する機能として libglade と GtkBuilder がありますが, libglade は廃止される予定であり gnome-screnasaver は 2.28 から GtkBuilder へ移行が行われました。
このため, ダウンロードした物に .ui ファイル(GtkBuilder 用)が含まれていない場合は .glade ファイル(libglade 用) を元に .ui を作成する必要があります。
- 変換コマンドで .glade を .ui に変換(gtk-builder-convert は gtk2-devel パッケージに含まれています)
$ sudo gtk-builder-convert /usr/share/gnome-screensaver/lock-dialog-system.glade /usr/share/gnome-screensaver/lock-dialog-system.ui
- 自動変換だけでは, 上手く動かないので以下の規則に従って手動修正
- interface 要素直下に存在する object 要素の class を 'GtkFrame' に, id を 'lock-dialog' にする
- 元々, id が 'lock-dialog' だった object 要素の id は 適当な物に変更する(他の object 要素と重複しなければ何でも良い筈)
- 物によっては, レイアウトが崩れるので個別に修正が必要(かも知れません)
$ diff -u /usr/share/gnome-screensaver/lock-dialog-system.ui.tmp /usr/share/gnome-screensaver/lock-dialog-system.ui @@ -1,7 +1,7 @@ <?xml version="1.0"?> <!--*- mode: xml -*--> <interface> - <object class="GtkWindow" id="window1"> + <object class="GtkFrame" id="lock-dialog"> <property name="title" translatable="yes"/> <property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="window_position">GTK_WIN_POS_NONE</property> @@ -16,7 +16,7 @@ <property name="focus_on_map">True</property> <property name="urgency_hint">False</property> <child> - <object class="GtkAlignment" id="lock-dialog"> + <object class="GtkAlignment" id="alignment"> <property name="height_request">314</property> <property name="visible">True</property> <property name="xalign">0.5</property>
-
- 編集をミスすると, ロック画面から抜けられなくなる恐れがあるので, 別途コンソールを取った方が良いです
- (万が一, 抜けられなくなった場合は, 別コンソールから該当ユーザの gnome-screensaver プロセスを kill すればロック画面は解除されます)
- /usr/share/gnome-screensaver/lock-dialog-xxxx.ui ファイルが完成したら, テーマを適応します。(xxxx は任意の名前)
$ sudo gconftool-2 --type=string --set /apps/gnome-screensaver/lock_dialog_theme xxxx
メモ:
現時点(2011/01/16)での, 開発リポジトリを見るとロック画面のテーマ変更機能が削除された様なので, 今後の計画は判りませんが, 将来(バージョン 2.32 辺りから?) 本機能は利用出来なくなる可能性があります。(Remove the lock dialog theme support)
参考: