2021/06/23

2021-06-23 00:35:20 +0200 <dminuoso> If I read this right, this is a weird memory bug. Should _NET_WM_STATE ever be XA_ATOM?
2021-06-23 00:36:21 +0200 <dminuoso> https://specifications.freedesktop.org/wm-spec/wm-spec-1.3.html
2021-06-23 00:36:28 +0200 <dminuoso> This suggests it should be an atom list
2021-06-23 00:44:25 +0200 <geekosaur> there's no difference between a singular value and a list of length 1
2021-06-23 00:45:54 +0200 <geekosaur> https://tronche.com/gui/x/xlib/window-information/obtain-properties.html
2021-06-23 00:46:11 +0200 <dminuoso> geekosaur: https://github.com/FreeRDP/FreeRDP/blob/670cf8512ba751054b0e09d5c41e890953fbbb62/client/X11/xf_win…
2021-06-23 00:47:22 +0200 <dminuoso> Shouldn't that be a None terminated list?
2021-06-23 00:47:42 +0200kajzer(~themainma@user/themainman) (Quit: WeeChat 3.1)
2021-06-23 00:48:09 +0200 <geekosaur> no, there's a length parameter instead
2021-06-23 00:48:44 +0200 <geekosaur> it's the 2 following the pointer to the values
2021-06-23 00:49:38 +0200 <dminuoso> Then its completely beyond me. It's specifically that call that generates the BadAtom.
2021-06-23 00:49:48 +0200 <dminuoso> I managed to narrow it down in an unoptimized build properly
2021-06-23 00:54:23 +0200 <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
2021-06-23 00:54:50 +0200 <geekosaur> so I'd check what the atoms are there if possible
2021-06-23 00:57:41 +0200 <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?)
2021-06-23 00:57:41 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2021-06-23 00:59:58 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-06-23 01:01:30 +0200 <geekosaur> yeh, they're all False (except the one that's FALSE but it's not one of these)
2021-06-23 01:01:39 +0200 <dminuoso> Ive double checked, they all exist
2021-06-23 01:04:17 +0200 <geekosaur> aha
2021-06-23 01:05:24 +0200 <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
2021-06-23 01:07:50 +0200 <geekosaur> confirmed on my own desktop, we don't advertise _NET_WM_STATE
2021-06-23 01:07:52 +0200 <dminuoso> (gdb) p xfc->_NET_WM_STATE
2021-06-23 01:07:54 +0200 <dminuoso> $13 = 0
2021-06-23 01:07:56 +0200 <dminuoso> Ahhh
2021-06-23 01:08:13 +0200 <dminuoso> Does xmonad have some hook to advertise this?
2021-06-23 01:08:37 +0200 <geekosaur> I'm not sure where we currently are on that, there's some stuff in flight for extensible EWMH hooks
2021-06-23 01:08:43 +0200 <dminuoso> https://hackage.haskell.org/package/xmonad-contrib-0.16/docs/src/XMonad.Hooks.EwmhDesktops.html#se…
2021-06-23 01:08:45 +0200 <dminuoso> Indeed
2021-06-23 01:08:49 +0200 <geekosaur> which the current iteration of fullscreen windows should use
2021-06-23 01:09:06 +0200 <dminuoso> Perhaps _NET_WM_STATE even belongs in there
2021-06-23 01:09:46 +0200 <dminuoso> Though its still a freerdp bug that it checks for supported, and completely ignores the response it gets..
2021-06-23 01:34:11 +0200henninb(~henninb@63.226.174.157)
2021-06-23 01:36:58 +0200 <henninb> Greetings - with regards to minimizing a window is this how? sendMessage RestoreNextMinimizedWin
2021-06-23 01:37:46 +0200 <henninb> when I include XMonad.Layout.Minimize, i get an error of Data constructor not in scope
2021-06-23 02:04:37 +0200 <geekosaur> You send a Minimize message to minimize a window. But see XMonad.Actions.Minimize for more
2021-06-23 02:09:29 +0200 <henninb> the challenge i am having is compilation, geekosaur. i get an error of Data constructor not in scope
2021-06-23 02:09:41 +0200 <geekosaur> I don't see RestoreNextMinimizeWin anywhere in the repo, where did you get it?
2021-06-23 02:10:03 +0200 <henninb> i see people using it in github
2021-06-23 02:10:26 +0200 <geekosaur> nor do I see anything like it except some similar in concept functions in X.A.Minimize
2021-06-23 02:10:36 +0200 <geekosaur> can you provide an example?
2021-06-23 02:10:43 +0200 <henninb> https://github.com/Deepakkoli93/dotfiles-1/blob/cc89434a5f20255d0217918c8fe30c34efa96284/.xmonad/x…
2021-06-23 02:11:24 +0200 <henninb> maybe this code is depricated.
2021-06-23 02:12:20 +0200 <henninb> maybe a better question is how can I maximize a window that is minimized?
2021-06-23 02:14:33 +0200 <geekosaur> which is answered in the current version
2021-06-23 02:15:02 +0200 <henninb> i will take a look
2021-06-23 02:15:07 +0200 <geekosaur> RestoreNextMinimizedWin went away some 5 years ago, the replacement is: withLastMinimized maximizeWindow
2021-06-23 02:15:15 +0200 <geekosaur> which is from XMonad.Actions.Minimize
2021-06-23 02:15:36 +0200 <henninb> ok, sorry for the dumb question. thanks for pointing that out.
2021-06-23 02:16:18 +0200 <geekosaur> I had to dig for it myself using git blame
2021-06-23 02:16:43 +0200 <henninb> :)
2021-06-23 02:16:45 +0200 <geekosaur> luckily I'm kinda used to xmonad archeology >.>
2021-06-23 02:17:29 +0200 <henninb> i am loving xmonad. it has helped me slowly learn haskell.
2021-06-23 02:26:03 +0200 <henninb> thank you geekosaur, have a good day.
2021-06-23 02:31:06 +0200henninb(~henninb@63.226.174.157) (Remote host closed the connection)
2021-06-23 04:04:28 +0200banc(banc@gateway/vpn/airvpn/banc) (Ping timeout: 252 seconds)
2021-06-23 04:23:24 +0200banc(banc@gateway/vpn/airvpn/banc)
2021-06-23 04:55:48 +0200td_(~td@94.134.91.59) (Ping timeout: 252 seconds)
2021-06-23 04:57:42 +0200td_(~td@muedsl-82-207-238-055.citykom.de)
2021-06-23 05:59:49 +0200thunderrd(~thunderrd@183.182.114.206)
2021-06-23 07:43:43 +0200backleet(~backleet@user/backleet)
2021-06-23 07:53:16 +0200backleet(~backleet@user/backleet) (Ping timeout: 252 seconds)
2021-06-23 07:56:32 +0200backleet(~backleet@user/backleet)
2021-06-23 08:31:51 +0200 <dminuoso> geekosaur: Alright I fell asleep yesterday. Thank you for your guidance, it was indeed the missing _NET_WT_STATE capability. Doing this made freerdp work.. somewhat.
2021-06-23 08:31:58 +0200 <dminuoso> Only to error randomly on other X interactions
2021-06-23 08:32:16 +0200 <Solid> uff
2021-06-23 08:32:52 +0200 <dminuoso> Xmonad and nix have one thing in common: They highlight poorly written non-portable software that blindly assume "things to be just some way"
2021-06-23 08:36:15 +0200 <Solid> ...and then they ask people to do things in _their_ non-portable way :P
2021-06-23 08:36:47 +0200berberman(~berberman@user/berberman)
2021-06-23 08:37:01 +0200 <dminuoso> Dunno, with the software that I write and interact with, writing nix derivations was mostly completely effort less and 0-work
2021-06-23 08:37:41 +0200 <dminuoso> For my software its as simple as (callCabal2Nix "freyja-server" ./freyja-server {}) and my package magically builds with nix as well as with cabal..
2021-06-23 08:38:06 +0200berberman_(~berberman@user/berberman) (Ping timeout: 264 seconds)
2021-06-23 08:38:24 +0200 <Solid> I was reminded of nix's resistance to provide a proper /bin/bash, which breaks lots of scripts (I guess bash is not portable to begin with, but still)
2021-06-23 08:38:56 +0200 <dminuoso> Yeah, the state with scripts is a bit sorrow
2021-06-23 08:39:08 +0200 <dminuoso> But I cant say too much about it because I haven't actually dived in
2021-06-23 08:39:39 +0200 <dminuoso> /usr/bin/env bash
2021-06-23 08:39:43 +0200 <dminuoso> This works mostly though
2021-06-23 08:39:56 +0200 <Solid> yeah, but the problem with that is that the path of env is not specified by POSIX
2021-06-23 08:40:04 +0200 <Solid> so this is really trading one non-portable solution for another
2021-06-23 08:40:13 +0200 <dminuoso> To be fair, what nix really does is actually POSIX compliant
2021-06-23 08:40:41 +0200 <dminuoso> Which says something along the lines of that "on installation you should set program paths to be suitable for your system"
2021-06-23 08:40:57 +0200 <dminuoso> The whole notion of fixed shebangs already breaks this idea
2021-06-23 08:41:05 +0200 <Solid> that is true
2021-06-23 08:41:24 +0200 <Solid> well, one could always shout at people not writing /bin/sh scripts :>
2021-06-23 08:47:42 +0200 <dminuoso> https://pubs.opengroup.org/onlinepubs/9699919799/utilities/sh.html#tag_20_117_16
2021-06-23 08:47:46 +0200 <dminuoso> `Furthermore, on systems that support executable scripts (the "#!" construct), it is recommended that applications using executable scripts install them using getconf PATH to determine the shell pathname and update the "#!" script appropriately as it is being installed (for example, with sed). For example:`
2021-06-23 08:48:20 +0200 <dminuoso> NExt up
2021-06-23 08:48:22 +0200 <dminuoso> Applications should note that the standard PATH to the shell cannot be assumed to be either /bin/sh or /usr/bin/sh, and should be determined by interrogation of the PATH returned by getconf PATH, ensuring that the returned pathname is an absolute pathname and not a shell built-in.
2021-06-23 08:48:30 +0200 <dminuoso> Solid: So even /bin/sh is a problematic assumption
2021-06-23 08:48:32 +0200backleet(~backleet@user/backleet) (Ping timeout: 268 seconds)
2021-06-23 08:49:05 +0200 <dminuoso> In reality even nix admits /bin/sh for convenience
2021-06-23 08:50:14 +0200 <dminuoso> λ ~/ command -v sh ~
2021-06-23 08:50:16 +0200 <dminuoso> /run/current-system/sw/bin/sh
2021-06-23 08:50:20 +0200 <dminuoso> Guess that works
2021-06-23 08:51:18 +0200 <Solid> oh wow, that actually surprises me
2021-06-23 08:52:52 +0200 <dminuoso> From experience, nowadays few developers even know what POSIX means or ever bothered to look up any of its specifications.
2021-06-23 08:53:28 +0200 <dminuoso> Hell, I know I rarely do
2021-06-23 08:54:37 +0200 <dminuoso> Presumably its the same thing with people writing windowed applications, dont think most look up the (extremely scarce) documentation or even know what ICCCM or EWMH even is
2021-06-23 08:55:09 +0200 <dminuoso> From all my experience, you have to be a geekosaur to know what you're doing with X.
2021-06-23 08:56:37 +0200 <Solid> yes, that has been my impression as well
2021-06-23 08:56:56 +0200 <Solid> I wonder if it'll be better for wayland
2021-06-23 09:02:50 +0200dminuosoadmits he has absolutely no clue how wayland works differently, or where things are specified
2021-06-23 09:03:10 +0200 <dminuoso> All I know is that, as an xmonad user, I likely wont even try wayland any time soon
2021-06-23 09:03:28 +0200 <dminuoso> waymonad seems to have stalled pretty much
2021-06-23 09:10:32 +0200 <liskin> Some folks were trying to revive it during ZuriHac. As far as I know they're still to this day trying to get it to build.
2021-06-23 09:11:56 +0200 <Solid> yeah I'd imagine the haskell bindings for wlroots need some work for that
2021-06-23 09:12:10 +0200 <Solid> although I remember the maintainer of taffybar saying he managed to build it
2021-06-23 09:12:20 +0200 <Solid> s/he/they/
2021-06-23 09:12:39 +0200 <liskin> But I think everything will just be worse anyway. X started in an era where having standards was considered a good thing. Wayland comes from an era where standardization is seen as an avoidable overhead.
2021-06-23 09:13:16 +0200 <liskin> Yeah Ivan has a couple commits in waymonad.
2021-06-23 09:15:04 +0200 <Solid> oh apparently there is an active fork now
2021-06-23 09:15:06 +0200 <Solid> https://github.com/L-as/waymonad
2021-06-23 09:15:23 +0200 <liskin> Yeah that's the ZuriHac folks
2021-06-23 09:15:26 +0200 <Solid> and it seems to build with nix at least
2021-06-23 09:27:28 +0200Orbstheorem(~orbstheor@2001:470:69fc:105::a56) ()
2021-06-23 10:17:32 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-06-23 10:17:32 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2021-06-23 10:18:27 +0200cosmos1(~CosmosAtl@180.111.62.57)
2021-06-23 10:35:29 +0200cosmos1(~CosmosAtl@180.111.62.57) (Quit: WeeChat 3.2)
2021-06-23 11:17:47 +0200cfricke(~cfricke@user/cfricke)
2021-06-23 11:56:22 +0200mc47(~mc47@xmonad/TheMC47)
2021-06-23 12:04:28 +0200qbt(~edun@user/edun)
2021-06-23 12:29:52 +0200qbt(~edun@user/edun) (Ping timeout: 265 seconds)
2021-06-23 14:03:46 +0200backleet(~backleet@user/backleet)
2021-06-23 14:27:20 +0200backleet(~backleet@user/backleet) (Ping timeout: 258 seconds)
2021-06-23 14:40:03 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-06-23 14:40:22 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 265 seconds)
2021-06-23 14:49:30 +0200cfricke(~cfricke@user/cfricke)
2021-06-23 14:54:56 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 258 seconds)
2021-06-23 15:07:26 +0200seschwar(~seschwar@user/seschwar)
2021-06-23 15:13:00 +0200Magician(deepy@user/deepy)
2021-06-23 15:14:47 +0200deepy(deepy@user/deepy) (Ping timeout: 244 seconds)
2021-06-23 15:15:02 +0200Nahra`(~user@static.161.95.99.88.clients.your-server.de)
2021-06-23 15:15:06 +0200Nahra(~user@static.161.95.99.88.clients.your-server.de) (Ping timeout: 252 seconds)
2021-06-23 15:24:19 +0200cfricke(~cfricke@user/cfricke)
2021-06-23 15:27:13 +0200allbery_bgeekosaur
2021-06-23 15:30:02 +0200backleet(~backleet@user/backleet)
2021-06-23 15:50:38 +0200kajzer(~themainma@user/themainman)
2021-06-23 15:51:18 +0200kajzer(~themainma@user/themainman) (Client Quit)
2021-06-23 15:51:34 +0200kajzer(~themainma@user/themainman)
2021-06-23 15:51:40 +0200kajzer(~themainma@user/themainman) ()
2021-06-23 16:30:00 +0200backleet(~backleet@user/backleet) (Ping timeout: 258 seconds)
2021-06-23 17:13:03 +0200tv(~tv@user/tv) (Ping timeout: 268 seconds)
2021-06-23 17:13:51 +0200tv(~tv@user/tv)
2021-06-23 17:36:19 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.1)
2021-06-23 18:42:10 +0200backleet(~backleet@user/backleet)
2021-06-23 19:03:10 +0200mc47(~mc47@xmonad/TheMC47)
2021-06-23 19:21:40 +0200backleet(~backleet@user/backleet) (Ping timeout: 250 seconds)
2021-06-23 19:22:40 +0200backleet(~backleet@user/backleet)
2021-06-23 19:29:01 +0200backleet(~backleet@user/backleet) (Ping timeout: 258 seconds)
2021-06-23 20:53:35 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2021-06-23 20:53:35 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-06-23 21:01:44 +0200allbery_bgeekosaur
2021-06-23 21:30:37 +0200Guest69(~Guest69@124.40.244.150)
2021-06-23 21:36:16 +0200Guest69(~Guest69@124.40.244.150) (Ping timeout: 246 seconds)
2021-06-23 21:37:02 +0200Guest69(~Guest69@124.40.244.150)
2021-06-23 21:39:55 +0200Guest69(~Guest69@124.40.244.150) (Client Quit)
2021-06-23 22:01:24 +0200backleet(~backleet@user/backleet)
2021-06-23 22:13:51 +0200backleet(~backleet@user/backleet) (Ping timeout: 258 seconds)
2021-06-23 22:15:43 +0200backleet(~backleet@user/backleet)
2021-06-23 22:24:29 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-06-23 22:24:53 +0200mc47(~mc47@xmonad/TheMC47)
2021-06-23 22:25:50 +0200mc47(~mc47@xmonad/TheMC47) (Client Quit)
2021-06-23 22:30:42 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-06-23 22:30:42 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2021-06-23 22:30:51 +0200allbery_bgeekosaur
2021-06-23 22:35:48 +0200 <dminuoso> liskin: by the way, with the help of geekosaur we figured it out.
2021-06-23 22:36:36 +0200 <dminuoso> ewmh in xmonad-contrib does not advertise _NET_WM_STATE, and freerdp is written buggily - it does first check whether its supported, and then completely disregards this information and assumes it is..
2021-06-23 22:36:55 +0200 <dminuoso> Turns out, after fixing that, there's a bunch of other X errors freerdp provokes irregularly during usage..
2021-06-23 22:38:07 +0200 <dminuoso> not sure whether there's any xmonad compatible rdp software Id be willing to install on my laptop
2021-06-23 22:51:25 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Ping timeout: 246 seconds)
2021-06-23 22:53:31 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2021-06-23 23:01:22 +0200 <liskin> dminuoso: yeah I saw that; ewmhFullscreen probably fixes that but a patch to freerdp should be posted
2021-06-23 23:01:29 +0200 <dminuoso> It does not
2021-06-23 23:01:46 +0200 <liskin> I used to use rdesktop in the past, it worked
2021-06-23 23:01:56 +0200 <dminuoso> Hold on, whats ewmhFullscreen
2021-06-23 23:02:01 +0200 <liskin> As a client, that is
2021-06-23 23:02:04 +0200 <dminuoso> Did you mean fullscreenEventHook?
2021-06-23 23:02:16 +0200 <liskin> No, I mean ewmhFullscreen
2021-06-23 23:02:24 +0200 <dminuoso> Mmm, is that new?
2021-06-23 23:02:31 +0200 <dminuoso> hoogle doenst find it
2021-06-23 23:02:49 +0200 <liskin> Not in a release, but not really new either
2021-06-23 23:03:20 +0200 <dminuoso> Ah yes, looking at it it should be sufficient
2021-06-23 23:03:21 +0200 <liskin> First posted it in like 2016 and merged last year or something
2021-06-23 23:03:24 +0200 <dminuoso> I have the equivalent already activated now
2021-06-23 23:03:49 +0200 <dminuoso> Perhaps I should try updating xmonad-contrib and use ewmhFullscreen and see whether that improves anythign
2021-06-23 23:05:18 +0200 <liskin> We should really start doing more frequent releases, but I need to fix that ewmh activation stuff :-/
2021-06-23 23:05:29 +0200 <liskin> And I'll be out till mid July
2021-06-23 23:05:50 +0200 <liskin> Anyway, afk
2021-06-23 23:09:49 +0200backleet(~backleet@user/backleet) (Ping timeout: 258 seconds)
2021-06-23 23:11:39 +0200backleet(~backleet@user/backleet)
2021-06-23 23:16:31 +0200Guest19(~Guest19@pool-96-252-123-136.bstnma.fios.verizon.net)
2021-06-23 23:17:10 +0200 <Guest19> Can xmonad function well as a stacking window manager?
2021-06-23 23:23:05 +0200Guest19(~Guest19@pool-96-252-123-136.bstnma.fios.verizon.net) (Quit: Client closed)
2021-06-23 23:26:58 +0200 <dminuoso> Sure
2021-06-23 23:27:10 +0200 <dminuoso> There's XMonad.Layout.StackTile for instance
2021-06-23 23:27:15 +0200 <geekosaur> they left already
2021-06-23 23:27:21 +0200 <geekosaur> there's also X.L.Dishes
2021-06-23 23:27:27 +0200 <dminuoso> Mmm, my weechat didn't show
2021-06-23 23:28:00 +0200geekosaurgot sucked into a rabbit hole >.>
2021-06-23 23:28:07 +0200 <geekosaur> we have too many layouts
2021-06-23 23:44:30 +0200seschwar(~seschwar@user/seschwar) (Quit: :wq)
2021-06-23 23:48:49 +0200backleet(~backleet@user/backleet) (Ping timeout: 246 seconds)
2021-06-23 23:50:57 +0200backleet(~backleet@user/backleet)