为什么 Polybar 没有启动(来自 AwesomeWM)?

为什么 Polybar 没有启动(来自 AwesomeWM)?

我有一个 shell 脚本,其中包含应用程序的启动逻辑,这些应用程序应该在 Awesome 窗口管理器启动并运行后运行。目前,它推出了polybar和picom。 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一切都初始化后,从上面触发 shell 脚本。这意味着以下代码位于我的 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 &

我从别人的点文件中复制了这个,但我仍然不知道为什么我的初始代码不起作用......

相关内容