AwesomeWM에서 Polybar가 시작되지 않는 이유는 무엇입니까?

AwesomeWM에서 Polybar가 시작되지 않는 이유는 무엇입니까?

Awesome Window Manager가 실행된 후에 실행되어야 하는 응용 프로그램의 시작 논리가 포함된 셸 스크립트가 있습니다. 현재는 폴리바와 피콤을 출시하고 있다. Picom은 잘 작동하지만 Polybar는 전혀 시작되지 않습니다.

#!/bin/sh
# See https://wiki.archlinux.org/title/Awesome#Autostart

run() {
  if ! pgrep -f "$1" ;
  then
    "$@"&
  fi
}

run "~/.config/polybar/launch.sh"
run "picom --experimental-backends -b"

rc.lua모든 것이 초기화된 후 위에서 쉘 스크립트를 트리거하십시오. 이는 다음 코드가 내 rc 파일 끝에 있음을 의미합니다.

-- See https://wiki.archlinux.org/title/Awesome#Autostart
awful.spawn.with_shell("~/.config/awesome/autorun.sh")

~/.config/polybar/launch.sh:

#!/bin/bash

# Terminate already running bar instances
killall -q polybar
# If all your bars have ipc enabled, you can also use
# polybar-msg cmd quit

# Launch Polybar, using default config location ~/.config/polybar/config.ini
polybar mybar 2>&1 | tee -a /tmp/polybar.log & disown

echo "Polybar launched..."

이상한 점은 ~/.config/polybar/launch.sh터미널에서 실행하면 정상적으로 실행된다는 것입니다. 내 창 관리자( rc.lua정확히 말하면 파일에서) 에서 시작할 때 왜 시작되지 않습니까 ?

답변1

다음으로 업데이트하여 문제를 해결하세요 autorun.sh.

#!/bin/sh
# See https://wiki.archlinux.org/title/Awesome#Autostart

run() {
  if ! pgrep -f "$1" ;
  then
    "$@"&
  fi
}

run "$HOME/.config/polybar/launch.sh"

exec picom --experimental-backends &

다른 사람의 도트 파일에서 복사했는데 왜 초기 코드가 작동하지 않는지 모르겠습니다...

관련 정보