เครื่องมือสำหรับใช้การกำหนดค่า RandR โดยอัตโนมัติเมื่อเสียบจอแสดงผลภายนอก


53

มีเครื่องมือที่ช่วยให้หนึ่ง:

  • จดจำการกำหนดค่า RandR ปัจจุบัน (ตำแหน่ง, การวางแนว, ความละเอียด ฯลฯ ) บนพื้นฐานต่อจอภาพ
  • ใช้การกำหนดค่าที่ดีล่าสุดที่รู้จักโดยอัตโนมัติทันทีที่เสียบปลั๊กจอแสดงผลโดยไม่จำเป็นต้องโคลนรอบด้วย applets หรือ xrandr (1)

การกำหนดค่าจะต้องนำมาใช้บนพื้นฐานต่อผู้ใช้ต่อการแสดงผล

หากไม่มีเครื่องมือดังกล่าวอยู่ในป่าฉันต้องการที่จะรวมตัวเอง แต่เท่าที่ฉันเห็นไม่มีวิธีใดที่จะบอกได้ว่าเสียบจอภาพแล้วฉันต้องสำรวจด้วย xrandr -q นาน ๆ ครั้งจะคิดออกว่ามีการเชื่อมต่อหรือตัดการเชื่อมต่อหรือมีวิธีที่มีประสิทธิภาพมากขึ้นหรือไม่ udev สามารถปรับให้ทำเช่นนั้นได้หรือไม่?


คุณแน่ใจหรือไม่ว่าไม่มีวิธีที่จะบอกว่าจอภาพเสียบกับการ์ดของคุณแล้ว ลองเรียกใช้udevadm monitor --propertyจากเทอร์มินัลและเสียบจอแสดงผลด้วยการ์ดของฉันฉันเห็นเหตุการณ์เมื่อเสียบเข้ากับคุณอาจใช้กฎ + RUN ใน udev และสคริปต์ bash บางอย่างเพื่อให้ได้สิ่งที่คุณต้องการ อย่างไรก็ตามฉันไม่แน่ใจว่าคุณจะสามารถใช้สิ่งนี้ได้อย่างไรต่อผู้ใช้โดยใช้ udev
Steven D

@Steven: ความคิดเห็นของคุณควรเป็นคำตอบ มันไม่ใช่คำตอบที่สมบูรณ์ แต่มันมีความก้าวหน้าที่สำคัญ หาก udev เห็นเหตุการณ์ฮาร์ดแวร์ควรแจ้งให้ hal ทราบว่าจะส่งเหตุการณ์ dbus ซึ่งสามารถดูได้ด้วยรหัสผู้ใช้
Gilles 'หยุดชั่วร้าย'

คำตอบ:


19

ฉันกำลังใช้สคริปต์ (โฮมเมด) ง่ายๆนี้ที่ช่วยให้การสำรวจ RandR และสลับระหว่าง LVDS1 และ VGA1 เมื่อ VGA เชื่อมต่อ / ตัดการเชื่อมต่อ (สำหรับHDMIเอาท์พุทในแฟ้มสคริปต์ต่อไปนี้การเปลี่ยนแปลงทั้งหมดVGA1ไปHDMI1)

มันเป็นทางออกที่สกปรก แต่มันก็ใช้ได้ดี

มันถูกปรับแต่งสำหรับการตั้งค่าของฉัน: คุณมักจะต้องเปลี่ยนชื่อเอาท์พุท RandR ( LVDS1และVGA1) และไม่เหมือนกับฉันคุณอาจจะสบายดีกับโหมดเริ่มต้น RandR สำหรับ VGA

#!/bin/bash

# setting up new mode for my VGA
xrandr --newmode "1920x1080" 148.5 1920 2008 2052 2200 1080 1089 1095 1125 +hsync +vsync
xrandr --addmode VGA1 1920x1080

# default monitor is LVDS1
MONITOR=LVDS1

# functions to switch from LVDS1 to VGA and vice versa
function ActivateVGA {
    echo "Switching to VGA1"
    xrandr --output VGA1 --mode 1920x1080 --dpi 160 --output LVDS1 --off
    MONITOR=VGA1
}
function DeactivateVGA {
    echo "Switching to LVDS1"
    xrandr --output VGA1 --off --output LVDS1 --auto
    MONITOR=LVDS1
}

# functions to check if VGA is connected and in use
function VGAActive {
    [ $MONITOR = "VGA1" ]
}
function VGAConnected {
    ! xrandr | grep "^VGA1" | grep disconnected
}

# actual script
while true
do
    if ! VGAActive && VGAConnected
    then
        ActivateVGA
    fi

    if VGAActive && ! VGAConnected
    then
        DeactivateVGA
    fi

    sleep 1s
done

เต็มขั้นตอน:

  1. เปิด Terminal โดยกด Ctrl+Alt+t
  2. นำทางไปยังตำแหน่งที่ดีเพื่อสร้างและจัดเก็บเชลล์สคริปต์การสลับอัตโนมัติ ตัวอย่าง

    cd ./Desktop/

  3. สร้างและแก้ไขไฟล์. sh ด้วยโปรแกรมแก้ไขข้อความที่คุณต้องการ (ที่นี่ฉันใช้ pluma คุณสามารถลอง nano, vim และอื่น ๆ ) ตั้งชื่อเพื่อความสะดวกของคุณ ตัวอย่าง

    sudo pluma homemadeMonitor.sh

  4. แก้ไขไฟล์และคัดลอกวางทุกอย่างจากสคริปต์ที่กล่าวถึงข้างต้น (ไฟล์ที่มี #! / bin / bash)

  5. ทำให้ไฟล์. sh ปฏิบัติการได้โดยพิมพ์คำสั่งต่อไปนี้ในเทอร์มินัล

    sudo chmod +x homemadeMonitor.sh

  6. เรียกใช้ไฟล์. sh

    ./homemadeMonitor.sh


สคริปต์ที่ดี! ขอบคุณฉันต้องการอะไรแบบนี้ ฉันเพิ่งคัดลอกและตั้งค่าให้ทำงานโดยอัตโนมัติ ขอบคุณ!
Linuxios

21

การตอบสนองต่อวิธีการ "[a] เพื่อบอกว่ามีการเสียบจอมอนิเตอร์" เป็นส่วนหนึ่งของคำถาม:

การสนับสนุนยังคงแตกต่างกันไปเล็กน้อย แต่ด้วยเคอร์เนลล่าสุดมีการสนับสนุนบางอย่างสำหรับการสร้างเหตุการณ์ udev เมื่อ hotplug ของจอแสดงผลเกิดขึ้น ด้วยเคอร์เนล 2.6.38 และฮาร์ดแวร์ ATI X1400 ฉันได้รับเหตุการณ์ครั้งแรกที่ฉันเชื่อมต่อจอแสดงผล VGA แต่ไม่มีเหตุการณ์ใด ๆ ในการยกเลิกการเชื่อมต่อหรือเชื่อมต่อจอภาพอีกครั้งในภายหลัง ฮาร์ดแวร์ของ Intel อาจมีการสนับสนุนที่ดีกว่า ไดร์เวอร์ที่เป็นกรรมสิทธิ์ของ NVIDIA ไม่รองรับ KMS ในปัจจุบัน ฉันไม่ได้ลองหาฮอตปลั๊กเหตุการณ์บนฮาร์ดแวร์ NVIDIA แต่ฉันสงสัยว่ามันจะทำงานได้

หากคุณต้องการทดลองใช้ udev คุณสามารถลองขั้นตอนต่อไปนี้:

  • อัพเดตเป็นเคอร์เนลใหม่ล่าสุด
  • ตรวจสอบให้แน่ใจว่าเปิดใช้งานการตั้งค่าโหมดเคอร์เนล (KMS) หากเปิดใช้งานควรรายงานในผลลัพธ์เคอร์เนลของคุณ ฉันพูด[drm] radeon kernel modesetting enabledและ[drm] initializing kernel modesetting
  • เรียกใช้udevadm monitor --propertyและดูว่ามีการรายงานเหตุการณ์เมื่อคุณ (dis-) การเชื่อมต่อปรากฏขึ้นหรือไม่

หากคุณได้รับเหตุการณ์ udev บนหน้าจอ hotplug คุณสามารถเรียกสคริปต์ด้วยกฎของ udev เช่น:

ACTION=="change", SUBSYSTEM=="drm", HOTPLUG=="1", RUN+="/path/to/hotplug.sh"

หมายเหตุ:วิธีนี้จะไม่ทำงานหากคุณใช้ GPU nVIDIA กับไดรเวอร์ไบนารี่ที่เป็นกรรมสิทธิ์เนื่องจากไม่ได้ใช้ KMS คุณจะไม่ได้รับเหตุการณ์ udev


19

เกี่ยวกับเครื่องมือที่สามารถเก็บโปรไฟล์การกำหนดค่าจอภาพบนพื้นฐานต่อผู้ใช้และต่อการแสดงผล autorandr จะทำอย่างนั้น https://github.com/wertarbyte/autorandr

แล็ปท็อปของฉันมีการ์ด NVIDIA ดังนั้นฉันจะใช้แบ็กเอนด์ disper แทน xrandr: http://willem.engen.nl/projects/disper/ Autorandr จะใช้ disper autodisperเป็นแบ็กเอนด์ในการจัดการจอภาพของคุณถ้าคุณเรียกว่าเป็น สำหรับส่วนที่เหลือของโพสต์นี้ฉันจะอ้างถึงว่าเป็นความautorandrสอดคล้อง

autorandr --save profile_nameคุณสามารถบันทึกโปรไฟล์ด้วย การรันautorandrด้วยตัวเองจะแสดงรายการโปรไฟล์และระบุว่าโปรไฟล์ใดที่ตรวจพบว่าเป็นการกำหนดค่าปัจจุบัน

ตัวอย่างเช่น

$ autorandr
laptop
syncmaster19 (detected)

autorandr --changeคุณสามารถบอกให้โหลดรายละเอียดที่เหมาะสมโดยอัตโนมัติสำหรับการกำหนดค่าปัจจุบันด้วย คำสั่งนี้จับคู่กับกฎ udev เพื่อเรียกใช้เมื่อ hotplugged จะทำสิ่งที่คุณร้องขอ

เพื่อเป็นการป้องกันไว้ล่วงหน้าฉันได้ต่อท้าย--default laptopคำสั่งนั้นซึ่งจะทำให้มันเป็นค่าเริ่มต้นไปที่จอแสดงผลของแล็ปท็อปหากไม่มีโปรไฟล์ที่บันทึกไว้ซึ่งตรงกับการกำหนดค่าปัจจุบัน ดังนั้นคำสั่งทั้งหมดที่ฉันใช้เพื่อสลับการแสดงผลคือ:

autorandr --change --default laptop

น่าเสียดายที่เครื่องของฉันไม่ให้เอาต์พุต udev ใด ๆ เมื่อฉันเสียบปลั๊กจอแสดงผลของฉัน ฉันใช้ไดรเวอร์ที่เป็นกรรมสิทธิ์ของ NVIDIA ดังนั้นจึงไม่น่าแปลกใจ ดังนั้นฉันได้ผูกมันไว้กับคีย์ XF68Display (Fn-F8) ในตอนนี้ซึ่งเกือบจะดี


1
autorandr เสียเวลามีเอกสารไม่ดีตรวจสอบแบบสุ่มกะพริบไม่มีคำแนะนำในการติดตั้ง / ถอนการติดตั้ง สามารถแก้ไขได้โดยใช้udev
Leo Gallucci

5
ในกรณีที่มีทางแยกที่เขียนไว้ใน Python ไว้เป็นอย่างดีบำรุงรักษาของautorandr: github.com/phillipberndt/autorandr
Olegs Jeremejevs

7

ฉันใช้กฎ udev ที่แนะนำด้านบนพร้อมกับเชลล์สคริปต์ที่ดูเหมือน

#!/bin/sh

dmode="$(cat /sys/class/drm/card0-VGA-1/status)"
export DISPLAY=:0
export XAUTHORITY=/home/yourusername/.Xauthority

if [ "${dmode}" = disconnected ]; then
     /usr/bin/xrandr --auto
elif [ "${dmode}" = connected ];then
     /usr/bin/xrandr --output VGA1 --auto --right-of LVDS1
else /usr/bin/xrandr --auto
fi

ส่วน Xauthority มีความสำคัญเช่นเดียวกับการส่งออกDISPLAYคุณสามารถใช้เสียงสะท้อน$DISPLAYเพื่อดูว่ามันเท่ากับจำนวนใด ใช้xrandr -qเพื่อดูจอภาพภายนอกที่คุณมี คำสั่งสุดท้ายคือเพื่อให้แน่ใจว่าคุณจะไม่ติดขัดโดยไม่มีจอแสดงผล


6

โปรแกรมขนาดเล็กที่รอให้เซิร์ฟเวอร์ X แจ้งเตือนเกี่ยวกับการกำหนดค่าจอภาพที่เปลี่ยนไปจากนั้นดำเนินการคำสั่งที่กำหนด (เช่นautorandrคำตอบที่กล่าวไว้ในคำตอบอื่น) มีให้ที่: https://bitbucket.org/portix/srandrd/overview

ดูเหมือนว่าจะเป็นโซลูชันที่สะอาดกว่าที่ใช้udev(ซึ่งคุณต้องกังวลเกี่ยวกับการค้นหาเซิร์ฟเวอร์ X ที่เหมาะสม ฯลฯ )


5

หากคุณต้องให้มันตรวจจับการแสดงผลโดยอัตโนมัติเมื่อเสียบปลั๊กดูเหมือนว่าโซลูชันที่สะอาดที่สุดคือการเพิ่มกฎ UDEV เพื่อเรียกใช้สคริปต์ที่มีคำสั่ง xrandr ของคุณ นี่คือตัวอย่างจากโซลูชันของผู้ใช้1 :

มอนิเตอร์ (เอาต์พุต) เหตุการณ์ UDEV ด้วยudevadm
ขั้นตอนนี้จะสำคัญที่สุดสำหรับผู้ใช้แต่ละคน udevadm monitor --environment --udevวิ่ง จากนั้นเชื่อมต่อสาย HDMI ของคุณ

กฎ udev
จากผลลัพธ์จากคำสั่งดังกล่าวข้างต้นที่ผู้ใช้สร้างกฎ udev /etc/udev/rules.d/95-monitor-hotplug.rulesนี้ได้ที่

KERNEL=="card0", SUBSYSTEM=="drm", ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/dan/.Xauthority", RUN+="/usr/local/bin/hotplug_monitor.sh"

หมายเหตุตัวแปรสภาพแวดล้อมที่ใช้ดังนั้น xrandr จะถูกเรียกใช้ภายใต้โปรไฟล์ผู้ใช้

สคริปต์ xrandr hotplug_monitor.sh

คุณอาจต้องการปรับตัวเลือก xrandr เพื่อให้เหมาะกับความต้องการของคุณ

#! /usr/bin/bash

export DISPLAY=:0
export XAUTHORITY=/home/dan/.Xauthority

function connect(){
    xrandr --output HDMI1 --right-of LVDS1 --preferred --primary --output LVDS1 --preferred 
}

function disconnect(){
      xrandr --output HDMI1 --off
}

xrandr | grep "HDMI1 connected" &> /dev/null && connect || disconnect

3

สำหรับผู้ที่ไม่ต้องการใช้เส้นทาง hotplug ไม่ว่าด้วยเหตุผลใดก็ตามคุณยังไม่สามารถสำรวจความคิดเห็นภายในสคริปต์ด้วยการใช้ inotifywait:

#! / bin / ทุบตี

SCREEN_LEFT = DP2
SCREEN_RIGHT = eDP1
START_DELAY = 5

renice +19 $$> / dev / null

นอนหลับ $ START_DELAY

OLD_DUAL = "จำลอง"

ในขณะที่ [1]; ทำ
    DUAL = $ (cat / sys / class / drm / card0-DP-2 / สถานะ)

    ถ้า ["$ OLD_DUAL"! = "$ DUAL"]; แล้วก็
        หาก ["$ DUAL" == "เชื่อมต่อ"]; แล้วก็
            echo 'การตั้งค่าจอภาพสองจอ'
            xrandr - เอาท์พุท $ SCREEN_LEFT - อัตโนมัติ - หมุนปกติ - เลือก 0x0 - ส่งออก $ SCREEN_RIGHT - อัตโนมัติ - หมุนปกติ - ด้านล่าง $ SCREEN_LEFT
        อื่น
            echo 'ตั้งค่าจอภาพเดียว'
            xrandr - อัตโนมัติ
        Fi

        OLD_DUAL = "$ DUAL"
    Fi

    inotifywait -q -e close / sys / class / drm / card0-DP-2 / status> / dev / null
เสร็จแล้ว

การลงคะแนนด้วย xrandr ให้ปัญหาการใช้งานอย่างหนักกับแล็ปท็อปใหม่ของฉัน


1

เมื่อใช้โซลูชันของ peoro ฉันได้รับเอาต์พุตพิเศษจาก xrandr ดังนั้นฉันจึงใช้ตัวเลือก -c สำหรับ grep ซึ่งนับจำนวนการแข่งขัน ฉันปรับมันสำหรับ HDMI และเพิ่มสวิตช์เสียงด้วย:

#!/bin/bash
# adapted from http://unix.stackexchange.com/questions/4489/

# default monitor is LVDS1
MONITOR=LVDS1

# functions to switch from LVDS1 to HDMI1
function ActivateHDMI {
    xrandr --output HDMI1 --mode 1920x1080 --dpi 160 --output LVDS1 --off
    pactl set-card-profile 0 output:hdmi-stereo-extra1
    MONITOR=HDMI1
}
function DeactivateHDMI {
    xrandr --output HDMI1 --off --output LVDS1 --auto
    pactl set-card-profile 0 output:analog-stereo
    MONITOR=LVDS1
}

# functions to check if HDMI is connected and in use
function HDMIActive {
    [ $MONITOR = "HDMI1" ]
}
function HDMIConnected {
    [[ `xrandr | grep "^HDMI1" | grep -c disconnected` -eq 0 ]]
}

# actual script
while true
do
    if ! HDMIActive && HDMIConnected
    then
        ActivateHDMI
    fi

    if HDMIActive && ! HDMIConnected
    then
        DeactivateHDMI
    fi

    sleep 1s
done

1

ฉันเดาว่าคนที่ดูคำถามนี้ไม่ใช่คนที่ต้องการใช้ GNOME และผู้ที่ใช้ GNOME ไม่ต้องดูคำถามนี้ แต่เพื่อความสมบูรณ์:

GNOME มีฟังก์ชั่นนี้ในตัว หากคุณเปลี่ยนการตั้งค่าผ่านทาง gnome-control-center, gnome-settings-daemon จะจดจำมัน (ใน.config/monitors.xml) และจะนำไปใช้โดยอัตโนมัติเมื่อเสียบปลั๊กเข้าหรือออก

น่าเสียดายที่การกำหนดค่าในไฟล์ monitor.xml นั้นไม่มีเอกสารที่ดี ดูคำถามที่นี่ เครื่องมือแสดงผล gnome ยังไม่มีวิธีการตั้งค่าปรากฎการณ์ปรับขนาดต่อจอภาพและมันไม่ได้ซูมออก ในขณะที่หลายคนกำลังใช้หน้าจอแล็ปท็อป HiDPI ร่วมกับหน้าจอ DPI ปกติเครื่องมือไม่เพียงพอที่จะได้รับโซลูชันที่ใช้การได้

ฉันได้เห็นสิ่งนี้ถูกกล่าวถึงว่าเป็นรายการแผนการทำงานสำหรับ Waylandแม้ว่าในที่สุดเมื่อมันมาถึงเราอาจเห็นการแก้ไขสำหรับปัญหาที่กล่าวถึง จนกระทั่งถึง Gnome ฉันเพิ่งเรียกใช้สคริปต์เริ่มต้นหลังจากการตั้งค่า xrandr ล่าช้าด้วยตนเอง


1

เพื่อลดความซับซ้อนใน Xfce เช่นโปรดติดตั้ง "arandr" ซึ่งควรมีอยู่ในแพ็คเกจ distro ของคุณ กำหนดค่าจอแสดงผลของคุณโดยใช้ "arandr" จากนั้นบันทึกเป็น "displayLayout" Arandr ควรเพิ่มส่วนขยาย ".sh" ให้กับคุณเพื่อให้สามารถใช้โดยตรงใน "function connect ()" ตามที่เขียนไว้ในสคริปต์ "hotplug_monitor.sh" ที่กล่าวถึงโดย iyrin ด้านบนตัวอย่างเช่น:

function connect(){
 /path/to/displayLayout.sh
}

หากต้องการใช้กลไกตัดการเชื่อมต่อให้เพิ่มที่ด้านบนสุดของสคริปต์ด้านล่าง "#! / bin / bash" ดังนี้:

#!/bin/bash
#
PLUGGED_EXTERNAL=`xrandr | awk /"connected [0-9]"/'{print $1}'`

xrandr จะตรวจจับการแสดงผลและส่งออกไปยัง awk ซึ่งจะกรองตามการแสดงออกปกติ "เชื่อมต่อ" ตามด้วยหลักซึ่งในสาระสำคัญคือสิ่งที่เราต้องการ ในความคิดของฉันไม่จำเป็นต้องจับคู่ความละเอียดที่แน่นอนในนิพจน์ทั่วไปเนื่องจากมีการรายงานการแสดงผลหลักว่า "เชื่อมต่อหลัก" แล้วตามด้วยหมายเลขเช่นความละเอียด จากนั้น awk "print $ 1" จะพิมพ์เฉพาะคอลัมน์แรกซึ่งเป็นชื่อของจอภาพภายนอกในกรณีนี้และจะถูกเก็บไว้ในตัวแปร PLUGGED_EXTERNAL ถัดไปแทนชื่อที่แสดงคงที่ "HDMI1" ในสคริปต์ $ PLUGGED_EXTERNAL สามารถใช้ดังนี้:

function disconnect(){
  xrandr --output $PLUGGED_EXTERNAL --off
}

xrandr | grep "$PLUGGED_EXTERNAL connected" &> /dev/null && connect || disconnect

0

การแก้ไขคำตอบของฉันเพื่อทำให้การติดตั้งง่ายขึ้น

ติดตั้ง autorandr เพื่อทำให้เค้าโครงหน้าจอเป็นแบบอัตโนมัติใน xrandr, รับ. deb ล่าสุดจากhttps://github.com/nalipaz/autorandr/releasesและเรียกใช้:

dpkg -i [file]

ตั้งค่า autorandr ด้วยเค้าโครงหน้าจอที่จัดเก็บไว้

autorandr --save [docked|mobile|home|etc]

ตัวอย่างเช่นบนแล็ปท็อปของฉันที่ไม่มีจอภาพเสียบอยู่ฉันตั้งค่า arandr ตามที่ฉันต้องการแล้ววิ่ง:

autorandr --save mobile

จากนั้นเสียบสาย hdmi ของฉันและกำหนดค่า arandr ใหม่แล้ววิ่ง:

autorandr --save docked

หลังจากตั้งค่าแต่ละเลย์เอาท์ของคุณคุณสามารถเรียกใช้ (แทนที่ 'มือถือ' ด้วยชื่อที่โปรดปรานก่อนหน้านี้ฉันใช้มือถือ):

autorandr --default mobile

หลังจากที่ autorandr เป็นการตั้งค่าทั้งหมดคุณสามารถทำให้กระบวนการโดยอัตโนมัติโดยการติดตั้งแพคเกจซึ่งจะสำรวจความคิดเห็นสำหรับจอแสดงผลที่เชื่อมต่อและเรียกใช้ autorandr --changeตามการตรวจจับ ใช่ฉันรู้เกี่ยวกับ udev และคุณสามารถตั้งค่าได้ถ้ามันเหมาะกับคุณ แต่ในการทดสอบของฉัน udev ไม่ได้ทำงานสำหรับ hdmi ของฉันอย่างสม่ำเสมอ ใช้งานได้เพียง 1 จาก 20 ปลั๊ก / ถอดปลั๊กและบางครั้งก็หยุดโดยสิ้นเชิง

ดาวน์โหลด. deb ล่าสุดจากที่นี่: https://github.com/nalipaz/poll-xrandr/releases/จากนั้นติดตั้งด้วย

dpkg -i [file]

เป็นไปได้ว่าจำเป็นที่คุณจะต้องรันงานมากขึ้นเมื่อดำเนินการเสร็จสมบูรณ์autorandr --changeautorandr อนุญาตให้แทรกคำสั่งเหล่านี้ลงในไฟล์ชื่อ ~ / .autorandr / postswitch ทำดังนี้:

cd ~/.autorandr/ && touch postswitch && chmod +x postswitch

ตอนนี้แก้ไขไฟล์ postswitch เพื่อให้มีสิ่งที่คล้ายกับต่อไปนี้:

#!/bin/bash
if pidof conky > /dev/null 2>&1; then
  killall conky
fi
(sleep 2s && xrandr-adjust-brightness restore -q) &
(sleep 2s && nitrogen --restore) &
(sleep 3s && conky -q) &

นอกจากนี้คุณอาจจะต้องการเพิ่ม autorandr และ poll-xrandr ใน startups ของคุณซึ่งคล้ายกับคำสั่งสองคำสั่งต่อไปนี้:

autorandr --change &
poll-xrandr &

ถอดปลั๊กหรือต่อจอภาพและดูเวทย์มนตร์!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.