Feh - Arch Linux에서 배경을 로드할 때 이상한 동작

Feh - Arch Linux에서 배경을 로드할 때 이상한 동작

Arch Linux의 Feh에 이상한 문제가 있습니다. Openbox 세션을 시작하면 feh가 잠시 동안 배경을 로드한 다음 사라집니다. 배경을 수동으로 로드하면 남은 세션 동안 feh가 완벽하게 실행되지만 시작 시에는 항상 실패합니다.

저는 Arch Linux(현재)와 Openbox 3를 실행하고 있습니다.

관련된 문서:

~/.config/openbox/autostart.sh

# Set a background color
BG=""
if which hsetroot >/dev/null 2>&1; then
    BG=hsetroot
else
    if which esetroot >/dev/null 2>&1; then
    BG=esetroot
    else
    if which xsetroot >/dev/null 2>&1; then
        BG=xsetroot
    fi
    fi
fi
test -z $BG || $BG -solid "#303030"

# D-bus
if which dbus-launch >/dev/null 2>&1 && test -z "$DBUS_SESSION_BUS_ADDRESS"; then
       eval `dbus-launch --sh-syntax --exit-with-session`
fi

if test -x /usr/libexec/gnome-settings-daemon >/dev/null; then
  /usr/libexec/gnome-settings-daemon &
elif which gnome-settings-daemon >/dev/null 2>&1; then
  gnome-settings-daemon &
elif which xfce-mcs-manager >/dev/null 2>&1; then
  xfce-mcs-manager n &
fi

if which start_kdeinit >/dev/null 2>&1; then
  LD_BIND_NOW=true start_kdeinit --new-startup +kcminit_startup &
fi

# Run XDG autostart things.  By default don't run anything desktop-specific
# See xdg-autostart --help more info
DESKTOP_ENV="OPENBOX"
if which /usr/lib/openbox/xdg-autostart >/dev/null 2>&1; then
  /usr/lib/openbox/xdg-autostart $DESKTOP_ENV
fi

## My startup programs:
cairo-compmgr &
pypanel &
sh ~/.fehbg &

~/.fehbg

feh  --bg-fill '/home/cknadler/Wallpaper/wall.jpg'

이 시점에서 저는 세션을 시작할 때마다 feh를 올바르게 로드할 수 있는 솔루션을 찾고 있거나 openbox에서 배경 feh를 로드하는 대신 사용할 수 있는 방법을 찾고 있습니다. 누구라도 크게 감사하겠습니다. 감사합니다.

답변1

Feh는 거의 확실하게 배경을 로드한 다음 나머지 부팅 프로세스 동안 X 배경을 재설정합니다. 나는 이것이 gnome-settings-daemon을 시작한다는 사실과 관련이 있다고 생각합니다. 그러면 배경 및 기타 데스크탑 설정(예: 글꼴 렌더링) 설정을 포함하여 많은 작업이 시작됩니다. 배경을 재설정하는 부분을 찾을 때까지 시작 스크립트의 일부 부분을 제거해야 하지만 그것이 gnome-settings-daemon이라는 것을 거의 확신할 수 있습니다.

feh 시작을 지연하고 gnome-settings-daemon이 관련 작업을 완료하도록 하여 이 문제를 해결할 수 있습니다.

(sleep2; feh --bg-fill ~/wall.jpg) &

관련 정보