「XScreenSaver」の版間の差分
(ページの作成:「Category:X サーバー en:XScreenSaver es:Xscreensaver it:Xscreensaver zh-CN:Xscreensaver {{Related articles start}} {{Related|Display Power Manageme...」) |
(相違点なし)
|
2015年2月16日 (月) 19:03時点における版
XScreenSaver は X Window System のスクリーンセーバーとロッカーです。
目次
XScreenSaver のインストール
公式リポジトリの xscreensaver パッケージをインストールしてください。
Arch Linux ロゴを使用するには、AUR の xscreensaver-arch-logoAUR を使ってください。
XScreenSaver の設定
グローバルなオプションは /usr/share/X11/app-defaults/XScreenSaver で定義します。標準的な設定では、このファイルを編集する必要はありません。ほとんどのオプションはユーザーごとに設定します。xscreensaver-demo を実行することで ~/.xscreensaver に設定が書き出されます:
$ xscreensaver-demo
XScreenSaver 5.22 から、XScreenSaver のユーザー設定を ~/.Xresources を使って編集する別の手段が用意されています。サンプルはこちらを見てください。
DPMS の設定
XScreenSaver manages display energy saving (DPMS) independently of X itself and overrides it. To configure the timings for standby, display poweroff and such, use xscreensaver-demo or edit the configuration file manually, e.g. ~/.xscreensaver,
timeout: 1:00:00 cycle: 0:05:00 lock: False lockTimeout: 0:00:00 passwdTimeout: 0:00:30 fade: True unfade: False fadeSeconds: 0:00:03 fadeTicks: 20 dpmsEnabled: True dpmsStandby: 2:00:00 dpmsSuspend: 2:00:00 dpmsOff: 4:00:00
Xresources
Control many settings by using ~/.Xresources. Defaults are located in /usr/share/X11/app-defaults/XScreenSaver.
Below are all the valid Xresources for version 5.22.
from: driver/XScreenSaver.ad
xscreensaver.mode: random xscreensaver.timeout: 0:10:00 xscreensaver.cycle: 0:10:00 xscreensaver.lockTimeout: 0:00:00 xscreensaver.passwdTimeout: 0:00:30 xscreensaver.dpmsEnabled: False xscreensaver.dpmsQuickoffEnabled: False xscreensaver.dpmsStandby: 2:00:00 xscreensaver.dpmsSuspend: 2:00:00 xscreensaver.dpmsOff: 4:00:00 xscreensaver.grabDesktopImages: True xscreensaver.grabVideoFrames: False xscreensaver.chooseRandomImages: True ! This can be a local directory name, or the URL of an RSS or Atom feed. xscreensaver.imageDirectory: /usr/share/wallpapers/ xscreensaver.nice: 10 xscreensaver.memoryLimit: 0 xscreensaver.lock: False xscreensaver.verbose: False xscreensaver.timestamp: True xscreensaver.fade: True xscreensaver.unfade: False xscreensaver.fadeSeconds: 0:00:03 xscreensaver.fadeTicks: 20 xscreensaver.splash: True xscreensaver.splashDuration: 0:00:05 xscreensaver.visualID: default xscreensaver.captureStderr: True xscreensaver.ignoreUninstalledPrograms: False xscreensaver.textMode: file xscreensaver.textLiteral: XScreenSaver xscreensaver.textFile: xscreensaver.textProgram: fortune xscreensaver.textURL: http://en.wikipedia.org/w/index.php?title=Special:NewPages&feed=rss xscreensaver.overlayTextForeground: #FFFF00 xscreensaver.overlayTextBackground: #000000 xscreensaver.overlayStderr: True xscreensaver.font: *-medium-r-*-140-*-m-* ! The default is to use these extensions if available (as noted.) xscreensaver.sgiSaverExtension: True xscreensaver.xidleExtension: True xscreensaver.procInterrupts: True ! Turning this on makes pointerHysteresis not work. xscreensaver.xinputExtensionDev: False ! Set this to True if you are experiencing longstanding XFree86 bug #421 ! (xscreensaver not covering the whole screen) xscreensaver.GetViewPortIsFullOfLies: False ! This is what the "Demo" button on the splash screen runs (/bin/sh syntax.) xscreensaver.demoCommand: xscreensaver-demo ! This is what the "Prefs" button on the splash screen runs (/bin/sh syntax.) xscreensaver.prefsCommand: xscreensaver-demo -prefs ! This is the URL loaded by the "Help" button on the splash screen, ! and by the "Documentation" menu item in xscreensaver-demo. xscreensaver.helpURL: http://www.jwz.org/xscreensaver/man.html ! loadURL -- how the "Help" buttons load the helpURL (/bin/sh syntax.) xscreensaver.loadURL: firefox '%s' || mozilla '%s' || netscape '%s' ! manualCommand -- how the "Documentation" buttons display man pages. xscreensaver.manualCommand: xterm -sb -fg black -bg gray75 -T '%s manual' -e /bin/sh -c 'man "%s" ; read foo' ! The format used for printing the date and time in the password dialog box ! To show the time only: %I:%M %p ! For 24 hour time: %H:%M xscreensaver.dateFormat: %d-%b-%y (%a); %I:%M %p ! This command is executed by the "New Login" button on the lock dialog. ! (That button does not appear on the dialog if this program does not exist.) ! For Gnome: probably "gdmflexiserver -ls". KDE, probably "kdmctl reserve". ! Or maybe yet another wheel-reinvention, "lxdm -c USER_SWITCH". xscreensaver.newLoginCommand: kdmctl reserve xscreensaver.installColormap: True xscreensaver.pointerPollTime: 0:00:05 xscreensaver.pointerHysteresis: 10 xscreensaver.initialDelay: 0:00:00 xscreensaver.windowCreationTimeout: 0:00:30 xscreensaver.bourneShell: /bin/sh ! Resources for the password and splash-screen dialog boxes of ! the "xscreensaver" daemon. xscreensaver.Dialog.headingFont: *-helvetica-bold-r-*-*-*-180-*-*-*-iso8859-1 xscreensaver.Dialog.bodyFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 xscreensaver.Dialog.labelFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 xscreensaver.Dialog.unameFont: *-helvetica-bold-r-*-*-*-120-*-*-*-iso8859-1 xscreensaver.Dialog.buttonFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1 xscreensaver.Dialog.dateFont: *-helvetica-medium-r-*-*-*-80-*-*-*-iso8859-1 ! Helvetica asterisks look terrible. xscreensaver.passwd.passwdFont: *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1 xscreensaver.Dialog.foreground: #000000 xscreensaver.Dialog.background: #E6E6E6 xscreensaver.Dialog.Button.foreground: #000000 xscreensaver.Dialog.Button.background: #F5F5F5 !*Dialog.Button.pointBackground: #EAEAEA !*Dialog.Button.clickBackground: #C3C3C3 xscreensaver.Dialog.text.foreground: #000000 xscreensaver.Dialog.text.background: #FFFFFF xscreensaver.passwd.thermometer.foreground: #4464AC xscreensaver.passwd.thermometer.background: #FFFFFF xscreensaver.Dialog.topShadowColor: #FFFFFF xscreensaver.Dialog.bottomShadowColor: #CECECE xscreensaver.Dialog.logo.width: 210 xscreensaver.Dialog.logo.height: 210 xscreensaver.Dialog.internalBorderWidth: 24 xscreensaver.Dialog.borderWidth: 1 xscreensaver.Dialog.shadowThickness: 2 xscreensaver.passwd.heading.label: XScreenSaver %s xscreensaver.passwd.body.label: This screen is locked. xscreensaver.passwd.unlock.label: OK xscreensaver.passwd.login.label: New Login xscreensaver.passwd.user.label: Username: xscreensaver.passwd.thermometer.width: 8 xscreensaver.passwd.asterisks: True xscreensaver.passwd.uname: True xscreensaver.splash.heading.label: XScreenSaver %s xscreensaver.splash.body.label: Copyright © 1991-2013 by xscreensaver.splash.body2.label: Jamie Zawinski <jwz@jwz.org> xscreensaver.splash.demo.label: Settings xscreensaver.splash.help.label: Help
XScreenSaver の起動
シングルユーザー環境
xscreensaver パッケージをインストールしただけでは自動では実行されません。xscreensaver プログラムを起動する必要があり、基本的に以下のように ~/.xinitrc に記述することによってデスクトップ環境が実行します:
/usr/bin/xscreensaver -no-splash &
もしくは:
( ( sleep 10 && /usr/bin/xscreensaver -no-splash -display :0.0 ) & )
アンパサンド & は xscreensaver プログラムをバックグラウンドで実行するために必須です。
XScreenSaver は Xfce では /etc/xdg/xfce4/xinitrc で自動的に実行されます。かならず実行されるようにするには xfce4-session ではなく startxfce4 を使うようにしてください:
exec startxfce4
マルチユーザー環境
ディスプレイマネージャで複数のユーザーを扱う場合 (例: SLiM, GDM, KDM)、デスクトップマネージャのネイティブのスクリーンセーバーインターフェイスを使って XScreenSaver を起動するのが一番よいでしょう。ユーザー切り替えを完全に管理することができます。例えば、GNOME を使っている場合、gnome-screensaver と xscreensaver をインストールしてください。gnome-screensaver は有効化しておきます。これで全てのスクリーンセーバーを選択できるようになり、誰かが画面をロックしたときでも、他のユーザーは"ユーザー切り替え"を行なってコンピューターにアクセスできるようになります。
Another option to retain multi-user support, without having to install a second screensaver, is to modify either ~/.xscreensaver for per-user settings, or /usr/share/X11/app-defaults/XScreenSaver for global settings, and add the following line.
newLoginCommand: /usr/bin/gdmflexiserver
画面のロック
To immediately trigger xscreensaver, if it is running, and lock the screen, execute the following command:
$ xscreensaver-command --lock
サスペンド/スリープ/ハイバネート時に自動ロック
The best option is to install xss-lockAUR from AUR, and run this command from the X session autostart script:
xss-lock -- xscreensaver-command -lock &
Another option is to install xuserrun-gitAUR from AUR, and create the following file:
/etc/systemd/system/xscreensaver.service
[Unit] Description=Lock X session using xscreensaver Before=sleep.target [Service] Type=oneshot ExecStart=/usr/bin/xuserrun /usr/bin/xscreensaver-command -lock [Install] WantedBy=sleep.target
and enable it with systemctl enable xscreensaver.
You may want to set XScreenSaver's fade out time to 0.
Other service configuration without xuserrun and for one user from this thread, replace the previous [Service] section by this one :
/etc/systemd/system/xscreensaver.service
[Service] User=yourusername Type=oneshot Environment=DISPLAY=:0 ExecStart=/usr/bin/xscreensaver-command -lock
メディアアプリケーションで XScreenSaver を無効化
MPlayer
以下を ~/.mplayer/config に追加してください:
heartbeat-cmd="xscreensaver-command -deactivate >&- 2>&- &"
Kodi
Kodi には XScreenSaver を無効にするネイティブのサポートはありません。AUR に kodi-prevent-xscreensaverAUR という名前の XScreenSaver を無効化するアプリが存在します。
Adobe Flash/MPlayer/VLC
flash には XScreenSaver を無効にするネイティブの方法はありませんが、lightsOn という名前のスクリプトが存在します。Firefox の Flash プラグイン、Chromium の Flash プラグイン、MPlayer、VLC をサポートしています。
もしくは DPMS を完全に無効化するという方法もあります。
XScreenSaver をアニメーションする壁紙として使う
One can run xscreensaver in the background, just like a wallpaper.
First, kill any process that is controlling the background (the root window).
Locate the desired XScreenSaver executable (they are usually on /usr/lib/xscreensaver/) and run it with the -root flag, like this
$ /usr/lib/xscreensaver/glslideshow -root &
xcompmgr で XScreenSaver を壁紙として使う
xcompmgr may cause problems. One recommended solution is to use xwinwrap to run it in order to use it as wallpaper. Find it as shantz-xwinwrap-bzrAUR in the AUR.
Run it with the following command:
$ xwinwrap -b -fs -sp -fs -nf -ov -- /usr/lib/xscreensaver/glslideshow -root -window-id WID &
テーマ
XScreenSaver's unlock screen can be themed with X resources (see: XScreenSaver resources).
ロック画面からユーザーを切り替える
デフォルトでは、xscreensaver のロック画面の "New Login" ボタンは /usr/bin/gdmflexiserver を呼び出してユーザー切り替えができます。GDM や KDM を使っている場合はこれで問題ありません。LightDM や LXDM などの他のディスプレイマネージャもこの機能をサポートしています。
LXDM
LXDM の切り替えモードを使うには以下を ~/.xscreensaver に貼り付けてください:
newLoginCommand: lxdm -c USER_SWITCH
LightDM
LightDM の切り替えモードを使うには以下を ~/.xscreensaver に貼り付けてください:
newLoginCommand: dm-tool switch-to-greeter
KDM
KDM の切り替えモードを使うには以下を ~/.xscreensaver または /usr/share/X11/app-defaults/XScreenSaver に貼り付けてください:
newLoginCommand: kdmctl reserve
デバッグ
You can configure xscreensaver to write to a log file by creating the logfile # touch /var/log/xscreensaver.log and then specifying its X resource logFile.
~/.Xresources
xscreensaver.logFile:/var/log/xscreensaver.log
To log verbose debugging information to the logFile as well start xscreensaver with the -verbose command line option, or add this to ~/.Xresources
~/.Xresources
xscreensaver.logFile:/var/log/xscreensaver.log xscreensaver.verbose:true
参照
- PanicLock -- Lock the screen and close any selected programs in background.
- Homepage for XScreenSaver