¿Cómo configurar una resolución personalizada?

Intenté usar xrandr para establecer 1680×1050 como un nuevo modo para salida VGA, pero dice:

  sudo xrandr --addmode VGA-0 1680 X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 140 (RANDR) Minor opcode of failed request: 18 (RRAddOutputMode) Serial number of failed request: 35 Current serial number in output stream: 36 

Primero genera una “modeline” usando cvt
La syntax es: cvt width height refreshrate

 cvt 1680 1050 60 

esto te da:

 # 1680x1050 59.95 Hz (CVT 1.76MA) hsync: 65.29 kHz; pclk: 146.25 MHz Modeline "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync 

Ahora dile esto a xrandr :

 xrandr --newmode "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync 

Ahora puede agregarlo a la tabla de posibles resoluciones de una salida de su elección:

 xrandr --addmode VGA-0 1680x1050_60.00 

Los cambios se pierden después de reiniciar, para configurar la resolución de forma persistente, cree el archivo ~/.xprofile con el contenido:

 #!/bin/sh xrandr --newmode "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync xrandr --addmode VGA-0 1680x1050_60.00 

Cómo configurar una resolución personalizada previamente especificada. Después de ejecutar los otros pasos definidos para crear la resolución, ejecute:

 xrandr -s 1680x1050 

Cómo configurar una resolución personalizada previamente especificada cuando se ejecutan múltiples monitores . Después de ejecutar los otros pasos definidos para crear la resolución, ejecute:

xrandr --output DVI-0 --mode 1680x1050

Reemplace DVI-0 con su ID de dispositivo, por ejemplo, VGA-0

Gracias a Thom y Thirdender, esta es básicamente una configuración de comando única basada en la respuesta más votada .

 RES="1920 1200 60" && \ DISP=$(xrandr | grep -e " connected [^(]" | sed -e "s/\([A-Z0-9]\+\) connected.*/\1/") && \ MODELINE=$(cvt 1920 1200 60 | grep -e "Modeline [^(]" | sed -r 's/.*Modeline (.*)/\1/') && \ MODERES=$(echo $MODELINE | grep -o -P '(?<=").*(?=")') && \ cat > ~/.xprofile << _EOF #!/bin/sh xrandr --newmode $MODELINE xrandr --addmode $DISP $MODERES _EOF 

El comando anterior generará el archivo ~/.xprofile deseado. Solo asegúrate de usar la resolución (es decir, la variable RES ) de tu gusto. Más información aquí .