Buscar en moleculax

Este blog es un ensayo digital donde el pensamiento estructurado se encuentra con la introspección profunda. Explora la arquitectura del conocimiento: desde lo técnico hasta los fundamentos éticos. Aquí, cada algoritmo tiene propósito, cada línea de código refleja intención, y cada reflexión filosófica busca optimizar no solo sistemas, sino también decisiones humanas. Este blog no solo enseña a pensar, enseña a discernir, a construir con sentido. Porque el verdadero desarrollo nace de la conciencia, y eso exige precisión, virtud y coraje.

Tenemos que aprender a contemplar las potenciales consecuencias de nuestros planes, para impedir que nos sorprendan. De esta manera, tendremos más control sobre las situaciones difíciles ya que el verdadero progreso no se mide por la velocidad con la que avanzamos, sino por la dirección que elegimos. En un mundo cada vez más interconectado, el desarrollo de la humanidad exige más que tecnología y conocimiento: requiere conciencia, empatía y propósito.

Debemos cultivar una inteligencia que no solo resuelva problemas, sino que los prevenga con sabiduría. Una ciencia que no solo descubra, sino que se pregunte por qué y para quién. Una economía que no solo crezca, sino que reparta con justicia. Y una cultura que no solo celebre lo diverso, sino que lo abrace como fuerza vital.

Cada decisión que tomamos, cada palabra que decimos, cada idea que compartimos, puede ser una semilla de transformación. El futuro no está escrito: lo estamos escribiendo juntos, ahora mismo.

Que el desarrollo humano sea integral, sostenible y profundamente humano. Porque solo cuando elevamos a todos, nos elevamos como especie.

Sabiduría Justicia Templanza Coraje
How to use xrandr

Getting started

What is xrandr?

xrandr is a command-line tool to interact with the X RandR extension [see x.org, wikipedia], which allows for live (re)configuration of the X server (i.e. without restarting it): It provides automatic discovery of modes (resolutions, refresh rates, etc.) together with the ability to configure outputs dynamically (resize, rotate, move, etc.).
FIXME: Status across drivers?

What consequences for xorg.conf?

Starting with squeeze, removing the xorg.conf configuration file entirely should work well enough, but in case that doesn’t work out, let’s document what can be removed from it from a RandR point of view.
With the driver detecting modes automatically, several configuration options become useless most of the time in your configuration file (xorg.conf). You might want to remove:
  • HorizSync and VertRefresh from the Monitor section.
  • Modes from Display subsection in Screen section.
  • ModeLine from the Monitor section.
There’s also no need to keep static dual-head configuration. Some suggestions to get a tiny xorg.conf:
  • Drop dual Device/Screen/Monitor sections, a single one is needed.
  • Drop MonitorLayout option and Screen lines from the remaining Device section.
  • Drop the ServerLayout section(s).
  • Drop RightOf/LeftOf indication of the remaining Screen line in ServerLayout section.

Basic xrandr usage

Once the configuration file (xorg.conf) is removed or updated, starting the server should enable some outputs by default. Their top-left corners will be at the same part of the image, but their modes will probably be different.
All outputs may be configured through xrandr. To see the available outputs, just run xrandr:
$ xrandr
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096
VGA1 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1280x800+0+0 inverted X and Y axis (normal left inverted right x axis y axis) 261mm x 163mm
   1280x800       59.8*+
   1024x768       60.0
   800x600        60.3     56.2
   640x480        59.9
DVI1 disconnected (normal left inverted right x axis y axis)
TV1 disconnected (normal left inverted right x axis y axis)
 
Comments:
  • We see 4 outputs: VGA1, LVDS1, DVI1, TV1.
  • Only the internal panel (LVDS1) is connected and it supports 4 modes at 60 Hz, 1 mode at 56 Hz.
  • The mode marked with a star (*) is the current mode.
  • The one marked with a plus (+) is the preferred one. Most monitors report a preferred mode to the driver. And the server/driver will generally choose it by default.
FIXME: Mention output name conventions?
When manipulating VGA1 output properties, you should use:
$ xrandr --output VGA1 
 
Other sample:
 
$xrandr --output VGA-0 --mode 1600x900 --rate 60.00 

Adding/removing heads dynamically

The old days where you had to restart X when plugging a new monitor are gone. With RandR 1.2, you can plug/unplug monitors whenever you want. Running the following line will query all outputs and enable them with their default mode:
$ xrandr --auto
 
You may also disable one output using:
$ xrandr --output LVDS1 --off
 
This may be useful for some buggy application that don’t support multiple outputs well. Also, due to CRTC limitations (see the Caveats section below), it is often required to disable one output before enabling another since most hardware only support 2 at the same time.

Changing the mode

With the above xrandr output, you may change the LVDS1 mode to 1024x768 using:
$ xrandr --output LVDS1 --mode 1024x768
The refresh rate may also be changed, either at the same time or independently:
$ xrandr --output LVDS1 --mode 1024x768 --rate 75
$ xrandr --output LVDS1 --rate 75


To get back to the default mode:
$ xrandr --output LVDS1 --auto

Placing outputs in a virtual screen

A bit of configuration for non-KMS setups:

Let’s have a look at the maximal virtual screen size, we see 4096x4096 in this example:
$ xrandr|head -1
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 4096 x 4096
 
With KMS (FIXME: Link to a page which explains what KMS is), there’s no need to specify any Virtual option. With DRI and without KMS, that might be needed. Indeed, drivers will often create a default virtual screen with small dimensions, for instance 1600x1200, to reduce memory consumption.
If you plan to use multiple outputs displaying different zones, you should configure your xorg.conf by adding a Virtual line to the Display subsection in the Screen section.
Section "Screen"
  …
  SubSection "Display"
    Depth 24
    Virtual 3000 2000
  EndSubSection
EndSection

Place outputs

Outputs are placed using the following options: --right-of/--left-of/--above/--below. For instance, to place the VGA1 output virtually-right of the internal panel (LVDS1):
$ xrandr --output VGA1 --right-of LVDS1
 
Note that hardware and memory limitations may severely restrict the size of your virtual screen, see the Caveats section below.

Adding new modes

Under some circumstances, some modes might be missing. For instance, if the monitor does not report correct EDID information. Or if the output didn’t have a CRTC available at startup because another output was using it and you disabled it in the meantime.
If a mode exist, you may add it to one output with:
$ xrandr --addmode VGA1 800x600
 
If the mode does not exist, you may first create it by passing a modeline:
$ xrandr --newmode 
 
You may create a modeline using the gtf or cvt tools (shipped in the xserver-xorg-core package).

https://xorg-team.pages.debian.net

.

agenda 2023 (1) Algo que leer (265) Android (2) Angular (2) Apache (6) API (1) Arte y Cultura (11) Artes Marciales (10) Banner (1) Base de datos (33) Batalla Cultural (4) Big Data (12) Budismo (4) cabala judia (2) Calculo Asistido por computadoras (2) Canaima (6) Caos (1) Ceo (1) ciencias (1) Cine (1) Cobol (12) Cobra Kai (1) Codigo Linux Documental (2) Computación (3) Computación forense (14) Configurando Samba (1) Conocimiento (1) Consola (8) contenedores (5) Criptomonedas (3) Cultura (1) Cursos (15) Darkweeb (3) Data Mining (1) Debian (12) DeepWeb (7) demografia (8) Deporte y Recreación (9) Deportes (10) desclasificados (7) Desktop (1) developers (1) Docker (6) Document (1) Ecología (6) Editor (3) Editores (4) Educacion y TIC (31) Electronica (2) Emprendimiento (7) Espiritualidad (2) estoicismo (4) Eventos (2) Excel (1) Express (1) fedora (1) Filosofía (25) Flisol 2008 (3) Flisol 2010 (1) Flisol 2015 (1) framework (1) Funny (1) Geografía (1) Gerencia y Liderazgo (72) Gestor de Volúmenes Lógicos (1) Git (7) GitHub (8) Globalizacion (5) gnu (28) Go (1) gobiernos (2) golang (2) Google por dentro (1) GraphQL (1) gRPC (1) Hackers - Documental (8) Hacking (31) Historia (3) howto (189) html (1) IA (19) IntelliJIDEA (1) Internet (6) Introducción a los patrones (2) J SON (1) java (51) java eclipse (2) javaScript (8) JDK (1) jiujitsu (4) Json (1) Junit (1) kali (37) kernel (2) Kotlin (1) Laravel (2) Latin (1) LIbreOffice (1) Libros (4) Linux (44) Linux VirtualBox (1) Literatura (1) Manuales (42) mariaDB (1) Markdown (4) Marketing (1) Matando ladilla (9) Matematricas (1) Math (1) maven (1) metodos https (1) Modelos (1) MongoDB (17) Multimedia (1) Musica (1) mvc (2) Mysql (20) MySQL Workbench (1) Nagios (2) Naturismo (1) node (4) Node.js (5) NodeJS (8) NoSQL (1) Oracle (8) Oracle sql (8) Php (2) PL/SQL (1) Plsql (1) PNL (1) Poblacion (2) Podman (1) Poesia (1) Politica (4) Política (1) Postgresql (8) PowerShell (1) programacion (79) Psicologia (11) Python (5) Recomiendo (1) Redes (31) Religion (2) REST (2) Rock (1) Rock/Metal Mp3 (2) RUP (1) Salud (5) sc:snap:android-studio (1) sc:snap:datagrip (1) sc:snap:gitkraken linux (1) Seguridad (17) Seguridad con Gnu Privacy (2) Seo (1) simulaEntrevistas (10) simularExamen (10) Sistemas Operativos (69) SOAP (1) Sociedad (5) Software Libre (169) Soporte Tecnico (12) Sphinx (1) spring (1) spring boot (10) SQL (3) SQL en postgreSQL (38) Taekwondo (11) Tecnologia (5) Tecnología (27) Templarios (5) Tendencias (1) Thymeleaf (1) Tomcat (2) Tor (9) Trialectica (3) TYPEACRIPT (1) Ubuntu (5) unix (2) Vida activa (1) Videos (11) Videos Educativos (10) Vim (1) Viral (3) Visual Studio (1) wallpaper (2) web (1) Wifi (2) Windows (3) WWW (2) Xrandr (1) Zero Trust (2)

Sabiduria Justicia Templanza Coraje.

Hay que contemplar las potenciales consecuencias de nuestros planes, para impedir que nos sorprendan. De esta manera, tendremos más control sobre las situaciones difíciles.


Powered by