Gần đây tôi đưa xset b off
vào .bashrc của tôi. Bây giờ tôi cảm thấy khó chịu vì lỗi đã bật lên khi tôi đăng nhập qua tty hoặc qua ssh, tức là ngoài phiên X.
Điều đầu tiên xuất hiện trong đầu tôi là [[ -z "$SOME_VAR" ]] && xset b off
(ừm, hóa ra biến kiểm tra được đặt so với trống là một câu hỏi khác). Nhưng SOME_VAR nào là đúng?
Vì vậy, tôi đã set
phân tách đầu ra của tty và đầu ra của urxvt set
để xem biến nào được đặt trong X và thiếu trong tty. Đúng như dự đoán, có khá nhiều sự khác biệt (chỉ liệt kê những thứ có vẻ phù hợp với tôi):
DESKTOP_SESSION
DISPLAY
GDMSESSION
SESSION_MANAGER
WINDOWID
WINDOWPATH
XAUTHORITY
XDG_SESSION_COOKIE
XDG_CONFIG_DIRS
XDG_DATA_DIRS
XDG_MENU_PREFIX
Cái nào là chính xác và phổ biến nhất để kiểm tra để phát hiện xem tôi có tham gia phiên X hay không? Một cái gì đó sẽ hoạt động trên càng nhiều distro và nền tảng và môi trường máy tính để bàn càng tốt?
Hoặc có cách nào tốt hơn so với thử nghiệm các biến môi trường?
ssh -X
; hoạt động tốt