2021/02/03

2021-02-03 00:08:43 +0100thoros(~thoros@194-96-55-156.hdsl.highway.telekom.at) (Ping timeout: 272 seconds)
2021-02-03 00:53:55 +0100Liskni_si(~liskin@ackle.nomi.cz) (Remote host closed the connection)
2021-02-03 00:54:14 +0100Liskni_si(~liskin@ackle.nomi.cz)
2021-02-03 01:14:00 +0100notis(~notis@185.51.134.230) (Read error: Connection reset by peer)
2021-02-03 01:17:07 +0100 <ectospasm> I'm having trouble defining a function that returns a different string based on the number of screens found by XMonad.Layout.IndependentScreens.countScreens. I think I have an OK function definition, but when I call the function I get the following error: http://io.ix/2Oa9
2021-02-03 01:17:21 +0100 <ectospasm> Here's my current xmonad.hs: http://io.ix/2Oa8
2021-02-03 01:18:29 +0100 <ectospasm> whoops
2021-02-03 01:18:34 +0100 <ectospasm> Those urls are wrong
2021-02-03 01:18:49 +0100 <ectospasm> Here's my error: http://ix.io/2Oa9
2021-02-03 01:19:05 +0100 <ectospasm> Here's my xmonad.hs: http://ix.io/2Oa8
2021-02-03 01:21:41 +0100 <fizzie> Those are the same URLs. But ix.io has been frequently wrong as of late.
2021-02-03 01:22:57 +0100 <fizzie> Oh, I entirely missed you had translated 'io' and 'ix'. Ignore what I said, then.
2021-02-03 01:23:06 +0100 <fizzie> (But it's *also* true that ix.io's been flaky.)
2021-02-03 01:25:11 +0100 <ectospasm> Yeah, XMonad is broken for me right now, because this won't compile. I usually post this stuff to my Git repo, but the URL for that would be longer and harder to type.
2021-02-03 01:25:54 +0100 <fizzie> Anyhow, the error is what it says: `getCenterBar` expects an Int, but IS.countScreens needs to do some actual work to count the screens, so its type is (roughly) `X countScreens`. You're using it correctly in the `toggleHomeScreens` function, because the do notation `sc <- IS.countScreens` will pull the Int out of the monad.
2021-02-03 01:27:29 +0100 <ectospasm> Unfortunately my Haskell skills are always rusty at best (I only use Haskell for XMonad). fizzie: do you have any suggestions on how I can fix it?
2021-02-03 01:28:16 +0100 <ectospasm> Would I set the type definition to be X () -> Int -> String? I'm still unclear on how that works.
2021-02-03 01:29:19 +0100 <fizzie> For the centerBar / bottomBar definitions, you could do something like `centerBar = fmap getCenterBar IS.countScreens` (or equivalent; there's many ways to write that); to complement that, you'd need to change your main function to be something like: do { dzenCenterCommand <- centerBar; dzenCenterBar <- spawnPipe centerCommand; ... }.
2021-02-03 01:29:58 +0100gazler_(~gazler@195.107.2.81.in-addr.arpa)
2021-02-03 01:31:22 +0100 <fizzie> Or `do { dzenCenterBar -> centerBar >>= spawnPipe; ... }` should also work, I guess.
2021-02-03 01:31:33 +0100 <ectospasm> don't I already have `dzenCenterBar <- spawnPipe centerBar`?
2021-02-03 01:31:44 +0100 <fizzie> Yes, but that's not what I wrote.
2021-02-03 01:32:39 +0100 <ectospasm> No, I guess I don't understand what the difference between what I have and what you wrote is.
2021-02-03 01:32:51 +0100gazler(~gazler@195.107.2.81.in-addr.arpa) (Ping timeout: 265 seconds)
2021-02-03 01:33:04 +0100 <fizzie> See, if you do `centerBar = fmap getCenterBar IS.countScreens`, that makes `centerBar` itself an IO-ish computation (its inferred type will be `m String`, where m is any instance of MonadIO, including IO or X), so in your main function you need to sequence two things: first, running `centerBar` to get a String, and then running `spawnPipe` on that string to get a Handle.
2021-02-03 01:33:59 +0100 <fizzie> If you type `dzenCenterBar <- spawnPipe centerBar` in a do block, that's enough to run one thing (the spawnPipe). But it would expect an argument of type `String`, and you'd be giving it an (again, approximately) `IO String`.
2021-02-03 01:34:30 +0100 <ectospasm> Ah, OK. I get confused with all these types flying around.
2021-02-03 01:34:49 +0100 <ectospasm> Let me try that.
2021-02-03 01:34:53 +0100 <fizzie> If you type `dzenCenterCommand <- centerBar; dzenCenterBar <- spawnPipe dzenCenterCommand`, you're explicitly executing those two IO operations one after each other. The first pulls the String out (and calls it `dzenCenterCommand`), the second runs the spawnPipe.
2021-02-03 01:37:10 +0100 <fizzie> And the `dzenCenterBar <- centerBar >>= spawnPipe` is the same except it uses the (>>=) operator, which has the type signature `forall a b . Monad m => m a -> (a -> m b) -> m b`, meaning if you give it (say) an `IO String` as the first argument, and `String -> IO Handle` as the second (such as spawnPipe), it will feed the former to the latter and you'll get an `IO Handle` out.
2021-02-03 01:38:06 +0100 <ectospasm> OK, that compiles!
2021-02-03 01:38:12 +0100 <fizzie> (Also, if you talk to a real Haskell person, I'm sure you'll get much more theoretically elegant way of doing all this.)
2021-02-03 01:39:33 +0100 <ectospasm> Well, I'm back in X, so this will work for now.
2021-02-03 01:40:17 +0100 <ectospasm> And the actual problem I was trying to fix is now fixed. Before, centerBar and bottomBar were mere constant strings, but that broke the placement of my logHook.
2021-02-03 01:40:38 +0100 <fizzie> FWIW, what you could *also* have done is just to make your main function `main = do { nScreens <- IS.countScreens; dzenCenterBar <- spawnPipe (getCenterBar nScreens); .. }`. In other words, you'd just explicitly run countScreens once in main, and then you have a plain old Int that you can pass to your getCenterBar.
2021-02-03 01:40:39 +0100 <ectospasm> At least, it was broken in a single-screen scenario.
2021-02-03 01:42:20 +0100 <ectospasm> That's basically what's happening in my toggleHomeScreens function. I'll see if I can clean it up later, but for now this will work! Thanks, fizzie!
2021-02-03 02:33:31 +0100thc202(~thc202@unaffiliated/thc202) (Ping timeout: 258 seconds)
2021-02-03 03:23:10 +0100wz1000(~wz1000@static.11.113.47.78.clients.your-server.de) (Ping timeout: 272 seconds)
2021-02-03 03:25:03 +0100HashEnchanterTim
2021-02-03 04:22:36 +0100theDon(~td@94.134.91.201) (Ping timeout: 240 seconds)
2021-02-03 04:24:34 +0100theDon(~td@94.134.91.50)
2021-02-03 04:29:12 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-02-03 04:36:33 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-02-03 04:45:43 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving)
2021-02-03 05:28:27 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-03 05:30:52 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net)
2021-02-03 05:32:14 +0100growpotk-(~growpotki@130-45-30-154.dyn.grandenetworks.net)
2021-02-03 05:38:04 +0100EnchanterTimStonedApe
2021-02-03 05:55:51 +0100materiyolo(~materiyol@112.204.170.198)
2021-02-03 06:17:19 +0100growpotk-(~growpotki@130-45-30-154.dyn.grandenetworks.net) (Ping timeout: 272 seconds)
2021-02-03 06:48:16 +0100 <StonedApe> Hello
2021-02-03 06:49:19 +0100 <StonedApe> When I make youtube video fullscreen, the alignment of the butons and seekbar is off. I have to push META+b to turn off panels. And then I can click button and use the seek bar.
2021-02-03 06:50:29 +0100 <StonedApe> If panels are on, and I make youtube fullscreen, and go back to NOT fullscreen, the window is still messed up. I then quickly have to turn off panels with meta+b, then turn it back on with meta+b and then the chromeium browser window adjusts itself
2021-02-03 06:50:40 +0100 <StonedApe> Is there any way to prevent this behavior
2021-02-03 06:51:10 +0100 <StonedApe> https://termbin.com/5dfh here's my xmonad.hs
2021-02-03 06:51:45 +0100 <StonedApe> xmonad $ docks $ ewmh defaultConfig
2021-02-03 06:51:52 +0100 <StonedApe> manageHook = manageDocks <+> myManageHook <+> manageHook defaultConfig
2021-02-03 06:52:04 +0100 <StonedApe> That's how I ahve it.
2021-02-03 06:52:26 +0100 <StonedApe> , ("<F12>", sendMessage ToggleStruts) -- Expand and I use F12 to use toggleStruts
2021-02-03 06:52:46 +0100 <StonedApe> avoidStruts . smartBorders in my layout hook
2021-02-03 06:52:49 +0100 <StonedApe> Any ideas guys?
2021-02-03 07:10:25 +0100palo1(~weechat@c-base/crew/palo)
2021-02-03 07:12:28 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-03 07:13:15 +0100palo(~weechat@c-base/crew/palo) (Ping timeout: 246 seconds)
2021-02-03 07:13:15 +0100palo1palo
2021-02-03 07:44:22 +0100lordie(~lordie@168.194.157.104)
2021-02-03 07:45:55 +0100 <lordie> Ar
2021-02-03 08:01:16 +0100thoros(~thoros@194-96-55-156.hdsl.highway.telekom.at)
2021-02-03 08:08:58 +0100ChubaDuba(~ChubaDuba@37.112.231.139)
2021-02-03 08:16:46 +0100thc202(~thc202@unaffiliated/thc202)
2021-02-03 08:18:11 +0100 <StonedApe> lordie: hello
2021-02-03 08:18:49 +0100 <StonedApe> I used avodistruts because I wanted to hide xmobar when I make the video full screen
2021-02-03 08:19:09 +0100 <StonedApe> if I use avoidstruts, I can hide xmobar with togglestruts
2021-02-03 08:19:35 +0100 <StonedApe> But when I use it, I have to manually do all that I said prev.
2021-02-03 08:20:06 +0100 <StonedApe> I just want to hide all bars/panels when video si full screen
2021-02-03 08:20:30 +0100 <StonedApe> and have it done automatically, without having to do avoidstruts/toggle struts
2021-02-03 08:44:47 +0100xaltsc(~xaltsc@unaffiliated/xaltsc)
2021-02-03 08:57:32 +0100 <Solid> StonedApe: this is because chromium expects xmonad to give it fullscreen on a _NET_WM_STATE_FULLSCREEN but it doesn't (the bar is still visible)
2021-02-03 08:59:02 +0100 <Solid> oh I see you actually just want to hide the bar as well on fullscreen
2021-02-03 08:59:11 +0100 <StonedApe> Correct
2021-02-03 08:59:29 +0100 <Solid> in that case look into https://hackage.haskell.org/package/xmonad-contrib-0.16/docs/XMonad-Hooks-EwmhDesktops.html#v:ewmh
2021-02-03 09:00:11 +0100 <StonedApe> xmonad $ docks $ ewmh defaultConfig
2021-02-03 09:00:13 +0100 <StonedApe> I have this
2021-02-03 09:00:29 +0100 <StonedApe> ewmhDesktopsEventHook
2021-02-03 09:00:31 +0100 <Solid> have you added the `fullscreenEventHook' as well?
2021-02-03 09:00:42 +0100 <StonedApe> I have not
2021-02-03 09:00:50 +0100 <StonedApe> I'm just now learning about it
2021-02-03 09:01:03 +0100 <StonedApe> I'll read through it some more
2021-02-03 09:01:12 +0100 <Solid> this will be a bit nicer with the next release, but for now that's the way to do it
2021-02-03 09:02:59 +0100 <StonedApe> Now I'm going to have trouble with the sytnax, haha
2021-02-03 09:07:07 +0100 <StonedApe> https://termbin.com/70t0 new config, added the fullscree hook
2021-02-03 09:07:22 +0100 <StonedApe> , handleEventHook = focusOnMouseMove <+> fullscreenEventHook
2021-02-03 09:07:37 +0100 <StonedApe> Now I reload/restart/recompile xmoand and double click youtube video
2021-02-03 09:07:50 +0100 <StonedApe> Now the kde panels auto hide, but xmobar still remains
2021-02-03 09:08:00 +0100 <StonedApe> Do I need to turn off the struts module now?
2021-02-03 09:08:17 +0100 <StonedApe> Oh nevermind.
2021-02-03 09:08:23 +0100 <StonedApe> I reloaded the tab and now it's ok
2021-02-03 09:08:30 +0100 <Solid> \o/
2021-02-03 09:08:32 +0100 <StonedApe> Oh brilliant. Thanks!
2021-02-03 09:08:34 +0100 <StonedApe> OMG!
2021-02-03 09:08:47 +0100 <StonedApe> Thanks for doing me a solid, Solid!
2021-02-03 09:08:55 +0100 <StonedApe> Ala Kramer, Sienfeld
2021-02-03 09:08:58 +0100 <Solid> :D
2021-02-03 09:09:02 +0100 <Solid> my pleasure
2021-02-03 09:09:16 +0100 <StonedApe> Hey that 1 month paste I saved, do you have a link for i
2021-02-03 09:09:43 +0100 <StonedApe> remember I made a paste for that guy who was also asking once about kde panels/menu not working anymore in xmonad in latest kde
2021-02-03 09:10:00 +0100 <StonedApe> There was the qt patch thing I posted about in the bot. I wodner if the paste is still active
2021-02-03 09:10:02 +0100 <StonedApe> should refresh it
2021-02-03 09:10:36 +0100 <StonedApe> !help
2021-02-03 09:11:08 +0100 <StonedApe> hello bot
2021-02-03 09:12:35 +0100 <Solid> mh a quick log-grepping doesn't seem to return anything useful
2021-02-03 09:13:43 +0100 <StonedApe> My nickname would hve been Hash
2021-02-03 09:14:59 +0100 <StonedApe> I need to learn how to grep weecha logs in clien.
2021-02-03 09:15:05 +0100 <Solid> oh
2021-02-03 09:15:08 +0100 <Solid> 2021-01-03 09:17:58 Hash ?tell ADG1089__ about https://paste.ee/p/iJiyf xmonad + kde launcher/menu patch fix (LONGER paste duration 1 mo)
2021-02-03 09:15:12 +0100 <Solid> that one probably then
2021-02-03 09:16:00 +0100cfricke(~cfricke@unaffiliated/cfricke)
2021-02-03 09:16:02 +0100 <StonedApe> ?tell ADG1089__ about https://paste.ee/p/iJiyf xmonad + kde launcher/menu patch fix (LONGER paste duration 1 mo)
2021-02-03 09:16:02 +0100 <lambdabot> Consider it noted.
2021-02-03 09:16:05 +0100 <StonedApe> I got it
2021-02-03 09:16:07 +0100 <StonedApe> oh you got it too
2021-02-03 09:16:09 +0100 <StonedApe> ooops
2021-02-03 09:16:31 +0100 <StonedApe> Expires on January 3, 2022 at 08:17 AM (11 months from now) Oh nm. Whew.
2021-02-03 09:22:37 +0100cfricke(~cfricke@unaffiliated/cfricke) (Ping timeout: 260 seconds)
2021-02-03 09:47:44 +0100wz1000(~wz1000@static.11.113.47.78.clients.your-server.de)
2021-02-03 10:32:00 +0100notis(~notis@185.51.134.229)
2021-02-03 10:35:42 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds)
2021-02-03 10:40:59 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-02-03 10:43:24 +0100lordie(~lordie@168.194.157.104) (Remote host closed the connection)
2021-02-03 10:51:18 +0100hexo(~hexo@gateway/tor-sasl/hexo) (Remote host closed the connection)
2021-02-03 10:51:20 +0100cfricke(~cfricke@unaffiliated/cfricke)
2021-02-03 10:51:40 +0100hexo(~hexo@gateway/tor-sasl/hexo)
2021-02-03 11:49:42 +0100materiyolo(~materiyol@112.204.170.198) (Quit: WeeChat 2.9)
2021-02-03 12:32:23 +0100mc47(~yecinem@89.246.239.190)
2021-02-03 12:32:41 +0100mc47(~yecinem@89.246.239.190) (Remote host closed the connection)
2021-02-03 12:33:04 +0100mc47(~yecinem@89.246.239.190)
2021-02-03 12:37:22 +0100meck(~meck@li1809-18.members.linode.com) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-03 13:49:45 +0100mc47(~yecinem@89.246.239.190) (Ping timeout: 240 seconds)
2021-02-03 14:18:58 +0100gazler__(~gazler@2001:8b0:b165:a8d2:d19:fc83:e0fa:4af3)
2021-02-03 14:21:33 +0100gazler_(~gazler@195.107.2.81.in-addr.arpa) (Ping timeout: 264 seconds)
2021-02-03 14:24:32 +0100geekosaur(82650c7c@130.101.12.124)
2021-02-03 14:40:36 +0100Irishluck83(~Irishluck@unaffiliated/irishluck83) (Ping timeout: 240 seconds)
2021-02-03 14:41:46 +0100Irishluck83(~Irishluck@149.28.126.73)
2021-02-03 14:41:46 +0100Irishluck83(~Irishluck@149.28.126.73) (Changing host)
2021-02-03 14:41:46 +0100Irishluck83(~Irishluck@unaffiliated/irishluck83)
2021-02-03 15:07:35 +0100mc47(~yecinem@89.246.239.190)
2021-02-03 15:17:02 +0100geekosaur(82650c7c@130.101.12.124) (Ping timeout: 240 seconds)
2021-02-03 15:27:58 +0100geekosaur(ac3a8ee4@172.58.142.228)
2021-02-03 15:46:56 +0100geekosaur(ac3a8ee4@172.58.142.228) (Quit: Ping timeout (120 seconds))
2021-02-03 16:02:44 +0100seschwar(~seschwar@unaffiliated/seschwar)
2021-02-03 16:26:57 +0100cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 3.0)
2021-02-03 16:48:52 +0100evanjs(~evanjs@075-129-098-007.res.spectrum.com) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-03 16:49:52 +0100evanjs(~evanjs@075-129-098-007.res.spectrum.com)
2021-02-03 16:55:37 +0100 <Solid> https://github.com/xmonad/xmonad/blob/master/src/XMonad/Operations.hs#L169
2021-02-03 16:55:43 +0100 <Solid> would anyone shout at me if I made this a nubOrd?
2021-02-03 16:56:05 +0100 <Solid> It's not like this will ever matter, but it *feels* better to replace n^2 operations wherever we can
2021-02-03 16:56:09 +0100 <dminuoso> what is nubOrd?
2021-02-03 16:56:22 +0100 <dminuoso> Well, we have containers. Just nub through Set?
2021-02-03 16:56:25 +0100 <Solid> yes
2021-02-03 16:56:39 +0100 <Solid> it's in new versions of containers
2021-02-03 16:57:01 +0100 <dminuoso> Oh, there's a dedicated `nub` for it there?
2021-02-03 16:57:03 +0100 <Solid> basically just use the Ord instance of something to filter unique's in (n log n )
2021-02-03 16:57:08 +0100 <dminuoso> https://hackage.haskell.org/package/containers-0.6.4.1/docs/Data-Containers-ListUtils.html
2021-02-03 16:57:11 +0100 <dminuoso> Ahh, I did not know this!
2021-02-03 16:57:21 +0100dminuosoquickly prepares a new commit on his main project...
2021-02-03 16:57:25 +0100 <Solid> :D
2021-02-03 16:57:28 +0100 <dminuoso> Oh good lord
2021-02-03 16:57:31 +0100 <dminuoso> nubOrdOn!
2021-02-03 16:57:48 +0100 <dminuoso> Solid: Free beer guaranteed on the next conference we meet!
2021-02-03 16:58:01 +0100 <Solid> excellent! :)
2021-02-03 16:59:22 +0100 <Solid> I think depending on the internals of HashSet from unordered containers using that *may* be faster in some circumstances, but that's probably negligible (plus, it's be unstable)
2021-02-03 17:05:05 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net)
2021-02-03 17:07:46 +0100 <Liskni_si> Solid: if you've got some free time, you may want to actually benchmark nub vs nubOrd using criterion on varying list (of Window) sizes
2021-02-03 17:08:04 +0100thoros(~thoros@194-96-55-156.hdsl.highway.telekom.at) (Quit: WeeChat 3.0)
2021-02-03 17:08:17 +0100 <Liskni_si> I'm guessing nub will actually be faster up to some two-digit number
2021-02-03 17:08:47 +0100 <Liskni_si> (the only value of this exercise being that you can then make such guesses and feel smart in a conversation)
2021-02-03 17:08:56 +0100 <Solid> :)
2021-02-03 17:09:02 +0100 <Solid> Liskni_si: sounds like a good idea actually
2021-02-03 17:09:03 +0100mc47(~yecinem@89.246.239.190) (Ping timeout: 258 seconds)
2021-02-03 17:10:08 +0100 <Liskni_si> (Google interviewers ask people these kind of questions, and so do interviewers anywhere where databases are involved :-))
2021-02-03 17:11:08 +0100 <Liskni_si> which reminds me, that if we ever get the opportunity to rewrite xmonad (like, say, if Wayland takes off), we should ditch String
2021-02-03 17:11:30 +0100 <Solid> oh definitely
2021-02-03 17:11:35 +0100 <Solid> Text all the way
2021-02-03 17:12:18 +0100 <Liskni_si> right now it's not just slow, but also X11 uses String as if it was a utf-8 byte string, and that's just totally fucked up
2021-02-03 17:12:40 +0100 <Liskni_si> not necessarily utf-8, even
2021-02-03 17:14:43 +0100 <psibi[m]> In my setup, the most CPU intensive part seems to be xmobar. xmonad stays at 0% CPU and memory consumption for majority of the time.
2021-02-03 17:16:08 +0100 <psibi[m]> It would be nice to observe the statistics in a more streamlined way. Does anybody here know an easy way to achieve it ?
2021-02-03 17:17:55 +0100 <Liskni_si> that's actually an interesting observation
2021-02-03 17:18:35 +0100 <Liskni_si> xmonad does a _lot_ of unnecessary work on every refresh (window switch, etc.)
2021-02-03 17:18:52 +0100 <Liskni_si> yet it still consumes less CPU than xmobar, here as well
2021-02-03 17:18:53 +0100cfricke(~cfricke@unaffiliated/cfricke)
2021-02-03 17:19:16 +0100 <Liskni_si> and if I remember correctly, psibi[m] doesn't even have xmobar refreshing once a second like me, right?
2021-02-03 17:19:53 +0100 <psibi[m]> Yeah, I have very less refreshing.
2021-02-03 17:20:10 +0100 <psibi[m]> My guess is the bottleneck is in xft rendering.
2021-02-03 17:20:20 +0100 <psibi[m]> But I don't have sufficient data or benchmark to prove it.
2021-02-03 17:20:21 +0100 <Liskni_si> I don't have xft
2021-02-03 17:20:46 +0100 <psibi[m]> How does your xmobar perf look like ?
2021-02-03 17:21:04 +0100 <psibi[m]> I see frequent CPU and memory jump in my xmobar setup.
2021-02-03 17:21:06 +0100davemq(~davemq@99-179-0-50.lightspeed.austtx.sbcglobal.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-02-03 17:21:29 +0100 <Liskni_si> 1 minute 30 seconds of CPU time after 5 hours 20 minutes
2021-02-03 17:21:39 +0100 <Liskni_si> xmonad is at 2:48 after 3 _days_
2021-02-03 17:22:35 +0100 <Liskni_si> I don't really observe significant jumps in xmobar cpu usage, it's at 0.3% most of the time and it goes up to 0.7% every few seconds when it needs to redraw the battery and temperature stuff
2021-02-03 17:22:56 +0100 <Liskni_si> and that's not really CPU time really, most of that 0.4 is spent in ACPI
2021-02-03 17:23:16 +0100 <Liskni_si> (maybe the kernel busyloops or something, dunno, don't care)
2021-02-03 17:24:35 +0100 <Liskni_si> I would expect the 0.3 number to be less though, it's just rendering some text
2021-02-03 17:26:33 +0100 <Liskni_si> if I run top -d 1 it seems the terminal consumes less cpu than xmobar :-)
2021-02-03 17:26:34 +0100ChubaDuba(~ChubaDuba@37.112.231.139) (Read error: Connection reset by peer)
2021-02-03 17:26:45 +0100 <Liskni_si> even though it does more
2021-02-03 17:27:08 +0100ChubaDuba(~ChubaDuba@37.112.231.139)
2021-02-03 17:30:32 +0100davemq(~davemq@99-179-0-50.lightspeed.austtx.sbcglobal.net)
2021-02-03 17:50:03 +0100cfricke(~cfricke@unaffiliated/cfricke) (Quit: WeeChat 3.0)
2021-02-03 18:03:55 +0100geekosaur(82650c7c@130.101.12.124)
2021-02-03 18:09:26 +0100 <psibi[m]> How do you observer the 2:48 part ? I remember you mentioning it an xmobar issue which we were discussing previously, but I guess I forgot the details.
2021-02-03 18:09:36 +0100 <geekosaur> ps?
2021-02-03 18:10:46 +0100 <geekosaur> also, fwiw xmonad in my experience performs very poorly with hundreds of windows. not that people have that many windows normally (I discovered it through malfunction of a messaging system that created 1 window per message)
2021-02-03 18:11:17 +0100 <psibi[m]> Ah, thanks. But for me the bottleneck is xmobar instead of xmonad. :-)
2021-02-03 18:11:19 +0100 <geekosaur> this is likely to have as much to do with the layout using lists as it is nub vs. nubOrd
2021-02-03 18:12:20 +0100 <psibi[m]> xmobar usage: 5:37 out of 9:37
2021-02-03 18:12:20 +0100 <psibi[m]> xmonad usage: 0:09 out of 9:37
2021-02-03 18:12:57 +0100 <psibi[m]> That's the statistics for my machine.
2021-02-03 18:13:20 +0100 <geekosaur> iirc xmobar wakes up a lot when it doesn't need to
2021-02-03 18:14:12 +0100 <geekosaur> like it checks some things every 1/10 second even when you use larger delays in the commands list
2021-02-03 18:15:07 +0100 <psibi[m]> Yeah, I think that code is still there.
2021-02-03 18:15:11 +0100 <geekosaur> it's pretty sad when I have a pair of decked-out mate-panels (which share a process) and it uses less cpu than xmobar would in my experience
2021-02-03 18:15:59 +0100 <psibi[m]> Do you use xmobar or any other ones ? I would like to stick to xmobar because it's easy to understand the code!
2021-02-03 18:16:45 +0100 <geekosaur> I use xmonad with mate so I run mate-panel with an xmonad-log-applet in it
2021-02-03 18:20:46 +0100 <psibi[m]> Ah, I see.
2021-02-03 18:41:47 +0100mc47(~yecinem@89.246.239.190)
2021-02-03 18:45:46 +0100 <Liskni_si> psibi[m]: the numbers I wrote here were from ps, yeah
2021-02-03 18:46:40 +0100 <Liskni_si> psibi[m]: a few months ago when we were obsessing around the timezone refresh in xmobar I did a bit more precise measurements, but now I just looked at the "started at" and "cpu usage" columns in ps
2021-02-03 18:47:30 +0100 <Liskni_si> geekosaur: I fixed the wakeup issue a couple months ago
2021-02-03 18:48:27 +0100 <Liskni_si> geekosaur: it requires threaded rts and the implementation isn't as elegant as one would expect a cooperative-multitasking timer coalescing thing to be, so there probably is some overhead, but xmobar does wake up exactly once per second here
2021-02-03 18:52:16 +0100geekosaur(82650c7c@130.101.12.124) (Quit: Ping timeout (120 seconds))
2021-02-03 18:54:52 +0100geekosaur(82650c7c@130.101.12.124)
2021-02-03 18:58:01 +0100 <Solid> Liskni_si: you were right, if we need the list in normal form (not whnf), then nubOrd is slower up until like ~15 windows
2021-02-03 18:58:57 +0100 <Liskni_si> Solid: good thing I said "two-digit number" and not "about 50" as I wanted :-)
2021-02-03 18:59:08 +0100 <Solid> :D
2021-02-03 18:59:21 +0100 <Liskni_si> it's been a while since my last Google interview :-D
2021-02-03 19:14:17 +0100ChubaDuba(~ChubaDuba@37.112.231.139) (Quit: WeeChat 1.6)
2021-02-03 19:30:30 +0100themc47(~yecinem@89.246.239.190)
2021-02-03 19:32:45 +0100mc47(~yecinem@89.246.239.190) (Ping timeout: 240 seconds)
2021-02-03 19:45:37 +0100themc47(~yecinem@89.246.239.190) (Quit: Leaving)
2021-02-03 19:45:53 +0100mc47(~yecinem@89.246.239.190)
2021-02-03 20:01:53 +0100StonedApeHash
2021-02-03 20:18:02 +0100geekosaur(82650c7c@130.101.12.124) (Ping timeout: 240 seconds)
2021-02-03 20:57:12 +0100sam_d(~sam@unaffiliated/sam-d/x-1905598) (Read error: Connection reset by peer)
2021-02-03 20:57:43 +0100sam_d(~sam@unaffiliated/sam-d/x-1905598)
2021-02-03 20:57:58 +0100geekosaur(82650c7c@130.101.12.124)
2021-02-03 20:58:22 +0100ixian(~mgold@2002:4a74:ba78:1701:0:ff:fe78:6269) (Ping timeout: 265 seconds)
2021-02-03 21:01:23 +0100ixian(~mgold@2002:4a74:ba78:1701:0:ff:fe78:6269)
2021-02-03 22:10:10 +0100ADG1089__(~aditya@223.236.190.35)
2021-02-03 22:27:17 +0100dxld(~dxld@rush.pub.dxld.at) (Quit: Bye)
2021-02-03 22:28:17 +0100ADG1089__(~aditya@223.236.190.35) (Remote host closed the connection)
2021-02-03 22:33:20 +0100endiruna(~endiendir@46.101.187.207)
2021-02-03 22:34:06 +0100 <endiruna> hi! new to xmonad. coming from i3. is there someone who could share his xmobar configuration that shows workspaces and clickable?
2021-02-03 22:35:29 +0100 <Liskni_si> endiruna: are you comfortable running xmonad and xmonad-contrib from git or do you something that works with the last release?
2021-02-03 22:36:31 +0100 <endiruna> yes. I wanted to learn also a bit of haskell
2021-02-03 22:37:39 +0100 <Liskni_si> in that case, https://github.com/xmonad/xmonad-contrib/blob/master/XMonad/Util/ClickableWorkspaces.hs#L29-L37 should be all you need :-)
2021-02-03 22:39:02 +0100 <Liskni_si> (I could show you my config as well but I'm using features of xmonad-contrib that aren't merged yet)
2021-02-03 22:48:22 +0100mc47(~yecinem@89.246.239.190) (Remote host closed the connection)
2021-02-03 22:49:24 +0100geekosaur(82650c7c@130.101.12.124) (Quit: Connection closed)
2021-02-03 22:50:06 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds)
2021-02-03 22:50:30 +0100geekosaur(82650c7c@130.101.12.124)
2021-02-03 22:50:50 +0100 <endiruna> thanks!
2021-02-03 22:51:58 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-02-03 23:06:59 +0100geekosaur(82650c7c@130.101.12.124) (Quit: Connection closed)
2021-02-03 23:27:01 +0100ADG1089__(~aditya@223.236.190.35)
2021-02-03 23:34:05 +0100endiruna(~endiendir@46.101.187.207) (Ping timeout: 272 seconds)
2021-02-03 23:35:59 +0100dxld(~dxld@rush.pub.dxld.at)