i3 창 관리자(버전 4)를 구성 중인데 가끔 기본 자동 시작을 사용하는 것 같 exec
거나 exec_all
실패하는 것 같습니다. (*)
i3_autostart.sh
그래서 나는 필요한 모든 것을 하나의 정리된 장소에 추가하는 스크립트를 만들기로 결정했습니다 . 이 작업을 수행하는 것과 비슷 KDE
하거나 GNOME
자체 폴더가 있습니다.
스크립트는 ~/.config/i3/config
다음 줄(**)을 사용하여 호출됩니다.
exec_always --no-startup-id /home/beco/.config/i3/i3_autostart.sh
그런 다음 기본적으로 자동 시작하려는 모든 프로그램을 실행하는 함수를 호출하는 자동 시작 스크립트를 입력하십시오. 예는 다음과 같습니다.
Autostart()
{
# why, o my?
sleep 1
# set keyboard bindings
xkbcomp -w 0 /home/beco/.config/xkbmap_kde $DISPLAY
# toggle touchpad
/home/beco/bin/touchpad off
# set wallpaper
feh --bg-scale /home/beco/Pictures/wallpaper/Stonehenge-Desktop-Wallpaper-i3help.png
# clipboard
parcellite
# network manager
nm-tray
# why, o my?
sleep 1
}
를 제외한 모든 프로그램이 정상적으로 시작됩니다 nm-tray
. 여러 명령 조합과 기술을 시도했지만 소용이 없었습니다.
내가 본 것에서 문제는 nm-tray가 전경 실행을 좋아하지만 배경을 실행해야 하며 내가 아는 한 명령줄에서 설정할 수 있는 옵션이 없다는 것입니다. 그래서 우리는 bash
시설을 이용해야 합니다 .
내 시도는 다음과 같습니다.
- 간단한 배경
# network manager
nm-tray &
- 부정하려고 노력하다
# network manager
nm-tray &>/dev/null &
disown $!
- 노헙과 부정
# network manager
nohup nm-tray &>/dev/null &
disown $!
nm-tray가 계속 실행되는지 확인하기 위해 전체 자동 시작 스크립트를 백그라운드에서 실행 중인 상태로 두려고 했습니다.exec_always --no-startup-id /home/beco/.config/i3/i3_autostart.sh &>/dev/null &
클립보드 아이콘과 키보드 아이콘이 보입니다. 터치패드가 꺼짐으로 설정되어 있습니다. 그러나 nm-tray 아이콘은 작동하지 않는다고 주장합니다.
어떤 제안이 있으십니까? 감사해요.
@drbeco
(*) 일부 버그 보고서를 읽었지만 이 질문은 이 문제를 해결하기 위한 것이 아닙니다. 이는 문제가 여전히 존재하는 동안 신뢰할 수 있는 좋은 해결 방법을 만들기 위한 것입니다.
(**) 절대 실패하지 않는 라인이라 exec_always
너무 맘에 들어요.
답변1
백그라운드에서 실행을 거부하는(또는 이후에 작동하지 않는) 유일한 프로그램은 터미널이 필요한 프로그램입니다.
문제는 백그라운드에서 시작 nm-tray
하지 않기 때문에 전혀 실행되지 않는다는 것입니다. 따라서 이 두 줄 끝에 앰퍼샌드를 추가하고(스스로 분리되지 않는 다른 장기 실행/지속 프로그램을 시작하는 경우 앰퍼샌드를 추가하지만 현재 위 목록에는 없는 것 같습니다) A disavow를 추가하세요. 스크립트를 실행하려면 프로그램이 완료될 때까지 스크립트를 거기에 매달아 두지 마십시오.parcellite
위의 예시 대신 이 블록을 사용해 보세요.
Autostart()
{
# why, o my?
sleep 1
# set keyboard bindings
xkbcomp -w 0 /home/beco/.config/xkbmap_kde $DISPLAY
# toggle touchpad
/home/beco/bin/touchpad off
# set wallpaper
feh --bg-scale /home/beco/Pictures/wallpaper/Stonehenge-Desktop-Wallpaper-i3help.png
# clipboard
parcellite &
# network manager
nm-tray &
# detach the started background programs
disown
# why, o my?
#sleep 1
}