Logs on 2021-06-22 (liberachat/#xmonad)
| 00:20:17 | × | Nahra quits (~user@static.161.95.99.88.clients.your-server.de) (Remote host closed the connection) |
| 00:25:52 | → | efvincent-007 joins (~efvincent@71.69.232.38) |
| 00:27:13 | × | tremon quits (~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in) |
| 00:36:25 | × | efvincent-007 quits (~efvincent@71.69.232.38) (Ping timeout: 246 seconds) |
| 00:37:50 | × | MrElendig quits (~Urist@archlinux/op/MrElendig) (Ping timeout: 252 seconds) |
| 00:38:56 | → | MrElendig joins (~Urist@archlinux/op/MrElendig) |
| 01:07:13 | → | blaa joins (~bla@89-67-84-220.dynamic.chello.pl) |
| 01:07:14 | × | bla quits (~bla@89-67-84-220.dynamic.chello.pl) (Read error: Connection reset by peer) |
| 01:13:04 | <craige[m]> | I am. |
| 01:13:40 | <craige[m]> | I don't use containers though dminuoso |
| 01:15:11 | <craige[m]> | Here's my config dminuoso - https://source.mcwhirter.io/craige/mio-ops/src/branch/consensus/profiles/xmonad.nix |
| 02:03:05 | × | banc quits (banc@gateway/vpn/airvpn/banc) (Ping timeout: 258 seconds) |
| 02:03:48 | × | kajzer_ quits (~themainma@user/themainman) (Quit: WeeChat 3.1) |
| 02:11:42 | × | MrElendig quits (~Urist@archlinux/op/MrElendig) (Ping timeout: 264 seconds) |
| 02:12:18 | × | lisq quits (~quassel@lis.moe) (Ping timeout: 264 seconds) |
| 02:12:29 | → | lisq joins (~quassel@lis.moe) |
| 02:13:14 | → | MrElendig joins (~Urist@archlinux/op/MrElendig) |
| 02:22:08 | → | banc joins (banc@gateway/vpn/airvpn/banc) |
| 02:56:22 | × | td__ quits (~td@94.134.91.150) (Ping timeout: 258 seconds) |
| 02:57:57 | → | td_ joins (~td@94.134.91.59) |
| 04:11:02 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
| 04:11:02 | → | allbery_b joins (~geekosaur@xmonad/geekosaur) |
| 04:28:27 | × | haasn quits (~nand@haasn.dev) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
| 04:28:57 | → | haasn joins (~nand@haasn.dev) |
| 05:23:17 | → | efvincent-007 joins (~efvincent@71.69.232.38) |
| 05:49:20 | → | suckless joins (~suckless@78-61-222-190.static.zebra.lt) |
| 05:50:11 | ← | suckless parts (~suckless@78-61-222-190.static.zebra.lt) () |
| 06:00:31 | × | efvincent-007 quits (~efvincent@71.69.232.38) (Ping timeout: 246 seconds) |
| 06:57:31 | → | cfricke joins (~cfricke@user/cfricke) |
| 07:02:08 | → | Nahra joins (~user@static.161.95.99.88.clients.your-server.de) |
| 07:10:19 | → | backleet joins (~backleet@user/backleet) |
| 07:14:59 | × | Nahra quits (~user@static.161.95.99.88.clients.your-server.de) (Remote host closed the connection) |
| 07:16:48 | → | Nahra joins (~user@static.161.95.99.88.clients.your-server.de) |
| 07:58:45 | <Solid> | mh... if we had a version of catchX that didn't log to stderr we could derive Alternative for X and use guards to check conditions |
| 08:11:26 | → | berberman_ joins (~berberman@user/berberman) |
| 08:12:54 | × | berberman quits (~berberman@user/berberman) (Ping timeout: 264 seconds) |
| 08:18:28 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 08:22:12 | × | allbery_b quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 258 seconds) |
| 09:06:41 | → | qbt joins (~edun@user/edun) |
| 09:17:11 | → | cosmos1 joins (~CosmosAtl@180.111.62.57) |
| 09:28:08 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 258 seconds) |
| 10:14:36 | × | cosmos1 quits (~CosmosAtl@180.111.62.57) (Quit: WeeChat 3.2) |
| 10:20:22 | → | backleet joins (~backleet@user/backleet) |
| 10:25:38 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 258 seconds) |
| 10:25:49 | → | kajzer joins (~themainma@user/themainman) |
| 10:46:59 | → | backleet joins (~backleet@user/backleet) |
| 10:53:14 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 258 seconds) |
| 11:45:40 | → | backleet joins (~backleet@user/backleet) |
| 12:08:22 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 258 seconds) |
| 12:09:19 | → | backleet joins (~backleet@user/backleet) |
| 12:31:12 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 252 seconds) |
| 12:31:34 | → | backleet joins (~backleet@user/backleet) |
| 12:37:53 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 258 seconds) |
| 12:40:00 | → | backleet joins (~backleet@user/backleet) |
| 13:18:52 | × | backleet quits (~backleet@user/backleet) (Ping timeout: 252 seconds) |
| 13:31:46 | <dminuoso> | freerdp crashes when opening .rdp files with the following error: https://gist.github.com/dminuoso/855e233956248052108e8e2ce30719be |
| 13:31:56 | <dminuoso> | How can I figure out what freerdp is trying to do? |
| 14:01:16 | <liskin> | dminuoso: maybe ltrace can be asked to print the source location of the library calls |
| 14:02:01 | <liskin> | If not then I guess you can set a breakpoint to the Xlib error handler in gdb and then print the backtrace |
| 14:33:11 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 14:35:27 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 14:40:10 | × | cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.1) |
| 14:52:02 | <sfrique[m]> | Does anybody have a problem with wine on xmonad? for floating. when i try to move some windows to another screen there is a lot of glitches |
| 14:52:36 | <sfrique[m]> | sometimes it cuts the windows size, sometimes the windows kind of "gravitates" to a corner and stick there |
| 15:53:03 | → | seschwar joins (~seschwar@user/seschwar) |
| 16:05:35 | × | thunderrd quits (~thunderrd@183.182.114.206) (Read error: Connection reset by peer) |
| 16:07:26 | → | thunderrd joins (~thunderrd@183.182.114.206) |
| 18:39:09 | × | thunderrd quits (~thunderrd@183.182.114.206) (Ping timeout: 265 seconds) |
| 19:27:07 | × | qbt quits (~edun@user/edun) (Ping timeout: 268 seconds) |
| 19:47:37 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 19:49:43 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 20:06:02 | → | Kobold joins (~koboldchi@12.18.150.83) |
| 20:13:34 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 20:14:27 | <mc47> | liskin I'd be happy to help with some of the tedious paperwor if it comes to that |
| 20:15:28 | <mc47> | it would be cool to have a financial incentive for (some of) the maintainers, as like you said, the project needs maintenance |
| 20:16:35 | <mc47> | (I just managed to read the logs, I haven't been spending much time in front of the screen) |
| 20:27:13 | → | themc47 joins (~mc47@xmonad/TheMC47) |
| 20:27:54 | <dminuoso> | liskin: Mmm I give up. |
| 20:27:59 | <dminuoso> | RDP is awful. :( |
| 20:28:52 | <dminuoso> | freerdp misbehaves in strange ways. it holds permanent keyboard grabs.. |
| 20:29:19 | <dminuoso> | Which is *not* a fun thing in an environment when you dont have window decorations to kill a window |
| 20:29:50 | × | mc47 quits (~mc47@xmonad/TheMC47) (Ping timeout: 265 seconds) |
| 20:32:39 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 20:33:44 | <sfrique[m]> | dminuoso: have you tried `-grab-keyboard off` ? |
| 20:34:06 | × | themc47 quits (~mc47@xmonad/TheMC47) (Ping timeout: 252 seconds) |
| 20:41:22 | <dminuoso> | sfrique[m]: ah mmm, I did not notice |
| 20:42:00 | × | Kobold quits (~koboldchi@12.18.150.83) (Quit: Leaving) |
| 21:05:55 | <liskin> | dminuoso: might be a good idea to have one of the layout with decorations then :-) |
| 21:06:23 | <dminuoso> | Mmm, cant quite make it out where it goes haywire, it seems that x fails at XSync |
| 21:06:46 | <dminuoso> | Is it correct that x property changes get queued up and flushed on XSync? |
| 21:09:44 | <liskin> | mc47: actually I don't think there will be too much paperwork (that's the whole point of having a fiscal sponsor as opposed to having our own legal entity), but there may be some stuff that can only be done by people who can in some way prove their affiliation to the project (like admins of github org, but maybe possibly some copyrights, I don't know), and there also may be some stuff that can only |
| 21:09:47 | <liskin> | be done by US citizens (like setting up github sponsors for the org) |
| 21:10:47 | × | mc47 quits (~mc47@xmonad/TheMC47) (Ping timeout: 258 seconds) |
| 21:12:08 | <liskin> | it's quite likely it can all be done in a day if we have all that's needed, it's just that I have no idea what is needed :-) |
| 21:12:09 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 21:12:45 | <liskin> | once we agree that we want to try it we can just do it and see :-) |
| 21:13:21 | <liskin> | dminuoso: I have no idea about xsync and prop changes; last time I needed to know something like this I just googled and maybe looked it up in xlib sources |
| 21:15:04 | <geekosaur> | most things queue up for XSync calls, I think |
| 21:16:48 | <dminuoso> | Well I have pinpointed it down |
| 21:17:21 | <dminuoso> | XChangeProperty(xfc->display, appWindow->handle, xfc->_NET_WM_WINDOW_TYPE, XA_ATOM, 32, PropModeReplace, (BYTE*)&window_type, 1); |
| 21:17:39 | × | seschwar quits (~seschwar@user/seschwar) (Quit: :wq) |
| 21:18:15 | <dminuoso> | https://github.com/FreeRDP/FreeRDP/blob/master/client/X11/xf_window.c#L658-L661 |
| 21:18:23 | <dminuoso> | With this atom mmm |
| 21:20:06 | × | mc47 quits (~mc47@xmonad/TheMC47) (Ping timeout: 265 seconds) |
| 21:22:17 | <liskin> | "Atom id in failed request: 0x0" - do we trust this or not? |
| 21:23:26 | <dminuoso> | oh heh |
| 21:24:03 | <dminuoso> | liskin: I wouldnt |
| 21:24:17 | <dminuoso> | Im `p`ing in gdb, and Im seeing different values here |
| 21:24:28 | <dminuoso> | Although huh |
| 21:24:30 | <dminuoso> | What the heck |
| 21:24:35 | <dminuoso> | (gdb) p window_type |
| 21:24:37 | <dminuoso> | $4 = 0 |
| 21:27:05 | <liskin> | that's weird, all the if branches set a value |
| 21:27:19 | <liskin> | perhaps xfc is uninitialized? |
| 21:27:35 | <liskin> | (I'm assuming XInternAtom can't really return a zero normally, can it?) |
| 21:27:58 | <dminuoso> | nah, if xfc was uninitialized everything would be crashing left and right |
| 21:37:26 | <liskin> | yeah, so what do you get if you p all the xfc->_NET_WM_WINDOW_TYPE_DROPDOWN_MENU, xfc->_NET_WM_WINDOW_TYPE_NORMAL, xfc->_NET_WM_WINDOW_TYPE_DIALOG ? |
| 21:37:38 | <dminuoso> | liskin: Ah I just suck at nix it seems |
| 21:37:57 | <liskin> | :-D |
| 21:38:14 | <dminuoso> | nix-shell -p '(pkgs.enableDebugging pkgs.freerdp)' |
| 21:38:18 | <dminuoso> | Does not do what I think it does |
| 21:38:24 | <dminuoso> | Bleerg |
| 21:39:05 | liskin | still knows nothing about nix and after this zurihac, I have even less motivation to learn anything about it then before :-) |
| 21:39:40 | <dminuoso> | heh, I learned much new stuff today about nixos modules |
| 21:39:58 | <dminuoso> | its a bit disgusting that you kind of have to understand all the internals in order to not be surprised left and right |
| 21:40:34 | <liskin> | that's probably true of xmonad too :-) |
| 21:40:57 | <geekosaur> | true, but a lot less to be understood than of nix |
| 21:40:57 | <dminuoso> | window_type |
| 21:41:01 | <dminuoso> | $1 = 393 |
| 21:41:40 | <dminuoso> | geekosaur: with xmonad you can just use whatever is in contrib and never worry about all the X quirks |
| 21:41:51 | <dminuoso> | You'll probably survive, until you want to use freerdp.. |
| 21:41:53 | <dminuoso> | :-P |
| 21:41:57 | <liskin> | okay fair enough |
| 21:42:25 | <liskin> | anyway, window_type=393, but you sure that's the one it crashes with? |
| 21:43:52 | <dminuoso> | Im not sure of anything, this is still an optimized build.. |
| 21:46:08 | <liskin> | oh |
| 21:46:39 | <geekosaur> | "If only_if_exists is False, the atom is created if it does not exist. Therefore, XInternAtom() can return None." |
| 21:47:10 | <liskin> | back when I used to do these things, reading the asm was a good way to tell what the real value might be |
| 21:47:22 | <liskin> | but gdb would usually tell you if it wasn't sure |
| 21:47:51 | <liskin> | https://github.com/FreeRDP/FreeRDP/blob/670cf8512ba751054b0e09d5c41e890953fbbb62/client/X11/xf_client.c#L1915 |
| 21:48:08 | <liskin> | only_if_exists seems to be FALSE, so it should be fine |
| 21:53:46 | <liskin> | heading to bed, good look with the rest of the debugging, good night :-) |
| 21:54:24 | <dminuoso> | liskin: thanks! |
| 21:54:31 | <dminuoso> | Found it |
| 21:54:33 | <dminuoso> | It was something else |
| 21:54:41 | <dminuoso> | xf_SetWindowUnlisted(xfc, appWindow->handle); |
| 21:55:00 | <dminuoso> | If I XSync right before it, everything is fine, XSync after and I get the BadAtom error |
| 21:55:12 | <dminuoso> | Oh |
| 21:57:40 | <dminuoso> | That function is optimized away :( |
| 21:59:29 | <dminuoso> | geekosaur: Thank you too. |
| 21:59:32 | <dminuoso> | I think I figured it out |
| 22:35:20 | <dminuoso> | If I read this right, this is a weird memory bug. Should _NET_WM_STATE ever be XA_ATOM? |
| 22:36:21 | <dminuoso> | https://specifications.freedesktop.org/wm-spec/wm-spec-1.3.html |
| 22:36:28 | <dminuoso> | This suggests it should be an atom list |
| 22:44:25 | <geekosaur> | there's no difference between a singular value and a list of length 1 |
| 22:45:54 | <geekosaur> | https://tronche.com/gui/x/xlib/window-information/obtain-properties.html |
| 22:46:11 | <dminuoso> | geekosaur: https://github.com/FreeRDP/FreeRDP/blob/670cf8512ba751054b0e09d5c41e890953fbbb62/client/X11/xf_window.c#L430-L431 |
| 22:47:22 | <dminuoso> | Shouldn't that be a None terminated list? |
| 22:47:42 | × | kajzer quits (~themainma@user/themainman) (Quit: WeeChat 3.1) |
| 22:48:09 | <geekosaur> | no, there's a length parameter instead |
| 22:48:44 | <geekosaur> | it's the 2 following the pointer to the values |
| 22:49:38 | <dminuoso> | Then its completely beyond me. It's specifically that call that generates the BadAtom. |
| 22:49:48 | <dminuoso> | I managed to narrow it down in an unoptimized build properly |
| 22:54:23 | <geekosaur> | you can see from all the non-array ones that just use a pointer to the value and a length of 1, things would have exploded well before then if it weren't length delimited |
| 22:54:50 | <geekosaur> | so I'd check what the atoms are there if possible |
| 22:57:41 | <geekosaur> | in particular I could see both those atoms not existing if you aren't running a taskbar or pager, so the app would have to create them (!only_if_exists, but I think liskin verified that?) |
| 22:57:41 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 22:59:58 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 23:01:30 | <geekosaur> | yeh, they're all False (except the one that's FALSE but it's not one of these) |
| 23:01:39 | <dminuoso> | Ive double checked, they all exist |
| 23:04:17 | <geekosaur> | aha |
| 23:05:24 | <geekosaur> | they all exist but _NET_WM_STATE is wrapped by get_supported_atom() which checks if it's in _NET_SUPPORTED and returns None if not, and I am pretty sure we don't advertise that one because xmonad itself doesn't care |
| 23:07:50 | <geekosaur> | confirmed on my own desktop, we don't advertise _NET_WM_STATE |
| 23:07:52 | <dminuoso> | (gdb) p xfc->_NET_WM_STATE |
| 23:07:54 | <dminuoso> | $13 = 0 |
| 23:07:56 | <dminuoso> | Ahhh |
| 23:08:13 | <dminuoso> | Does xmonad have some hook to advertise this? |
| 23:08:37 | <geekosaur> | I'm not sure where we currently are on that, there's some stuff in flight for extensible EWMH hooks |
| 23:08:43 | <dminuoso> | https://hackage.haskell.org/package/xmonad-contrib-0.16/docs/src/XMonad.Hooks.EwmhDesktops.html#setSupported |
| 23:08:45 | <dminuoso> | Indeed |
| 23:08:49 | <geekosaur> | which the current iteration of fullscreen windows should use |
| 23:09:06 | <dminuoso> | Perhaps _NET_WM_STATE even belongs in there |
| 23:09:46 | <dminuoso> | Though its still a freerdp bug that it checks for supported, and completely ignores the response it gets.. |
| 23:34:11 | → | henninb joins (~henninb@63.226.174.157) |
| 23:36:58 | <henninb> | Greetings - with regards to minimizing a window is this how? sendMessage RestoreNextMinimizedWin |
| 23:37:46 | <henninb> | when I include XMonad.Layout.Minimize, i get an error of Data constructor not in scope |
All times are in UTC on 2021-06-22.