Debugging ratpoison xinerama features with gdb without multiple screens

Jeff Abrahamson <[email protected]> Fri, 14 Nov 2014 08:35:42 +0100
Newsgroups gmane.comp.window-managers.ratpoison.devel
Message-ID <CAM4Y7zz_cSbzG5Em+ReK7Gjxz0puU5L+f_MpN0BLG68P27uoqg@mail.gmail.com>
I found a bug that only happens on multiple screens. I'll post a fix as
soon as I figure it out, but the first bit was to figure out how to debug
this. It turns out that you don't need multiple monitors. And you can run
rp under gdb without needing a second machine to interact with gdb. Sadly,
no one around me feels as excited about this as me, so I have to tell you
guys. ;-)

I will soon enough supply a script to make this all easy. (I want first to
test it a bit more in debugging to make sure my script is correct and
properly documented.) To avoid suspense, it currently looks like this:

#!/bin/bash

echo "Starting xephyr :1 in 2 second..."
sleep 2
Xephyr :1 -ac -br +xinerama -screen 600×400 &

echo "Startying xephyr :2 in 2 second..."
sleep 2
Xephyr :2 -ac -br +xinerama -screen 600×400 &

echo "Starting xdmx on :3"
Xdmx :3 -display :1 -display :2 +xinerama

echo "To debug ratpoison:"
echo "$ DISPLAY=:3 gdb ratpoison"
echo "(gdb) r -f alternate-config-file"

And then, voila, ratpoison running under gdb on a two-screen xinerama
config on its own X server inside my current rp session (for some reason, I
got an old-fashioned screensaver on the subsidiary session, which is kinda
cool). The two screens are stacked vertically, just because it was
convenient to put them there. They are just windows in rp frames, after all.

[image: Inline images 1]

Sadly, my day job beckons...

Jeff Abrahamson
+33 6 24 40 01 57
+44 7920 594 255    <-- only if I'm in the UK

http://jeff.purple.com/
http://blog.purple.com/jeff/

_______________________________________________
Ratpoison-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/ratpoison-devel
image.png (image/png, 280.7 KB) - not displayed