그래서 Windows 드라이브에 "Display Fusion"이라는 프로그램을 설치했는데 실제로는 한 가지 작업만 수행한다는 점이 마음에 들었습니다.
3대의 모니터에 대해 X분마다 배경화면을 무작위로 변경하도록 설정할 수 있습니다. 500개 이상의 배경화면 폴더를 지정할 수 있으며 각 모니터마다 하나씩 무작위로 선택됩니다(따라서 두 화면마다 동일한 배경화면이 거의 없을 수 있습니다).
저는 Gnome Shell 3.14.4를 사용하여 Debian Jessie를 실행하고 있으며 지금까지 다음 응용 프로그램을 시도한 결과 다음과 같은 문제가 발생했습니다.
질소: 전혀 작동하지 않습니다. Gnome Tweak Tool이 해당 옵션을 어디에도 나열하지 않기 때문에 "파일 관리자가 데스크탑을 처리하도록 허용"을 "끄기"로 설정할 수 없습니다.
Syncwall: 각 모니터에 대해 서로 다른 배경 화면을 설정할 수 있는 방법은 실제로 없지만 무작위 루프 기능이 작업을 완벽하게 수행합니다.
내가 원하는 작업을 수행할 수 있는 누락된 다른 잠재적인 소프트웨어가 있습니까?
이미 사용해 본 소프트웨어에서 분명히 뭔가를 놓치고 있는 걸까요?
업데이트 1:
Giles의 답변에서 두 번째 코드 블록을 시도했습니다.
#!/bin/sh
wallpaper_directory= MY WALLPAPER FOLDER
interval=300 # in seconds
IFS='
'; set -ef
while true; do
set $(find "$wallpaper_directory" -type f | shuf -r -n 3)
xloadimage -onroot -at 0,0 "$1" -at 1920,0 "$2" -at 3840,0 "$3"
sleep "$interval"
done
에 추가하세요/etc/init.d/
그러다가 도망갔어chmod 755 wallpaper_script.sh
그리고update-rc.d wallpaper_script.sh defaults
이제 "Tweak Tool" 설정이 다음과 같이 설정되었습니다.
이제 3개 모니터 모두의 배경이 파란색으로 표시됩니다.
하지만, 재부팅할 때(아마도 Gnome Shell 실행이 중지된 후) 재부팅하기 전에 3개의 배경화면이 깜박이는 것을 볼 수 있습니다.
따라서 스크립트는 작동하는 것 같지만 Gnome이 충돌하고 gsettings 및 dconf-editor를 파고든 후에도 Tweak-Tools가 Gnome2에서 수행하는 작업을 수행하는 설정을 찾을 수 없는 것 같습니다.
답변1
Gnome에 내장된 것이 없다면 이를 수행하는 스크립트를 작성할 수 있습니다. 다음은 ~/wallpapers
세 개의 모니터에서 배경 화면이 왼쪽에서 오른쪽으로 배열되어 있고 각 모니터의 너비가 1680픽셀이라고 가정하여 배경 화면을 무작위로 로드합니다. 그것은 사용한다이미지 로드(바라보다ImageMagick을 사용하여 루트 창에 여러 이미지 표시). 필요에 따라 모니터 크기와 배경 화면 위치를 조정합니다. 배경화면을 다르게 하려면 -r
옵션을 제거하세요 shuf
. 더 많은 모니터를 원하시면 매개변수를 늘리십시오 shuf -n
.
#!/bin/sh
IFS='
'; set -f
set $(find ~/wallpapers -type f | shuf -r -n 3)
xloadimage -onroot -at 0,0 "$1" -at 1680,0 "$2" -at 3360,0 "$3"
N분마다 배경화면을 변경하려면 세션 시작 애플리케이션에 다음 스크립트를 추가하세요.
#!/bin/sh
wallpaper_directory=~/wallpapers
interval=300 # in seconds
IFS='
'; set -ef
while true; do
set $(find "$wallpaper_directory" -type f | shuf -r -n 3)
xloadimage -onroot -at 0,0 "$1" -at 1680,0 "$2" -at 3360,0 "$3"
sleep "$interval"
done
다음은 호출하는 더 복잡한 스크립트입니다.xrandr
모니터 크기와 위치를 확인하세요. 이 변형은 배경화면이 모니터 크기 이름을 딴 하위 디렉토리에 있다고 가정합니다(예: ~/wallpapers/1680x1050
.
#!/bin/sh
wallpaper_directory=~/wallpapers
interval=300 # in seconds
random_wallpaper () {
find ~/wallpapers/$1 -type f | shuf -n 1
}
command="xloadimage -onroot"
i=1
for m in $(xrandr | sed -n 's/^.* connected.*[^0-9]\([0-9]*x[0-9]*\)+\([0-9]*\)+\([0-9]*\).*$/\1,\2,\3/p'); do
size="${m%%,*}" position="${m#*,}"
command="$command -at $position \"\$(random_wallpaper $size)\""
i=$((i+1))
done
if ! eval "$command"; then
echo >&2 "Unable to load initial wallpapers, aborting."
exit 2
fi
while sleep "$interval"; do
eval "$command"
done
(경고: 이 답변의 모든 코드는 테스트되지 않았습니다.)
또는 올바른 값을 설정하여(Gnome 2의 조정 도구가 수행하는 작업을 모방하여) 질소가 작동하도록 하는 방법이 있을 수 있지만 gsettings
어떤 키를 변경해야 하는지 모르겠습니다.