====== Linux XScreenSaver ======
* 리눅스용 화면 보호기
* [[http://www.jwz.org/xscreensaver/faq.html|XScreensaver FAQ]]
* http://linux.die.net/man/1/xscreensaver-text : 문자열을 보여주는 스크린세이버에 문자열을 넘겨주는 역할
* [[linux:xautolock|XAutoLock]]을 이용한 투명 화면 보호기도 참조.
===== 추가 패키지 =====
* Ubuntu 설치후 ''xscreensaver-gl-extra''와 ''xscreensaver-data-extra''를 추가 설치해주면 다양한 스크린세이버가 추가된다.
===== 이미지 저장 경로 설정 =====
* **설정 -> 화면보호기 -> 고급 설정**에서 **임의의 그림 사용**를 활성화하고 이미지 디렉토리를 지정해준다.
===== XScreensaver 작동 중지시키기 =====
==== 일반적인 상황 ====
* [[https://github.com/iye/lightsOn]]
* [[https://github.com/joezifer/ghostlight|ghostlight]] 간단한 스크립트 xset 이용.]]
* [[https://github.com/caffeine-ng/caffeine-ng|caffeine-ng]]
* [[https://launchpad.net/~caffeine-developers/+archive/ubuntu/ppa|Caffeine PPA]] - No UI
* ''caffeine-indicator'' 실행해서 시스템 트레이에서 제어 가능
* [[https://github.com/mildmojo/caffeine-plus|Caffeine Plus]] Caffeine에 UI 붙임.
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install caffeine-plus
==== 동영상 플레이어에서(mplayer) ====
* 최신 버전의 VLC나 UMPlayer 모두 옵션에서 화면보호기 방지 기능이 들어가 있기 때문에 아래의 기법들이 불필요하다.
=== 첫번째 ===
동영상을 보는동안 스크린 세이버를 중지시켜야 한다. mplayer에 옵션을 주는 방식인데, 기본 옵션인 ''-stop-xscreensaver''는 자동으로 지정된다. 나머지 옵션인 스크린세이버 중지 명령을 smplayer **환경설정 -> 고급 -> MPlayer 옵션 -> 옵션** 항목에 지정해 줘야 한다.
여기서 약간의 문제가 있는데, 여기서 지정해주는 옵션은 사실 ''-heartbeat-cmd "xscreensaver-command -deactivate"''이거면 돼야 한다. 그런데 안 된다. 그래서 따로 셸 스크립트를 만들고 그것을 지정하도록 했더니 잘 되었다.(GNOME은 ''gnome-screensaver-command -p'' 명령을 사용해야 한다.)
다음과 같이 /home/user/bin/stop_xscreensaver.sh 파일을 만든다.
#!/bin/sh
/usr/bin/xscreensaver-command -deactivate > /dev/null 2>&1
위 파일에 ''chmod +x ./stop_xscreensaver.sh'' 명령으로 실행 권한을 준다.
이제 smplayer의 옵션에서 ''**-heartbeat-cmd "/home/user/bin/stop_xscreensaver.sh"**''를 지정해주면 스크린 세이버 작동이 자동으로 중단 된다.
자세한 사항은 ''man mplayer''에서 ''-heartbeat-cmd'' 항목을 보도록 한다.
=== 두번째 ===
''~/.mplayer/config'' 파일에 다음 내용을 추가한다.
heartbeat-cmd="xscreensaver-command -deactivate >&- 2>&- &"
=== 기타 ===
기타 스크린 세이버를 멈추는 다른 방법으로 다음과 같은 셸스크립트를 만들어서 콘솔에서 실행해두는 간단한 방법도 있다. ''Ctrl-C''를 눌러 작동을 멈출 수 있다.
watch -n 30 xscreensaver-command -deactivate
''xdg-screensaver reset'' 명령도 스크린세이버를 멈추는 동일한 역할을 하는데, 이는 데스크탑이나 스크린 세이버 종류에 상관없이 작동한다.
===== 옛날 콘솔 =====
* http://resinblade.net/wordpress/?p=810
==== phosphor ====
* 녹색의 옛날 느낌 콘솔. 실제로 콘솔 프로그램을 실행하여 보여줄 수 있다.
* ''top'' 명령 화면을 화면 보호기로
phosphor -root -delay 1000 -scale 3 -program top
# or htop
phosphor -root -delay 100 -scale 3 -program htop
* [[https://askubuntu.com/questions/1162685/how-to-use-htop-or-other-system-monitor-as-screensaver|configuration - How to use htop or other system monitor as screensaver - Ask Ubuntu]]
==== apple2 ====
* Apple 2 화면으로 콘솔 프로그램을 실행하여 보여줄 수 있다.
* ''top'' 명령 화면을 화면 보호기로
apple2 -root -text -fast -program top
===== MPlayer로 동영상 플레이하기 =====
''~/.xscreensaver'' 파일의 ''programs'' 항목에 다음을 추가한다. 그리고서 XScreensaver 설정에서 "Movies"를 선택해주면 된다.
"Movies" mplayer -really-quiet -nosound -nolirc \
-nostop-xscreensaver \
-wid $XSCREENSAVER_WINDOW \
-fs -loop 0 \
$HOME/path_to_movie/my_movie.mp4 \n\
마지막에 동영상 파일 경로 대신 ''-playlist movies.pl'' 처럼 플레이리스트를 지정하면 여러 동영상을 플레이할 수 있다. mplayer playlist는 동영상 파일의 절대 경로로 이루어진 일반 텍스트파일이다.
===== Known Bugs =====
* [[https://bugs.launchpad.net/ubuntu/+source/xscreensaver/+bug/569993|
[fglrx] GL screensaver obscures window to enter password when lock is enabled]] : Catalyst 드라이버를 사용할 경우, GL 스크린세이버 실행 후 비밀번호 입력창이 안 보이는 버그가 있다. 그러나 비밀번호를 올바로 입력하면 제대로 언락이 되긴한다.
===== 기타 화면 잠금 =====
* [[linux:xautolock|XAutoLock]]
===== 참조 =====
*[[https://vitux.com/how-to-replace-gnome-screensaver-with-xscreensaver-on-ubuntu/|How to replace Gnome Screensaver with Xscreensaver on Ubuntu]]