2021/01/01

2021-01-01 00:08:06 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net)
2021-01-01 00:20:38 +0100andytoshi(~apoelstra@unaffiliated/andytoshi)
2021-01-01 00:21:31 +0100Shiranai(beed0d8f@gateway/web/cgi-irc/kiwiirc.com/ip.190.237.13.143) (Quit: Connection closed)
2021-01-01 00:21:58 +0100 <andytoshi> hiya. i'm trying to make my xmobar look different on the active monitor ... i've been able to output the screen ID of the active screen from xmonad, but i can't figure out how to make xmobar do anything useful with it (seems that StdinReader is just a dumb pipe)
2021-01-01 00:22:09 +0100notis(~notis@185.51.134.229)
2021-01-01 00:22:13 +0100 <andytoshi> so alternatively i've been trying to do everything in xmonad...
2021-01-01 00:22:47 +0100daphnis(~daphnis@cm-84.214.179.98.getinternet.no) (Quit: leaving)
2021-01-01 00:22:52 +0100 <andytoshi> but i have a xmobarPP, and only ppOutput knows about the different instances of xmobar, and it's a String -> IO ()
2021-01-01 00:23:05 +0100 <andytoshi> so I'm outside of the X monad there and can't get the current screen
2021-01-01 00:23:25 +0100 <andytoshi> has anyone successfully done this before?
2021-01-01 00:24:04 +0100 <Liskni_si> I have, but my setup is very custom
2021-01-01 00:24:29 +0100 <Liskni_si> on the other hand, having multiple xmobars sounds a bit custom, too
2021-01-01 00:25:40 +0100 <Liskni_si> my config is here: https://github.com/liskin/dotfiles/blob/home/.xmonad/xmonad.hs, and if you show us yours, maybe we can figure out the least intrusive way to do that
2021-01-01 00:26:37 +0100 <andytoshi> sure, one moment
2021-01-01 00:26:54 +0100 <andytoshi> is having multiple xmobars pretty custom? i think that's the usual way to get them on every monitor
2021-01-01 00:29:03 +0100 <andytoshi> here is my xmobar log hook -- | Get the name of the current layout.
2021-01-01 00:29:03 +0100 <andytoshi> logLayout :: Logger
2021-01-01 00:29:09 +0100 <andytoshi> oops wrong paste
2021-01-01 00:29:11 +0100 <andytoshi> here it is https://github.com/apoelstra/xmonad-config/blob/master/xmonad.hs#L49-L57
2021-01-01 00:29:33 +0100 <andytoshi> i am doing some weird/custom stuff with workspaces, to force them to specific monitors, but i think the xmobar stuff is fairly mainstream
2021-01-01 00:29:37 +0100 <Liskni_si> well it's not something that is supported directly by DynamicLog, and DynamicBars is not very well documented and arguably somewhat less flexible (at least for me)
2021-01-01 00:29:55 +0100 <Liskni_si> so I'd consider it pretty custom :-)
2021-01-01 00:30:01 +0100 <andytoshi> ok that's fair :)
2021-01-01 00:30:58 +0100 <andytoshi> so... IndependentScreens actually does roughly what i'm trying to do here .. see `marshalPP` https://hackage.haskell.org/package/xmonad-contrib-0.13/docs/src/XMonad-Layout-IndependentScreens.…
2021-01-01 00:31:18 +0100 <andytoshi> but the way they've done that is pretty hacky and specific to their way of naming workspaces (and mapping them to monitors) which i don't like
2021-01-01 00:31:31 +0100 <andytoshi> so i'd have to redo that code ... which i can do, but hopefully i don't have to implement my own PP like that
2021-01-01 00:31:43 +0100 <andytoshi> my hope is that there's a "simpler" way to go
2021-01-01 00:32:07 +0100 <Liskni_si> took a look at your code, I think the problem is that you're running dynamicLogWithPP only once and outputting the same output to all three xmobars
2021-01-01 00:32:32 +0100 <Liskni_si> when you invoke dynamicLogWithPP with slightly different pp for every xmobar, you'll have the flexibility you need
2021-01-01 00:32:46 +0100 <andytoshi> Liskni_si: yep .. which i think i got from some "xmonad with multiple monitors" tutorial
2021-01-01 00:32:58 +0100 <andytoshi> ok, nice, let me look into how to have multiple pps
2021-01-01 00:33:11 +0100 <Liskni_si> (and my xmonad.hs actually does implement my own PP because I need stuff that isn't in DynamicLog either)
2021-01-01 00:40:08 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-01-01 00:40:25 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net)
2021-01-01 00:58:52 +0100thoros(~thoros@194-96-55-156.hdsl.highway.telekom.at) (Ping timeout: 260 seconds)
2021-01-01 01:16:45 +0100 <andytoshi> whew, i did it. though i really don't know haskell :P
2021-01-01 01:17:17 +0100 <andytoshi> this nasty thing https://github.com/apoelstra/xmonad-config/blob/master/xmonad.hs#L71 writes True to the active monitor and False to the inactive one
2021-01-01 01:30:16 +0100cwrbs(~jy@217.64.127.195)
2021-01-01 01:35:35 +0100notis(~notis@185.51.134.229) (Read error: Connection reset by peer)
2021-01-01 01:38:35 +0100notis(~notis@45.134.22.65)
2021-01-01 01:40:42 +0100ElKowar(~ElKowar@p3e9d26c7.dip0.t-ipconnect.de) ()
2021-01-01 01:44:10 +0100seschwar(~seschwar@unaffiliated/seschwar) (Quit: :wq)
2021-01-01 02:16:52 +0100notis(~notis@45.134.22.65) (Ping timeout: 246 seconds)
2021-01-01 03:21:46 +0100 <andytoshi> is there a way that i can change the background color of the whole xmobar?
2021-01-01 03:34:01 +0100cwrbs(~jy@217.64.127.195) (Ping timeout: 256 seconds)
2021-01-01 04:02:08 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-01-01 04:30:18 +0100thunderrd(~thunderrd@183.182.111.131) (Remote host closed the connection)
2021-01-01 04:52:56 +0100theDon(~td@94.134.91.248) (Ping timeout: 256 seconds)
2021-01-01 04:54:23 +0100theDon(~td@muedsl-82-207-238-228.citykom.de)
2021-01-01 05:36:37 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 06:02:08 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-01-01 06:05:41 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 06:16:50 +0100thunderrd(~thunderrd@183.182.111.131)
2021-01-01 06:33:07 +0100thoros(~thoros@194-96-55-156.hdsl.highway.telekom.at)
2021-01-01 07:01:22 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 07:09:00 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 272 seconds)
2021-01-01 07:26:26 +0100palo1(~weechat@c-base/crew/palo)
2021-01-01 07:27:44 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 07:28:07 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 07:29:38 +0100thunderrd(~thunderrd@183.182.111.131) (Remote host closed the connection)
2021-01-01 07:29:42 +0100palo(~weechat@c-base/crew/palo) (Ping timeout: 260 seconds)
2021-01-01 07:29:42 +0100palo1palo
2021-01-01 07:30:09 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 07:30:36 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 07:34:45 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 07:38:37 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 07:38:50 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 07:39:11 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 07:44:28 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 07:45:03 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 07:45:24 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 07:46:05 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 07:51:00 +0100 <xacktm> andytoshi: xmobar has its own rc dotfile to config stuff
2021-01-01 08:01:49 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 08:02:18 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 08:02:29 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 08:15:36 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 08:16:50 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 08:33:27 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 08:40:08 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 08:45:36 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 08:49:09 +0100ADG1089__(~aditya@223.235.213.117) (Client Quit)
2021-01-01 08:54:40 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-01-01 08:56:10 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 09:00:03 +0100 <novas0x2a> Happy New Year!
2021-01-01 09:03:48 +0100thunderrd(~thunderrd@183.182.111.131)
2021-01-01 09:09:24 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 09:10:01 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 09:13:24 +0100 <ADG1089__> I have both kde and xmonad and using them separately but sometimes i like to use kde applications in xmonad but the kde themes do not work
2021-01-01 09:27:24 +0100 <Solid> ADG1089__: xmonad doesn't do anything with regards to theming, you may want to try to set the theme with something like lxappearance
2021-01-01 09:27:36 +0100 <Solid> you can also look into using xmonad as a wm inside kde, if you want that
2021-01-01 09:27:47 +0100 <Solid> novas0x2a: happy new year to you too! :)
2021-01-01 09:32:06 +0100thunderrd(~thunderrd@183.182.111.131) (Ping timeout: 246 seconds)
2021-01-01 09:40:58 +0100thunderrd(~thunderrd@183.182.111.131)
2021-01-01 09:46:32 +0100 <ADG1089__> Solid: I tried that but it will require me to disable kde taskbar, shortcuts, switcher
2021-01-01 09:47:11 +0100 <ADG1089__> also xmobar didn't start for some reason as it couldn't find files even with absolute paths
2021-01-01 09:47:15 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 09:47:58 +0100thunderrd(~thunderrd@183.182.111.131) (Read error: Connection reset by peer)
2021-01-01 09:48:17 +0100thunderrd(~thunderrd@183.182.111.131)
2021-01-01 09:53:11 +0100thunderrd(~thunderrd@183.182.111.131) (Remote host closed the connection)
2021-01-01 09:54:11 +0100thunderrd(~thunderrd@183.182.111.131)
2021-01-01 10:01:31 +0100notis(~notis@45.134.22.54)
2021-01-01 10:04:53 +0100thunderrd(~thunderrd@183.182.111.131) (Remote host closed the connection)
2021-01-01 10:06:29 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 10:24:04 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 10:24:32 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 10:53:40 +0100 <everythingTaken> smartBorders doesn't work with dual screen setup, single apps display borders, anyone came across this?
2021-01-01 10:55:09 +0100 <everythingTaken> works with single screen
2021-01-01 10:55:49 +0100 <everythingTaken> it's as if xmonad treets the second screen as extension
2021-01-01 10:56:05 +0100 <everythingTaken> of current one, thus thinks there is more than one app
2021-01-01 11:01:38 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-01-01 11:03:28 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 11:08:01 +0100remediable(~sid320609@103.154.98.31)
2021-01-01 11:16:23 +0100 <Solid> everythingTaken: `smartBorders' explicitly mentions "Removes the borders from a window under one of the following conditions:
2021-01-01 11:16:25 +0100 <Solid> There is only one screen and only one window.
2021-01-01 11:17:13 +0100 <Solid> you will probably have to combine the `Ambiguity' constructors in a nice way to achieve this, see https://hackage.haskell.org/package/xmonad-contrib-0.16/docs/XMonad-Layout-NoBorders.html#t:SetsAm…
2021-01-01 11:24:18 +0100 <ADG1089__> does anyone know how to solve this problem: `xmobar: ***/xmobar/xmobarrc: hGetContents: invalid argument (invalid byte sequence)`
2021-01-01 11:24:24 +0100 <ADG1089__> same happening with brittany
2021-01-01 11:25:24 +0100 <Liskni_si> Probably a non-utf locale?
2021-01-01 11:34:23 +0100 <ADG1089__> locale gives en_IN.UTF-8 (although with 3 warnings about LC_ALL, ..., ...)
2021-01-01 11:36:45 +0100notis(~notis@45.134.22.54) (Ping timeout: 240 seconds)
2021-01-01 11:40:20 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 11:41:36 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 11:43:34 +0100 <everythingTaken> Solid: thanks, how would the parameter be for lessBorders (SetsAmbigious instance)
2021-01-01 11:44:23 +0100 <everythingTaken> something like any screen where 1 window?
2021-01-01 11:54:31 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 11:55:51 +0100fortuneteller2k(~fortunete@49.148.214.29)
2021-01-01 11:57:38 +0100 <Solid> everythingTaken: no idea, I've not used borders in a while; try it out! :D
2021-01-01 12:00:00 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-01-01 12:00:17 +0100fortuneteller2k(~fortunete@49.148.214.29) (Quit: WeeChat 3.0)
2021-01-01 12:02:47 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 12:04:39 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 12:07:16 +0100 <everythingTaken> Solid: thanks, will check it out
2021-01-01 12:09:20 +0100 <ADG1089__> can't seem to get xmobar working with kde, i tried running it manually which gives "xmobar: ~/.config/xmobar/xmobarrc_top: hGetContents: invalid argument (invalid byte sequence)"
2021-01-01 12:09:35 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 12:10:07 +0100ADG1089_(~adg1089@223.235.213.117)
2021-01-01 12:10:52 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 12:11:41 +0100 <Liskni_si> ADG1089__: there's probably some invalid byte or something in the config file
2021-01-01 12:11:59 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-01-01 12:19:15 +0100 <ADG1089__> Liskni_si: using grep i find a degree unicode sumbol used for showing temperature. It was working before. I have UTF-8 set. should I change locale to something else?
2021-01-01 12:19:42 +0100 <Liskni_si> ADG1089__: if you're getting those warnings maybe your locales are broken
2021-01-01 12:20:12 +0100 <Liskni_si> changing a locale might help, but you'll have to fix the locales anyway.
2021-01-01 12:21:12 +0100 <ADG1089__> I think kde is setting my locale to en_IN.UTF-8 while I installed with en_US.UTF-8
2021-01-01 12:22:30 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 12:22:50 +0100thunderrd(~thunderrd@183.182.111.131)
2021-01-01 12:23:30 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 12:23:49 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 12:24:50 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 12:27:13 +0100 <ADG1089__> Liskni_si: it works now with en_US.UTF-8
2021-01-01 12:27:16 +0100 <ADG1089__> thanks!
2021-01-01 12:28:44 +0100 <Liskni_si> ADG1089__: well then you might need to enable the en_IN.UTF-8 in glibc
2021-01-01 12:29:00 +0100 <Liskni_si> that would be dpkg-reconfigure locales, if you're on debian
2021-01-01 12:29:14 +0100 <ADG1089__> i'm on arch. I think it's locale-gen
2021-01-01 12:30:26 +0100 <Liskni_si> arch wiki will surely have the most up to date info on how it's supposed to be done there
2021-01-01 12:30:49 +0100 <Liskni_si> locale-gen seems like a tool that one might not want to invoke manualy, but then, it's arch, so... :-)
2021-01-01 12:31:32 +0100 <Solid> down with locales!
2021-01-01 12:32:43 +0100notis(~notis@45.134.22.65)
2021-01-01 12:33:03 +0100cwrbs(~jy@134.19.179.139)
2021-01-01 12:35:22 +0100 <ADG1089__> I think the problem was kde enabled en_IN but did not generate it first
2021-01-01 12:36:25 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 12:36:57 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 12:50:30 +0100seschwar(~seschwar@unaffiliated/seschwar)
2021-01-01 12:51:46 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 12:51:46 +0100cwrbs(~jy@134.19.179.139) (Ping timeout: 256 seconds)
2021-01-01 12:52:32 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 13:04:55 +0100cwrbs(~jy@184.75.223.195)
2021-01-01 13:09:56 +0100cwrbs(~jy@184.75.223.195) (Ping timeout: 265 seconds)
2021-01-01 13:21:18 +0100ElKowar(~ElKowar@p3e9d26c7.dip0.t-ipconnect.de)
2021-01-01 13:21:57 +0100cwrbs(~jy@184.75.221.195)
2021-01-01 13:33:06 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 13:36:38 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Client Quit)
2021-01-01 13:40:06 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 13:41:06 +0100 <everythingTaken> Liskni_si: hi
2021-01-01 13:47:02 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 13:47:24 +0100 <Liskni_si> everythingTaken: hi
2021-01-01 13:47:32 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 13:49:41 +0100 <everythingTaken> Liskni_si: need help from you, cant figure it out, I want to have smartBorders for dual screens, but smartBorders works for only one window and one screen, there is lessBorders which has a setAmbigious datatype, what do I need to have lessBorders (ambigiouty type) to remove borders on dual screen when only one window open?
2021-01-01 13:50:41 +0100 <everythingTaken> options are: Combine
2021-01-01 13:50:44 +0100 <everythingTaken> OnlyLayoutFloatBelow
2021-01-01 13:50:46 +0100 <everythingTaken> OnlyLayoutFloat
2021-01-01 13:50:48 +0100 <everythingTaken> Never
2021-01-01 13:50:50 +0100 <everythingTaken> EmptyScreen
2021-01-01 13:50:53 +0100 <everythingTaken> OtherIndicated
2021-01-01 13:50:54 +0100 <everythingTaken> Screen
2021-01-01 13:50:59 +0100 <everythingTaken> could you take a look if you have a moment?
2021-01-01 13:57:01 +0100 <Liskni_si> everythingTaken: seems to me that any of the Only* options should work
2021-01-01 13:57:11 +0100 <Liskni_si> but that's just a guess from reading the docs
2021-01-01 13:57:28 +0100 <Liskni_si> probably best if you try them out and stick with what works
2021-01-01 13:57:50 +0100 <everythingTaken> Liskni_si: none of them worked, wouldnt OnlyLayoutFloat only apply to float layouts?
2021-01-01 13:59:00 +0100 <Liskni_si> oh, if you want to remove borders from non-floating windows, then dunno
2021-01-01 13:59:12 +0100 <Liskni_si> it's certainly possible it's a missing feature
2021-01-01 13:59:21 +0100 <everythingTaken> it's weird that this was never brought much anywhere on net
2021-01-01 13:59:22 +0100cwrbs(~jy@184.75.221.195) (Ping timeout: 260 seconds)
2021-01-01 13:59:36 +0100 <everythingTaken> I mean in docs etc, seems like a favorable feature
2021-01-01 13:59:47 +0100 <everythingTaken> couldnt find much googling about it
2021-01-01 14:16:38 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 265 seconds)
2021-01-01 14:18:10 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2021-01-01 14:26:22 +0100ADG1089_(~adg1089@223.235.213.117) (Read error: Connection reset by peer)
2021-01-01 14:39:01 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 14:39:37 +0100ADG1089_(~adg1089@223.235.213.117)
2021-01-01 14:42:15 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 14:51:55 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
2021-01-01 14:52:55 +0100rekahsoft`(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
2021-01-01 14:53:20 +0100rekahsoft``(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
2021-01-01 14:53:39 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
2021-01-01 14:54:05 +0100rekahsoft``(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
2021-01-01 15:18:23 +0100ADG1089_(~adg1089@223.235.213.117) (Ping timeout: 256 seconds)
2021-01-01 15:19:19 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 15:20:09 +0100ADG1089_(~adg1089@223.235.213.117)
2021-01-01 15:21:33 +0100ashbreeze(~mark@64.85.214.234.reverse.socket.net)
2021-01-01 15:21:55 +0100ashbreeze(~mark@64.85.214.234.reverse.socket.net) (Remote host closed the connection)
2021-01-01 15:21:56 +0100_ashbreeze_(~mark@64.85.214.234.reverse.socket.net) (Read error: Connection reset by peer)
2021-01-01 15:22:04 +0100kelnoky(~shao@ip1f1222c4.dynamic.kabel-deutschland.de)
2021-01-01 15:23:10 +0100_ashbreeze_(~mark@64.85.214.234.reverse.socket.net)
2021-01-01 15:24:01 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 15:39:31 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
2021-01-01 15:40:11 +0100rekahsoft`(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
2021-01-01 15:40:11 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
2021-01-01 15:57:24 +0100ADG1089_(~adg1089@223.235.213.117) (Ping timeout: 256 seconds)
2021-01-01 15:57:30 +0100geekosaur(ae68c070@cpe-174-104-192-112.neo.res.rr.com)
2021-01-01 16:11:41 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-01-01 16:22:16 +0100ADG1089__(~aditya@223.235.213.117) (Ping timeout: 240 seconds)
2021-01-01 16:34:45 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 16:38:09 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Client Quit)
2021-01-01 16:38:37 +0100andytoshi(~apoelstra@unaffiliated/andytoshi) (Ping timeout: 264 seconds)
2021-01-01 16:42:55 +0100 <Solid> Liskni_si: I've been looking into xmonadpropread.hs and I have to say I don't quite... get what the point is
2021-01-01 16:43:31 +0100 <Solid> we read from _XMONAD_PROP and dump that to stdout if something changes, but to connect this to a status bar we would still have to open up a pipe, no?
2021-01-01 16:52:37 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
2021-01-01 16:54:29 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
2021-01-01 16:54:47 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
2021-01-01 16:55:02 +0100rekahsoft(~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
2021-01-01 16:56:18 +0100 <Liskni_si> Solid: yes, but freezing of the status bar no longer freezes xmonad then
2021-01-01 16:56:39 +0100 <Liskni_si> only xmonadpropread will get stuck until someone unstucks the status bar
2021-01-01 16:58:06 +0100cwrbs(~jy@178.162.204.214)
2021-01-01 16:59:05 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken)
2021-01-01 16:59:29 +0100 <Solid> oooooh of course, because it's a script
2021-01-01 16:59:30 +0100 <Solid> derp
2021-01-01 16:59:55 +0100 <Solid> that makes sense, thanks :)
2021-01-01 17:00:05 +0100CRTified[m](schnecfkru@gateway/shell/matrix.org/x-vrozfuovpxunwnos) (Quit: Idle for 30+ days)
2021-01-01 17:05:04 +0100andytoshi(~apoelstra@wpsoftware.net)
2021-01-01 17:05:04 +0100andytoshi(~apoelstra@wpsoftware.net) (Changing host)
2021-01-01 17:05:04 +0100andytoshi(~apoelstra@unaffiliated/andytoshi)
2021-01-01 17:16:37 +0100 <everythingTaken> Solid: you up? any chance you could help with smartBorders for Xinerema? As you told earlier Ambigious type can be configured, but I can't find the one in default settings in docs. If all fails, I could probably go with Independent Screens that might solve the issue.
2021-01-01 17:17:09 +0100 <everythingTaken> been googling for hours, cant find single solution but rather few other people looking for same issue
2021-01-01 17:18:05 +0100 <Liskni_si> Sorry to say it, but google can only take you so far. Sometimes you need to roll up your sleeves and dig into code.
2021-01-01 17:20:05 +0100 <andytoshi> i have a haskell question ... i am trying to write a function xmobarPipes :: Int -> IO [(Handle, ScreenId)]
2021-01-01 17:20:21 +0100 <andytoshi> which will spawn a given number of xmobars associated with what screens they're on
2021-01-01 17:20:33 +0100 <andytoshi> my code is
2021-01-01 17:20:34 +0100 <andytoshi> xmobarPipes nScreens =
2021-01-01 17:20:34 +0100 <andytoshi> fmap (\n -> (do
2021-01-01 17:20:34 +0100 <andytoshi> pipe <- spawnPipe ("xmobar -x " ++ show n)
2021-01-01 17:20:34 +0100 <andytoshi> return (pipe, n))) [0 .. nScreens - 1]
2021-01-01 17:20:41 +0100 <everythingTaken> Liskni_si: will have to learn Haskell for that :/
2021-01-01 17:21:07 +0100 <andytoshi> which i would expect to return a [IO (Handle, ScreenId)] (which is still not what i want, but i'm getting close maybe..)
2021-01-01 17:21:29 +0100 <Solid> in any case, this seems like a pretty big oversight if it's not easily possible
2021-01-01 17:21:36 +0100 <andytoshi> but the compiler claims it's returning a [[(Handle, ScreenId)]], which i don't understand at all. where is the second List coming from and where did the IO from spawnPipe go?
2021-01-01 17:21:53 +0100 <Solid> I've always felt that this ambiguity approach was a little overly complicated for something as simple as deciding where to draw borders
2021-01-01 17:22:03 +0100 <Solid> but, alas, that's how it is
2021-01-01 17:22:27 +0100 <geekosaur> andytoshi, it's forced by your use of fmap. you want mapM or traverse
2021-01-01 17:23:15 +0100kelnoky(~shao@ip1f1222c4.dynamic.kabel-deutschland.de) (Quit: WeeChat 3.0)
2021-01-01 17:23:40 +0100 <andytoshi> thanks geekosaur! i'll look those up
2021-01-01 17:23:57 +0100 <everythingTaken> Solid: smartBorders should work in theory? but seems like something messed it up or is it intentional? some guys said it used to work before 14.0 there was a link to commit that messed it up, works before taht commit
2021-01-01 17:24:57 +0100 <Solid> everythingTaken: the smart border docks are pretty clear about that it's only supposed to work with a single screen; that commit sounds interesting though (and like another silent regression we may want to revisit), got a link?
2021-01-01 17:28:00 +0100 <everythingTaken> Solid: https://www.reddit.com/r/xmonad/comments/9r33ny/how_to_get_noborders_to_not_show_borders_for/ https://github.com/xmonad/xmonad-contrib/issues/280
2021-01-01 17:29:37 +0100 <everythingTaken> haven't tested it myself
2021-01-01 17:37:49 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 17:39:20 +0100 <Liskni_si> well OnlyScreenFloat definitely doesn't seem to work as described here
2021-01-01 17:39:27 +0100 <Liskni_si> so there indeed is a bug, I think
2021-01-01 17:42:36 +0100 <Solid> "> This originally considered all floating windows across all workspaces. It seems more efficient to have each layout manage its own floating windows - and equally valid though untested against a multihead setup.
2021-01-01 17:42:45 +0100 <Solid> this may be the issue
2021-01-01 17:43:11 +0100rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
2021-01-01 17:43:24 +0100 <Solid> "having each layout manage its own floating windows" sounds like we're losing some sort of global view of the story and are only looking at things locally
2021-01-01 17:44:06 +0100 <Solid> i.e. this is probably not equally valid for multihead setups
2021-01-01 17:44:12 +0100 <Solid> sigh
2021-01-01 17:44:30 +0100 <Liskni_si> I can't find the code that filters the other screen's floats out
2021-01-01 17:44:55 +0100 <Liskni_si> and I actually think this should work correctly even without the global view
2021-01-01 17:45:31 +0100 <Liskni_si> so I'd hazard a guess that it is this mismatch between the code author thinking it has a local view and actually having a global view, that's causing the issue
2021-01-01 17:49:29 +0100 <Liskni_si> also it seems to never use any other screen rect than the one on currently focused screen
2021-01-01 17:49:39 +0100 <Liskni_si> that can't possibly ever have worked.
2021-01-01 17:53:10 +0100 <Liskni_si> oh, found the filtering
2021-01-01 17:55:00 +0100ADG1089__(~aditya@223.235.213.117) (Ping timeout: 272 seconds)
2021-01-01 17:59:39 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 18:05:36 +0100 <everythingTaken> currently fullscreen in xmonad seems to be a mess, maybe just me. different types of libraries & layouts for fullscreen, confusing to me as someone new. requires hacks to work, but it's still a beast
2021-01-01 18:07:11 +0100 <everythingTaken> fullscreenEventHook makes all workspaces & windows fullscreen hmm
2021-01-01 18:07:15 +0100 <Liskni_si> if you're using 0.16 instead of the latest git, then you might expect some fullscreen improvements in 0.17 once that's done
2021-01-01 18:09:02 +0100 <everythingTaken> Liskni_si: nice, why Firefox and mpv doesn't provide NET_WM_STATE or NET_WM_STATE_FULLSCREEN which is checked by isFullscreen? Do other WMs do this differently?
2021-01-01 18:09:25 +0100 <Liskni_si> everythingTaken: it's the other way round, xmonad didn't use to announce it supports that
2021-01-01 18:09:40 +0100 <Liskni_si> but this is indeed fixed in git and will be fixed in the next release
2021-01-01 18:10:35 +0100cwrbs(~jy@178.162.204.214) (Ping timeout: 256 seconds)
2021-01-01 18:11:13 +0100 <everythingTaken> cool, in the meantime, ewhm fullscreeneventhook should fix it, but it makes everything fullscreen by default for me, any ideas? BTW I'm using your toggleFUllScreen function works nicely with lessBorders OnlyFloatScreen
2021-01-01 18:12:25 +0100 <everythingTaken> it hides the bar
2021-01-01 18:12:35 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 18:12:57 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 18:13:20 +0100 <everythingTaken> firefox goes fullscreen with F11 but mpv doesnt when clicked fullscreen
2021-01-01 18:14:44 +0100 <everythingTaken> avoidStruts seems to be not working with fullscreenEventHook, empty workspace has the bar, but if there is a window no
2021-01-01 18:16:51 +0100 <everythingTaken> anyone has Firefox crashing regularly even with safe mode? Either it's a coincidence or it's a XMonad specific problem, because there was another guy reporting same type of crash mentioning +XMonad
2021-01-01 18:43:07 +0100ADG1089__(~aditya@223.235.213.117) (Quit: Konversation terminated!)
2021-01-01 18:44:57 +0100Shiranai(beed0d74@gateway/web/cgi-irc/kiwiirc.com/ip.190.237.13.116)
2021-01-01 18:47:00 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 18:47:07 +0100 <Liskni_si> Solid: are you still looking into NoBorders?
2021-01-01 18:47:30 +0100kelnoky(~shao@ip1f1222c4.dynamic.kabel-deutschland.de)
2021-01-01 18:48:01 +0100 <Liskni_si> seems to me https://github.com/liskin/xmonad-contrib/blob/dotfiles/XMonad/Layout/NoBorders.hs#L262-L265 only looks at the current screen, no matter which screen is currently being layouted
2021-01-01 18:50:32 +0100mc47(~yecinem@89.246.239.190)
2021-01-01 19:00:54 +0100 <Solid> Liskni_si: I am not, but you seem to be right
2021-01-01 19:00:59 +0100 <Solid> that's... weird
2021-01-01 19:01:08 +0100 <Liskni_si> it's not that weird really
2021-01-01 19:01:26 +0100 <Liskni_si> the comment suggests multihead wasn't really considered by the author
2021-01-01 19:01:44 +0100 <Solid> well the comment also says "should work"
2021-01-01 19:02:05 +0100 <Liskni_si> and there is no straightforward way to get the screen in redoLayout
2021-01-01 19:02:31 +0100 <Liskni_si> the comment only says the concept of not looking at all windows makes sense in multihead setup
2021-01-01 19:02:49 +0100 <Liskni_si> doesn't really claim the implementation works in such setup :-)
2021-01-01 19:03:07 +0100 <Solid> hah
2021-01-01 19:06:12 +0100 <Solid> <Liskni_si> and there is no straightforward way to get the screen in redoLayout << can't we just query the WindowSet?
2021-01-01 19:07:48 +0100 <Liskni_si> that's exactly what the code does now
2021-01-01 19:07:56 +0100 <Liskni_si> wset has the focused screen
2021-01-01 19:08:25 +0100 <Liskni_si> but the screen that's being runLayouted is only passed to modifyLayout(WithUpdate), not to redoLayout
2021-01-01 19:08:25 +0100 <Solid> but we can get the others screen as well then, no?
2021-01-01 19:08:37 +0100 <Solid> ah I see
2021-01-01 19:08:45 +0100 <Liskni_si> well, yeah, sure, but I don't think we want
2021-01-01 19:09:01 +0100 <Liskni_si> the comment is correct that we should only be looking at the workspace in question
2021-01-01 19:09:13 +0100 <Liskni_si> I'll figure something out after dinner
2021-01-01 19:10:32 +0100 <andytoshi> geekosaur: thanks! my new code is
2021-01-01 19:10:32 +0100 <andytoshi> xmobarPipes nScreens = traverse (\n -> fmap (\pipe -> (pipe, S n)) $ spawnPipe ("xmobar -x " ++ show n)) [0 .. nScreens - 1]
2021-01-01 19:10:56 +0100 <andytoshi> weird, i'm not sure where my newlines went..
2021-01-01 19:11:03 +0100 <andytoshi> but anyway, this does exactly what i want
2021-01-01 19:11:39 +0100 <andytoshi> funny that i spent an hour reading about Applicative and Traversable and then in the end the solution was s/fmap/traverse/
2021-01-01 19:12:05 +0100rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds)
2021-01-01 19:17:45 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 19:18:08 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 19:19:22 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 19:23:21 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 19:35:45 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 19:36:10 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 19:37:34 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 19:37:56 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 19:37:56 +0100cwrbs(~jy@141.98.102.227)
2021-01-01 19:39:29 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 19:39:53 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 19:42:16 +0100everythingTaken(~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
2021-01-01 19:44:01 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 19:48:56 +0100ADG1089__(~aditya@223.235.213.117)
2021-01-01 19:55:14 +0100rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
2021-01-01 19:57:30 +0100 <Liskni_si> now imagine that you might spend two semesters studying category theory and then maybe you'll be able to squash that traverse and fmap together into something undecipherable but a bit shorter
2021-01-01 19:57:49 +0100 <Liskni_si> (kidding, of course)
2021-01-01 20:00:05 +0100 <andytoshi> /set beep_msg_level MSGS NOTICES INVITES DCC DCCMSGS HILIGHT
2021-01-01 20:00:10 +0100 <andytoshi> sorry
2021-01-01 20:00:44 +0100 <andytoshi> Liskni_si: lol! 2 or 3 times a year, i'll start reading a book on category or on haskell, and every time i get a little bit further
2021-01-01 20:01:31 +0100 <Liskni_si> I went to 3 or 4 lectures, and then decided to drop out :-)
2021-01-01 20:01:51 +0100 <andytoshi> this is the first time that i'm working on xmonad where i'm not just pasting snippits from other peoples' xmonad.hs files, or doing insane things like spawnPipe'ing shell scripts which just echo fixed values back to me
2021-01-01 20:02:01 +0100 <andytoshi> amazing how much more responsive my WM is now..
2021-01-01 20:03:39 +0100berberman_(~berberman@unaffiliated/berberman)
2021-01-01 20:04:13 +0100berberman(~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds)
2021-01-01 20:09:37 +0100Solidonly got into haskell because he was into category theory and heard about this weird computer language where some concepts may be applied
2021-01-01 20:09:44 +0100 <Solid> turns out I like programming :>
2021-01-01 20:11:09 +0100 <Liskni_si> at our uni Haskell was fp 101, compulsory for all in 1st semester
2021-01-01 20:11:31 +0100 <Liskni_si> I guess I got lucky with my education, in general
2021-01-01 20:12:53 +0100 <Solid> I think our cs students also learn a bit of haskell in their first year, but only a few weeks
2021-01-01 20:12:57 +0100 <Solid> barely covering the essentials
2021-01-01 20:13:03 +0100 <ElKowar> no haskell for us, sadly
2021-01-01 20:13:04 +0100 <Solid> I think not even getting into functors
2021-01-01 20:13:05 +0100 <ElKowar> only java
2021-01-01 20:13:18 +0100 <ElKowar> "Never use lambda syntax, as they hide what's going on under the hood"-style java
2021-01-01 20:13:21 +0100 <andytoshi> nice. yeah, i definitely wish someone had made me learn haskell back when i was in school
2021-01-01 20:13:21 +0100 <ElKowar> lol
2021-01-01 20:13:46 +0100 <ElKowar> We had a prof who was super fascinated by lisp, he kinda inspired me to do some googling and then eventually get into haskell
2021-01-01 20:13:51 +0100 <andytoshi> i'm sorta approaching haskell from both sides, using Rust and running into limitations of its type system on one side, and studying category theory from a math/physics perspective on the other
2021-01-01 20:15:01 +0100 <andytoshi> and i guess, being forced to use it by xmonad on the third side :)
2021-01-01 20:15:04 +0100 <Solid> I have to say I've always found haskell a bit boring from the category theory side
2021-01-01 20:15:19 +0100 <Solid> leaving aside the fact that Hask is not even a category, that is ;)
2021-01-01 20:15:53 +0100 <ElKowar> haskell has spoiled me. I can't touch lowlevel stuff anymore without being utterly disgusted by how dumb a lot of the issues that one faces there are
2021-01-01 20:16:12 +0100 <ElKowar> idk why, it isn't even directly related to haskell, but,... There are just too many dumb issues
2021-01-01 20:16:14 +0100 <ElKowar> in life
2021-01-01 20:16:43 +0100 <Liskni_si> that feeling will pass
2021-01-01 20:16:50 +0100 <ElKowar> bruh, i doubt it
2021-01-01 20:17:03 +0100 <Liskni_si> I used to be a Haskell snob when I was your age
2021-01-01 20:17:24 +0100 <Liskni_si> now I'm like "gimme an interesting problem in any tech I don't care lol"
2021-01-01 20:17:36 +0100 <ElKowar> I've been trying to figure out how to properly deal with grand-children processes for a month now. It seems that the POSIX spec pretty much expects you to just say "hey, yea, we're leaking processes everywhere, pleaaaaasee just reboot once in a while"
2021-01-01 20:17:42 +0100 <ElKowar> again, not actually language related
2021-01-01 20:17:48 +0100 <ElKowar> just nothing that I'd touch in a typical haskell project
2021-01-01 20:17:55 +0100 <ElKowar> so i associate nice high-level problems with haskell
2021-01-01 20:18:03 +0100 <ElKowar> and dumb lowlevel hacks with - in this case - rust
2021-01-01 20:18:07 +0100 <ElKowar> even though rust is beautiful
2021-01-01 20:18:36 +0100 <andytoshi> Liskni_si: curious what tech you use day-to-day ... i write a lot of C and it really does get in my way constantly
2021-01-01 20:19:07 +0100 <andytoshi> and Rust, which is tricksy because it's expressive enough to lure you into creating elaborate type structures, then it smacks you down with "no higher-kinded types" or its weird object-safety rules
2021-01-01 20:19:15 +0100 <andytoshi> but it is beautiful
2021-01-01 20:19:33 +0100 <Liskni_si> ElKowar: it's more like "real world impact = some amount of dumb low level hacks necessary somewhere"
2021-01-01 20:19:42 +0100 <ElKowar> big ooph
2021-01-01 20:20:08 +0100 <Liskni_si> andytoshi: there isn't any real day-to-day really :-)
2021-01-01 20:20:15 +0100 <ElKowar> in this case, I'm really just trying to run some simple, userprovided shell scripts without leaking processes. that _shouldn't_ be hard. but it's nearly impossible
2021-01-01 20:20:40 +0100 <ElKowar> also, for me a good bit of "real world" has been haskell recently, with a lot of xmonad stuff and reading more and more KMonad code
2021-01-01 20:20:46 +0100 <andytoshi> ElKowar: if you're on linux you can probably use control groups somehow
2021-01-01 20:20:54 +0100 <andytoshi> though i've never figured this out tbh
2021-01-01 20:21:14 +0100 <Solid> yay for reading kmonad code \o/
2021-01-01 20:21:27 +0100 <ElKowar> yea, "somehow",.... there is a way, but it seems as though noone has actually figured this out
2021-01-01 20:21:31 +0100 <Liskni_si> andytoshi: at my last day job I used to code Elixir and deal with some dockers and jenkinses, at the job before that I did a lot of bash and jenkins, plus a mix of python/java/perl/whatever was necessary to fix the random issue that came up
2021-01-01 20:21:38 +0100 <andytoshi> lol whoaaa what is kmonad
2021-01-01 20:22:07 +0100 <ElKowar> it's a keyboard remapping tool that tries to approximate the featureset that you could reach with a QMK firmware keyboard, written in haskell
2021-01-01 20:22:24 +0100 <Liskni_si> andytoshi: now... I am on sabbatical, so I mostly just hack xmonad and vim plugins and bash scripts in ~/bin and little python scripts that interact with dbus or google api or something
2021-01-01 20:22:29 +0100 <andytoshi> ah, so if i already have a QMK keyboard maybe i won't get much value out of it?
2021-01-01 20:22:39 +0100 <ElKowar> not really, yea
2021-01-01 20:22:53 +0100 <andytoshi> ah ok, at first i thought it might've been a QMK firmware written in haskell
2021-01-01 20:22:58 +0100 <andytoshi> which would've been pretty incredible
2021-01-01 20:23:03 +0100 <ElKowar> although, if u own a laptop, and are missing some of the features from your fancy keeb, then you can repliacte these features software side with KMOnad
2021-01-01 20:23:10 +0100 <ElKowar> which is what I'm mainly using it for
2021-01-01 20:23:26 +0100 <coldpress> so your laptop keyboard can have a numpad :)
2021-01-01 20:23:26 +0100 <andytoshi> yeah that's a good point, i do miss my good keyboarfd when i'm typing on airplanes
2021-01-01 20:23:32 +0100 <andytoshi> i also miss airplanes :P
2021-01-01 20:23:37 +0100 <ElKowar> yea, then play around with kmonad ;D
2021-01-01 20:24:44 +0100 <ElKowar> I've been considering to just take the core of KMonad (as in, the multiplatform stuff etc) and just turn that into an XMonad style "config via code" application,... but not sure how performant i could get the "let's write a filter over input sequences" approach I'm imagining for that
2021-01-01 20:25:37 +0100 <Liskni_si> ElKowar: regarding your grandchildren process, I think the state of the art is to use pidfds and cgroups, and it's that kind of thing you probably don't want to write from scratch unless at faang-scale, so trying to use systemd-run or something might be wise
2021-01-01 20:26:06 +0100 <Liskni_si> bwrap might be a systemd-less alternative to not leaking processes
2021-01-01 20:26:18 +0100 <Liskni_si> if you don't mind pid namespaces
2021-01-01 20:26:29 +0100 <Solid> kmonad should already *almost* be configurable in haskell
2021-01-01 20:26:32 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2021-01-01 20:26:33 +0100 <ElKowar> what I've been doing was a double fork to use process groups and so on, but,... it's just super super ugly - and now trying to make that async is gonna be horrible
2021-01-01 20:27:07 +0100 <Liskni_si> yeah it's a problem the linux process management world has been struggling with for dozens of years
2021-01-01 20:27:16 +0100 <Liskni_si> don't expect to solve it on your own in a month
2021-01-01 20:28:16 +0100 <ElKowar> I'm just still,... baffled by the fact that there is no proper solution. I have about 3 apps running this very second that _need_ that functionality, i.e. a bar that can run scripts to get data, a terminal, etc etc. and they all have to do that from scratch
2021-01-01 20:29:38 +0100 <Liskni_si> do they really _need_ it?
2021-01-01 20:29:49 +0100 <ElKowar> i mean, if they want to not leak processes, they do, no?
2021-01-01 20:29:54 +0100growpotkin(~growpotki@130-45-30-154.dyn.grandenetworks.net)
2021-01-01 20:30:19 +0100 <Liskni_si> probably, but you may fix the source of the leak instead
2021-01-01 20:30:36 +0100 <ElKowar> well, given that it's user provided scripts, I can't really
2021-01-01 20:30:38 +0100 <Liskni_si> or wrap it in a systemd service, let it leak and restart it once a day to clean up
2021-01-01 20:31:30 +0100 <Liskni_si> if it's a user code then you probably want a container-like isolation anyway
2021-01-01 20:31:37 +0100 <ElKowar> (my application is a widget system more comparable to polybar than to something server-side, so going systemd for stuffr like that would be a pretty anoying solution)
2021-01-01 20:32:15 +0100 <Liskni_si> well there's systemd-run which isn't all that annoying, provided you control the environment
2021-01-01 20:32:47 +0100 <Liskni_si> if you don't, then maybe bwrap or something like that
2021-01-01 20:32:49 +0100 <ElKowar> In this case i don't, sadly - don't want to depend on systemd being present, i.e. because mac support is also something i want to provide
2021-01-01 20:32:54 +0100 <ElKowar> bwrap could actually work, i guess
2021-01-01 20:33:01 +0100 <Liskni_si> bwrap is linux specific, too
2021-01-01 20:33:09 +0100 <ElKowar> :/
2021-01-01 20:33:42 +0100 <Liskni_si> but if this is just an open source project as opposed to a paid service, can't you just say that the user is responsible for the leaks?
2021-01-01 20:34:01 +0100 <Liskni_si> add a recommendation to monitor it, systemd it or containerize it, and be done
2021-01-01 20:34:39 +0100 <Liskni_si> (I almost feel ashamed of being so pragmatic, this is not the usual me, but it's a useful thought experiment anyway)
2021-01-01 20:34:48 +0100 <ElKowar> issue is that it isn't necessarily a "leak". the user just provides a shellscript, which may contain child processes, etc. If i terminate that script, i can't really have grand-children of that stay alive (as in, if the script is "tail whatever | foo", foo should not continue to live here)
2021-01-01 20:34:57 +0100 <Solid> (as a runit user, please don't add a systemd dependency if you don't absolutely have to)
2021-01-01 20:35:22 +0100 <ElKowar> it _shouldn't_ be an issue anyways, as the shell should handle child processes properly, but i did have issues with leaked processes in the past,....
2021-01-01 20:35:38 +0100 <ElKowar> i won't, solid, no worries :P
2021-01-01 20:36:12 +0100 <ElKowar> (general question, is off-topic like this acceptable here actually? We really completely lost any xmonad related context at this point xD)
2021-01-01 20:36:32 +0100 <Liskni_si> (I wouldn't suggest anyone to actually add a systemd dependency if this was an oss project, that's why I added "provided you control the environment" :-))
2021-01-01 20:37:17 +0100 <Solid> I think as long as there isn't an xmonad-related conversation we're completely plowing over, this kind of off-topic is fine
2021-01-01 20:37:42 +0100 <Liskni_si> as long as we're not disrupting any xmonad users from getting their well deserved (/s) free support, it should be totally acceptable :-)
2021-01-01 20:37:49 +0100 <ElKowar> Nice!
2021-01-01 20:38:43 +0100 <Liskni_si> some amount of off-topic is important for a community to work, for people to get to know each other
2021-01-01 20:39:28 +0100 <ElKowar> good point, actually
2021-01-01 20:41:14 +0100 <Liskni_si> (also, incidentally, grandchildren processes aren't all that off topic here, see #434 :-))
2021-01-01 20:47:27 +0100 <Solid> it's so funny we went through all this trouble in #434 and then completely forgot to actually add the function to the startup hook :D
2021-01-01 20:47:51 +0100 <mc47> wait what now?
2021-01-01 20:48:27 +0100 <Solid> oh I wrote your name wrong when I used ?tell
2021-01-01 20:48:50 +0100 <mc47> omg I totally forgot about that
2021-01-01 20:48:54 +0100 <Solid> yes in statusBarPropTo we only have `(spawnStatusBarAndRemember cmd)' as a startup hook, we never actually kill the bars
2021-01-01 20:49:03 +0100 <Solid> so we may want to fix that :P
2021-01-01 20:49:20 +0100 <mc47> totally, Ill quickly push something
2021-01-01 20:49:24 +0100 <Liskni_si> to be fair the documentation does look like people are supposed to use cleanupStatusBars
2021-01-01 20:49:32 +0100 <Liskni_si> but it's not good UX
2021-01-01 20:49:41 +0100 <mc47> Yeah, we should add it
2021-01-01 20:50:25 +0100 <mc47> I didn't really test the final version because I have already started using a datatype for status bars in my config to see how it would look like
2021-01-01 20:50:51 +0100 <mc47> by datatype I mean a record
2021-01-01 20:52:21 +0100 <mc47> And tbh, I like the idea :-) I'll make a PR soon
2021-01-01 20:57:06 +0100ADG1089__(~aditya@223.235.213.117) (Remote host closed the connection)
2021-01-01 21:03:50 +0100 <Solid> sounds good; how are you handling the keybindings?
2021-01-01 21:04:02 +0100 <Solid> I remember you wanted more freedom instead of only a toggle struts key
2021-01-01 21:05:31 +0100 <mc47> I defined a record with 4 things: a log-hook, a startHook, a key and an action
2021-01-01 21:06:30 +0100 <mc47> And basically just made makeStatusBar take that as an argument instead
2021-01-01 21:07:04 +0100 <mc47> the "nice" thing is that now, there's a nice direct way of combining status bars :-)
2021-01-01 21:07:12 +0100 <mc47> Here's the code I'm currently using
2021-01-01 21:07:13 +0100 <mc47> https://github.com/TheMC47/dotfiles/blob/master/.xmonad/src/Config.hs#L358
2021-01-01 21:07:49 +0100 <mc47> I like the fact that I can write `combineStatusBars [xmobarTop, xmobarBottom] conf` instead of doing all the plumbing manually
2021-01-01 21:18:13 +0100cwrbs(~jy@141.98.102.227) (Ping timeout: 246 seconds)
2021-01-01 21:19:58 +0100bendo_(~bendo@130.61.122.121)
2021-01-01 21:23:26 +0100bendo(~bendo@130.61.122.121) (Ping timeout: 264 seconds)
2021-01-01 21:24:23 +0100bendo_bendo
2021-01-01 21:31:53 +0100cwrbs(~jy@178.162.209.171)
2021-01-01 21:39:38 +0100Shiranai(beed0d74@gateway/web/cgi-irc/kiwiirc.com/ip.190.237.13.116) (Quit: Connection closed)
2021-01-01 21:41:54 +0100al3x27(~plovs@85.254.75.157)
2021-01-01 21:43:13 +0100byorgey(~byorgey@155.138.238.211)
2021-01-01 21:46:37 +0100cwrbs(~jy@178.162.209.171) (Ping timeout: 260 seconds)
2021-01-01 22:00:33 +0100mc47(~yecinem@89.246.239.190) (Remote host closed the connection)
2021-01-01 22:13:50 +0100al3x27(~plovs@85.254.75.157) (Quit: WeeChat 3.0)
2021-01-01 22:26:57 +0100geekosaur(ae68c070@cpe-174-104-192-112.neo.res.rr.com) (Remote host closed the connection)
2021-01-01 22:27:24 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Quit: WeeChat 2.8)
2021-01-01 22:27:34 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2021-01-01 22:28:58 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Client Quit)
2021-01-01 22:29:07 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)
2021-01-01 22:33:38 +0100xaltsc(~xaltsc@unaffiliated/xaltsc) (Ping timeout: 264 seconds)
2021-01-01 22:52:57 +0100xaltsc(~xaltsc@unaffiliated/xaltsc)
2021-01-01 22:57:06 +0100FrostyX(~jkadlcik@78.80.183.78)
2021-01-01 23:07:13 +0100dmwit(~dmwit@pool-108-18-106-204.washdc.fios.verizon.net)
2021-01-01 23:42:24 +0100naom(~dingo@srvnet-01-080.ikbnet.co.at)
2021-01-01 23:42:38 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 256 seconds)
2021-01-01 23:43:58 +0100 <Liskni_si> ?tell everythingTaken please try https://github.com/xmonad/xmonad-contrib/pull/440
2021-01-01 23:43:58 +0100 <lambdabot> Consider it noted.
2021-01-01 23:46:23 +0100 <Liskni_si> I wonder if there's a thing that goes through the list of open github issues and shows stats of thumbs-up and comments
2021-01-01 23:46:58 +0100 <Liskni_si> maybe not worth the haslle for the 60 issues that we have
2021-01-01 23:47:49 +0100 <Liskni_si> but it might make maintenance easier
2021-01-01 23:47:51 +0100 <Liskni_si> or something
2021-01-01 23:51:35 +0100ddellacosta(dd@gateway/vpn/mullvad/ddellacosta)