Package: autorandr Version: 1.7-1 Severity: wishlist Tags: patch
Is there a reason that autorandr passes the xrandr arguments for individual displays pairwise?
For instance, here it's running xrandr --fb 3840x2160 --output DP2-1 --gamma 1.0:1.0:1.0 --mode 1920x1080 --pos 0x0 --primary --rate 60.00 --reflect normal --rotate normal \ --output DP2-2 --gamma 1.0:1.0:1.0 --mode 1920x1080 --pos 1920x0 --rate 60.00 --reflect normal --rotate normal xrandr --fb 3840x2160 --output eDP1 --gamma 1.0:1.0:1.0 --mode 1920x1080 --pos 0x1080 --rate 59.96 --reflect normal --rotate normalwhich actually fails for some reason ("xrandr: Configure crtc 1 failed"), wheres running two xrandr calls, one for each display, works.
So unless there is a really strong reason why to run the xrandr operations pairwise, here's a patch that makes each display get its own call:
--- /tmp/autorandr 2019-02-08 13:27:20.399210756 +1300 +++ /usr/bin/autorandr 2019-02-08 13:27:44.534746493 +1300 @@ -749,10 +749,9 @@ # In the context of a xrandr call that changes the display state, `--query' should do nothing disable_outputs.insert(0, ['--query']) - # Enable the remaining outputs in pairs of two operations operations = disable_outputs + enable_outputs - for index in range(0, len(operations), 2): - argv = base_argv + list(chain.from_iterable(operations[index:index + 2])) + for op in operations: + argv = base_argv + list(op) if call_and_retry(argv, dry_run=dry_run) != 0: raise AutorandrException("Command failed: %s" % " ".join(argv)) -- System Information: Debian Release: buster/sid APT prefers unstable APT policy: (500, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-2-amd64 (SMP w/4 CPU cores) Locale: LANG=en_NZ, LC_CTYPE=en_NZ.UTF-8 (charmap=UTF-8), LANGUAGE=en_NZ:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages autorandr depends on: ii python 2.7.15-4 ii x11-xserver-utils 7.7+8 autorandr recommends no packages. autorandr suggests no packages. -- no debconf information -- .''`. martin f. krafft <madduck@d.o> @martinkrafft : :' : proud Debian developer `. `'` http://people.debian.org/~madduck `- Debian - when you have better things to do than fixing systems
digital_signature_gpg.asc
Description: Digital GPG signature (see http://martin-krafft.net/gpg/sig-policy/999bbcc4/current)