Home freenode/#xmonad: Logs Calendar

Logs on 2021-01-01 (freenode/#xmonad)

00:16:45 <andytoshi> whew, i did it. though i really don't know haskell :P
00:17:17 <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
00:30:16 cwrbs joins (~jy@217.64.127.195)
00:35:35 × notis quits (~notis@185.51.134.229) (Read error: Connection reset by peer)
00:38:35 notis joins (~notis@45.134.22.65)
00:40:42 ElKowar parts (~ElKowar@p3e9d26c7.dip0.t-ipconnect.de) ()
00:44:10 × seschwar quits (~seschwar@unaffiliated/seschwar) (Quit: :wq)
01:16:52 × notis quits (~notis@45.134.22.65) (Ping timeout: 246 seconds)
02:21:46 <andytoshi> is there a way that i can change the background color of the whole xmobar?
02:34:01 × cwrbs quits (~jy@217.64.127.195) (Ping timeout: 256 seconds)
03:02:08 abhixec joins (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
03:30:18 × thunderrd quits (~thunderrd@183.182.111.131) (Remote host closed the connection)
03:52:56 × theDon quits (~td@94.134.91.248) (Ping timeout: 256 seconds)
03:54:23 theDon joins (~td@muedsl-82-207-238-228.citykom.de)
04:36:37 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
05:02:08 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
05:05:41 ADG1089__ joins (~aditya@223.235.213.117)
05:16:50 thunderrd joins (~thunderrd@183.182.111.131)
05:33:07 thoros joins (~thoros@194-96-55-156.hdsl.highway.telekom.at)
06:01:22 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
06:09:00 × abhixec quits (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 272 seconds)
06:26:26 palo1 joins (~weechat@c-base/crew/palo)
06:27:44 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
06:28:07 ADG1089__ joins (~aditya@223.235.213.117)
06:29:38 × thunderrd quits (~thunderrd@183.182.111.131) (Remote host closed the connection)
06:29:42 × palo quits (~weechat@c-base/crew/palo) (Ping timeout: 260 seconds)
06:29:42 palo1 is now known as palo
06:30:09 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
06:30:36 ADG1089__ joins (~aditya@223.235.213.117)
06:34:45 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
06:38:37 ADG1089__ joins (~aditya@223.235.213.117)
06:38:50 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
06:39:11 ADG1089__ joins (~aditya@223.235.213.117)
06:44:28 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
06:45:03 ADG1089__ joins (~aditya@223.235.213.117)
06:45:24 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
06:46:05 ADG1089__ joins (~aditya@223.235.213.117)
06:51:00 <xacktm> andytoshi: xmobar has its own rc dotfile to config stuff
07:01:49 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
07:02:18 ADG1089__ joins (~aditya@223.235.213.117)
07:02:29 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
07:15:36 ADG1089__ joins (~aditya@223.235.213.117)
07:16:50 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
07:33:27 ADG1089__ joins (~aditya@223.235.213.117)
07:40:08 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
07:45:36 ADG1089__ joins (~aditya@223.235.213.117)
07:49:09 × ADG1089__ quits (~aditya@223.235.213.117) (Client Quit)
07:54:40 × growpotkin quits (~growpotki@130-45-30-154.dyn.grandenetworks.net) (Quit: ZNC 1.8.2 - https://znc.in)
07:56:10 ADG1089__ joins (~aditya@223.235.213.117)
08:00:03 <novas0x2a> Happy New Year!
08:03:48 thunderrd joins (~thunderrd@183.182.111.131)
08:09:24 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
08:10:01 ADG1089__ joins (~aditya@223.235.213.117)
08:13:24 <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
08:27:24 <Solid> ADG1089__: xmonad doesn't do anything with regards to theming, you may want to try to set the theme with something like lxappearance
08:27:36 <Solid> you can also look into using xmonad as a wm inside kde, if you want that
08:27:47 <Solid> novas0x2a: happy new year to you too! :)
08:32:06 × thunderrd quits (~thunderrd@183.182.111.131) (Ping timeout: 246 seconds)
08:40:58 thunderrd joins (~thunderrd@183.182.111.131)
08:46:32 <ADG1089__> Solid: I tried that but it will require me to disable kde taskbar, shortcuts, switcher
08:47:11 <ADG1089__> also xmobar didn't start for some reason as it couldn't find files even with absolute paths
08:47:15 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
08:47:58 × thunderrd quits (~thunderrd@183.182.111.131) (Read error: Connection reset by peer)
08:48:17 thunderrd joins (~thunderrd@183.182.111.131)
08:53:11 × thunderrd quits (~thunderrd@183.182.111.131) (Remote host closed the connection)
08:54:11 thunderrd joins (~thunderrd@183.182.111.131)
09:01:31 notis joins (~notis@45.134.22.54)
09:04:53 × thunderrd quits (~thunderrd@183.182.111.131) (Remote host closed the connection)
09:06:29 ADG1089__ joins (~aditya@223.235.213.117)
09:24:04 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
09:24:32 ADG1089__ joins (~aditya@223.235.213.117)
09:53:40 <everythingTaken> smartBorders doesn't work with dual screen setup, single apps display borders, anyone came across this?
09:55:09 <everythingTaken> works with single screen
09:55:49 <everythingTaken> it's as if xmonad treets the second screen as extension
09:56:05 <everythingTaken> of current one, thus thinks there is more than one app
10:01:38 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
10:03:28 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
10:08:01 remediable joins (~sid320609@103.154.98.31)
10:16:23 <Solid> everythingTaken: `smartBorders' explicitly mentions "Removes the borders from a window under one of the following conditions:
10:16:25 <Solid> There is only one screen and only one window.
10:17:13 <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:SetsAmbiguous
10:24:18 <ADG1089__> does anyone know how to solve this problem: `xmobar: ***/xmobar/xmobarrc: hGetContents: invalid argument (invalid byte sequence)`
10:24:24 <ADG1089__> same happening with brittany
10:25:24 <Liskni_si> Probably a non-utf locale?
10:34:23 <ADG1089__> locale gives en_IN.UTF-8 (although with 3 warnings about LC_ALL, ..., ...)
10:36:45 × notis quits (~notis@45.134.22.54) (Ping timeout: 240 seconds)
10:40:20 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
10:41:36 ADG1089__ joins (~aditya@223.235.213.117)
10:43:34 <everythingTaken> Solid: thanks, how would the parameter be for lessBorders (SetsAmbigious instance)
10:44:23 <everythingTaken> something like any screen where 1 window?
10:54:31 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
10:55:51 fortuneteller2k joins (~fortunete@49.148.214.29)
10:57:38 <Solid> everythingTaken: no idea, I've not used borders in a while; try it out! :D
11:00:00 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
11:00:17 × fortuneteller2k quits (~fortunete@49.148.214.29) (Quit: WeeChat 3.0)
11:02:47 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
11:04:39 ADG1089__ joins (~aditya@223.235.213.117)
11:07:16 <everythingTaken> Solid: thanks, will check it out
11:09:20 <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)"
11:09:35 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
11:10:07 ADG1089_ joins (~adg1089@223.235.213.117)
11:10:52 ADG1089__ joins (~aditya@223.235.213.117)
11:11:41 <Liskni_si> ADG1089__: there's probably some invalid byte or something in the config file
11:11:59 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
11:19:15 <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?
11:19:42 <Liskni_si> ADG1089__: if you're getting those warnings maybe your locales are broken
11:20:12 <Liskni_si> changing a locale might help, but you'll have to fix the locales anyway.
11:21:12 <ADG1089__> I think kde is setting my locale to en_IN.UTF-8 while I installed with en_US.UTF-8
11:22:30 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
11:22:50 thunderrd joins (~thunderrd@183.182.111.131)
11:23:30 ADG1089__ joins (~aditya@223.235.213.117)
11:23:49 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
11:24:50 ADG1089__ joins (~aditya@223.235.213.117)
11:27:13 <ADG1089__> Liskni_si: it works now with en_US.UTF-8
11:27:16 <ADG1089__> thanks!
11:28:44 <Liskni_si> ADG1089__: well then you might need to enable the en_IN.UTF-8 in glibc
11:29:00 <Liskni_si> that would be dpkg-reconfigure locales, if you're on debian
11:29:14 <ADG1089__> i'm on arch. I think it's locale-gen
11:30:26 <Liskni_si> arch wiki will surely have the most up to date info on how it's supposed to be done there
11:30:49 <Liskni_si> locale-gen seems like a tool that one might not want to invoke manualy, but then, it's arch, so... :-)
11:31:32 <Solid> down with locales!
11:32:43 notis joins (~notis@45.134.22.65)
11:33:03 cwrbs joins (~jy@134.19.179.139)
11:35:22 <ADG1089__> I think the problem was kde enabled en_IN but did not generate it first
11:36:25 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
11:36:57 ADG1089__ joins (~aditya@223.235.213.117)
11:50:30 seschwar joins (~seschwar@unaffiliated/seschwar)
11:51:46 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
11:51:46 × cwrbs quits (~jy@134.19.179.139) (Ping timeout: 256 seconds)
11:52:32 ADG1089__ joins (~aditya@223.235.213.117)
12:04:55 cwrbs joins (~jy@184.75.223.195)
12:09:56 × cwrbs quits (~jy@184.75.223.195) (Ping timeout: 265 seconds)
12:21:18 ElKowar joins (~ElKowar@p3e9d26c7.dip0.t-ipconnect.de)
12:21:57 cwrbs joins (~jy@184.75.221.195)
12:33:06 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
12:36:38 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Client Quit)
12:40:06 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
12:41:06 <everythingTaken> Liskni_si: hi
12:47:02 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
12:47:24 <Liskni_si> everythingTaken: hi
12:47:32 ADG1089__ joins (~aditya@223.235.213.117)
12:49:41 <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?
12:50:41 <everythingTaken> options are: Combine
12:50:44 <everythingTaken> OnlyLayoutFloatBelow
12:50:46 <everythingTaken> OnlyLayoutFloat
12:50:48 <everythingTaken> Never
12:50:50 <everythingTaken> EmptyScreen
12:50:53 <everythingTaken> OtherIndicated
12:50:54 <everythingTaken> Screen
12:50:59 <everythingTaken> could you take a look if you have a moment?
12:57:01 <Liskni_si> everythingTaken: seems to me that any of the Only* options should work
12:57:11 <Liskni_si> but that's just a guess from reading the docs
12:57:28 <Liskni_si> probably best if you try them out and stick with what works
12:57:50 <everythingTaken> Liskni_si: none of them worked, wouldnt OnlyLayoutFloat only apply to float layouts?
12:59:00 <Liskni_si> oh, if you want to remove borders from non-floating windows, then dunno
12:59:12 <Liskni_si> it's certainly possible it's a missing feature
12:59:21 <everythingTaken> it's weird that this was never brought much anywhere on net
12:59:22 × cwrbs quits (~jy@184.75.221.195) (Ping timeout: 260 seconds)
12:59:36 <everythingTaken> I mean in docs etc, seems like a favorable feature
12:59:47 <everythingTaken> couldnt find much googling about it
13:16:38 × werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 265 seconds)
13:18:10 werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
13:26:22 × ADG1089_ quits (~adg1089@223.235.213.117) (Read error: Connection reset by peer)
13:39:01 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
13:39:37 ADG1089_ joins (~adg1089@223.235.213.117)
13:42:15 ADG1089__ joins (~aditya@223.235.213.117)
13:51:55 rekahsoft joins (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
13:52:55 rekahsoft` joins (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
13:53:20 rekahsoft`` joins (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
13:53:39 × rekahsoft quits (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
13:54:05 × rekahsoft`` quits (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
14:18:23 × ADG1089_ quits (~adg1089@223.235.213.117) (Ping timeout: 256 seconds)
14:19:19 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
14:20:09 ADG1089_ joins (~adg1089@223.235.213.117)
14:21:33 ashbreeze joins (~mark@64.85.214.234.reverse.socket.net)
14:21:55 × ashbreeze quits (~mark@64.85.214.234.reverse.socket.net) (Remote host closed the connection)
14:21:56 × _ashbreeze_ quits (~mark@64.85.214.234.reverse.socket.net) (Read error: Connection reset by peer)
14:22:04 kelnoky joins (~shao@ip1f1222c4.dynamic.kabel-deutschland.de)
14:23:10 _ashbreeze_ joins (~mark@64.85.214.234.reverse.socket.net)
14:24:01 ADG1089__ joins (~aditya@223.235.213.117)
14:39:31 rekahsoft joins (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
14:40:11 × rekahsoft` quits (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
14:40:11 × rekahsoft quits (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
14:57:24 × ADG1089_ quits (~adg1089@223.235.213.117) (Ping timeout: 256 seconds)
14:57:30 geekosaur joins (ae68c070@cpe-174-104-192-112.neo.res.rr.com)
15:11:41 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
15:22:16 × ADG1089__ quits (~aditya@223.235.213.117) (Ping timeout: 240 seconds)
15:34:45 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
15:38:09 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Client Quit)
15:38:37 × andytoshi quits (~apoelstra@unaffiliated/andytoshi) (Ping timeout: 264 seconds)
15:42:55 <Solid> Liskni_si: I've been looking into xmonadpropread.hs and I have to say I don't quite... get what the point is
15:43:31 <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?
15:52:37 rekahsoft joins (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
15:54:29 × rekahsoft quits (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
15:54:47 rekahsoft joins (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a)
15:55:02 × rekahsoft quits (~rekahsoft@2607:fea8:44e0:66:d2b:b420:6883:8a3a) (Remote host closed the connection)
15:56:18 <Liskni_si> Solid: yes, but freezing of the status bar no longer freezes xmonad then
15:56:39 <Liskni_si> only xmonadpropread will get stuck until someone unstucks the status bar
15:58:06 cwrbs joins (~jy@178.162.204.214)
15:59:05 everythingTaken joins (~everythin@gateway/tor-sasl/everythingtaken)
15:59:29 <Solid> oooooh of course, because it's a script
15:59:30 <Solid> derp
15:59:55 <Solid> that makes sense, thanks :)
16:00:05 × CRTified[m] quits (schnecfkru@gateway/shell/matrix.org/x-vrozfuovpxunwnos) (Quit: Idle for 30+ days)
16:05:04 andytoshi joins (~apoelstra@wpsoftware.net)
16:05:04 × andytoshi quits (~apoelstra@wpsoftware.net) (Changing host)
16:05:04 andytoshi joins (~apoelstra@unaffiliated/andytoshi)
16:16:37 <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.
16:17:09 <everythingTaken> been googling for hours, cant find single solution but rather few other people looking for same issue
16:18:05 <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.
16:20:05 <andytoshi> i have a haskell question ... i am trying to write a function xmobarPipes :: Int -> IO [(Handle, ScreenId)]
16:20:21 <andytoshi> which will spawn a given number of xmobars associated with what screens they're on
16:20:33 <andytoshi> my code is
16:20:34 <andytoshi> xmobarPipes nScreens =
16:20:34 <andytoshi> fmap (\n -> (do
16:20:34 <andytoshi> pipe <- spawnPipe ("xmobar -x " ++ show n)
16:20:34 <andytoshi> return (pipe, n))) [0 .. nScreens - 1]
16:20:41 <everythingTaken> Liskni_si: will have to learn Haskell for that :/
16:21:07 <andytoshi> which i would expect to return a [IO (Handle, ScreenId)] (which is still not what i want, but i'm getting close maybe..)
16:21:29 <Solid> in any case, this seems like a pretty big oversight if it's not easily possible
16:21:36 <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?
16:21:53 <Solid> I've always felt that this ambiguity approach was a little overly complicated for something as simple as deciding where to draw borders
16:22:03 <Solid> but, alas, that's how it is
16:22:27 <geekosaur> andytoshi, it's forced by your use of fmap. you want mapM or traverse
16:23:15 × kelnoky quits (~shao@ip1f1222c4.dynamic.kabel-deutschland.de) (Quit: WeeChat 3.0)
16:23:40 <andytoshi> thanks geekosaur! i'll look those up
16:23:57 <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
16:24:57 <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?
16:28:00 <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
16:29:37 <everythingTaken> haven't tested it myself
16:37:49 ADG1089__ joins (~aditya@223.235.213.117)
16:39:20 <Liskni_si> well OnlyScreenFloat definitely doesn't seem to work as described here
16:39:27 <Liskni_si> so there indeed is a bug, I think
16:42:36 <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.
16:42:45 <Solid> this may be the issue
16:43:11 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
16:43:24 <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
16:44:06 <Solid> i.e. this is probably not equally valid for multihead setups
16:44:12 <Solid> sigh
16:44:30 <Liskni_si> I can't find the code that filters the other screen's floats out
16:44:55 <Liskni_si> and I actually think this should work correctly even without the global view
16:45:31 <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
16:49:29 <Liskni_si> also it seems to never use any other screen rect than the one on currently focused screen
16:49:39 <Liskni_si> that can't possibly ever have worked.
16:53:10 <Liskni_si> oh, found the filtering
16:55:00 × ADG1089__ quits (~aditya@223.235.213.117) (Ping timeout: 272 seconds)
16:59:39 ADG1089__ joins (~aditya@223.235.213.117)
17:05:36 <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
17:07:11 <everythingTaken> fullscreenEventHook makes all workspaces & windows fullscreen hmm
17:07:15 <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
17:09:02 <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?
17:09:25 <Liskni_si> everythingTaken: it's the other way round, xmonad didn't use to announce it supports that
17:09:40 <Liskni_si> but this is indeed fixed in git and will be fixed in the next release
17:10:35 × cwrbs quits (~jy@178.162.204.214) (Ping timeout: 256 seconds)
17:11:13 <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
17:12:25 <everythingTaken> it hides the bar
17:12:35 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
17:12:57 ADG1089__ joins (~aditya@223.235.213.117)
17:13:20 <everythingTaken> firefox goes fullscreen with F11 but mpv doesnt when clicked fullscreen
17:14:44 <everythingTaken> avoidStruts seems to be not working with fullscreenEventHook, empty workspace has the bar, but if there is a window no
17:16:51 <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
17:43:07 × ADG1089__ quits (~aditya@223.235.213.117) (Quit: Konversation terminated!)
17:44:57 Shiranai joins (beed0d74@gateway/web/cgi-irc/kiwiirc.com/ip.190.237.13.116)
17:47:00 ADG1089__ joins (~aditya@223.235.213.117)
17:47:07 <Liskni_si> Solid: are you still looking into NoBorders?
17:47:30 kelnoky joins (~shao@ip1f1222c4.dynamic.kabel-deutschland.de)
17:48:01 <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
17:50:32 mc47 joins (~yecinem@89.246.239.190)
18:00:54 <Solid> Liskni_si: I am not, but you seem to be right
18:00:59 <Solid> that's... weird
18:01:08 <Liskni_si> it's not that weird really
18:01:26 <Liskni_si> the comment suggests multihead wasn't really considered by the author
18:01:44 <Solid> well the comment also says "should work"
18:02:05 <Liskni_si> and there is no straightforward way to get the screen in redoLayout
18:02:31 <Liskni_si> the comment only says the concept of not looking at all windows makes sense in multihead setup
18:02:49 <Liskni_si> doesn't really claim the implementation works in such setup :-)
18:03:07 <Solid> hah
18:06:12 <Solid> <Liskni_si> and there is no straightforward way to get the screen in redoLayout << can't we just query the WindowSet?
18:07:48 <Liskni_si> that's exactly what the code does now
18:07:56 <Liskni_si> wset has the focused screen
18:08:25 <Liskni_si> but the screen that's being runLayouted is only passed to modifyLayout(WithUpdate), not to redoLayout
18:08:25 <Solid> but we can get the others screen as well then, no?
18:08:37 <Solid> ah I see
18:08:45 <Liskni_si> well, yeah, sure, but I don't think we want
18:09:01 <Liskni_si> the comment is correct that we should only be looking at the workspace in question
18:09:13 <Liskni_si> I'll figure something out after dinner
18:10:32 <andytoshi> geekosaur: thanks! my new code is
18:10:32 <andytoshi> xmobarPipes nScreens = traverse (\n -> fmap (\pipe -> (pipe, S n)) $ spawnPipe ("xmobar -x " ++ show n)) [0 .. nScreens - 1]
18:10:56 <andytoshi> weird, i'm not sure where my newlines went..
18:11:03 <andytoshi> but anyway, this does exactly what i want
18:11:39 <andytoshi> funny that i spent an hour reading about Applicative and Traversable and then in the end the solution was s/fmap/traverse/
18:12:05 × rekahsoft quits (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds)
18:17:45 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
18:18:08 ADG1089__ joins (~aditya@223.235.213.117)
18:19:22 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
18:23:21 ADG1089__ joins (~aditya@223.235.213.117)
18:35:45 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
18:36:10 ADG1089__ joins (~aditya@223.235.213.117)
18:37:34 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
18:37:56 ADG1089__ joins (~aditya@223.235.213.117)
18:37:56 cwrbs joins (~jy@141.98.102.227)
18:39:29 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
18:39:53 ADG1089__ joins (~aditya@223.235.213.117)
18:42:16 × everythingTaken quits (~everythin@gateway/tor-sasl/everythingtaken) (Quit: everythingTaken)
18:44:01 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
18:48:56 ADG1089__ joins (~aditya@223.235.213.117)
18:55:14 rekahsoft joins (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com)
18:57:30 <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
18:57:49 <Liskni_si> (kidding, of course)
19:00:05 <andytoshi> /set beep_msg_level MSGS NOTICES INVITES DCC DCCMSGS HILIGHT
19:00:10 <andytoshi> sorry
19:00:44 <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
19:01:31 <Liskni_si> I went to 3 or 4 lectures, and then decided to drop out :-)
19:01:51 <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
19:02:01 <andytoshi> amazing how much more responsive my WM is now..
19:03:39 berberman_ joins (~berberman@unaffiliated/berberman)
19:04:13 × berberman quits (~berberman@unaffiliated/berberman) (Ping timeout: 260 seconds)
19:09:37 Solid only got into haskell because he was into category theory and heard about this weird computer language where some concepts may be applied
19:09:44 <Solid> turns out I like programming :>
19:11:09 <Liskni_si> at our uni Haskell was fp 101, compulsory for all in 1st semester
19:11:31 <Liskni_si> I guess I got lucky with my education, in general
19:12:53 <Solid> I think our cs students also learn a bit of haskell in their first year, but only a few weeks
19:12:57 <Solid> barely covering the essentials
19:13:03 <ElKowar> no haskell for us, sadly
19:13:04 <Solid> I think not even getting into functors
19:13:05 <ElKowar> only java
19:13:18 <ElKowar> "Never use lambda syntax, as they hide what's going on under the hood"-style java
19:13:21 <andytoshi> nice. yeah, i definitely wish someone had made me learn haskell back when i was in school
19:13:21 <ElKowar> lol
19:13:46 <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
19:13:51 <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
19:15:01 <andytoshi> and i guess, being forced to use it by xmonad on the third side :)
19:15:04 <Solid> I have to say I've always found haskell a bit boring from the category theory side
19:15:19 <Solid> leaving aside the fact that Hask is not even a category, that is ;)
19:15:53 <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
19:16:12 <ElKowar> idk why, it isn't even directly related to haskell, but,... There are just too many dumb issues
19:16:14 <ElKowar> in life
19:16:43 <Liskni_si> that feeling will pass
19:16:50 <ElKowar> bruh, i doubt it
19:17:03 <Liskni_si> I used to be a Haskell snob when I was your age
19:17:24 <Liskni_si> now I'm like "gimme an interesting problem in any tech I don't care lol"
19:17:36 <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"
19:17:42 <ElKowar> again, not actually language related
19:17:48 <ElKowar> just nothing that I'd touch in a typical haskell project
19:17:55 <ElKowar> so i associate nice high-level problems with haskell
19:18:03 <ElKowar> and dumb lowlevel hacks with - in this case - rust
19:18:07 <ElKowar> even though rust is beautiful
19:18:36 <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
19:19:07 <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
19:19:15 <andytoshi> but it is beautiful
19:19:33 <Liskni_si> ElKowar: it's more like "real world impact = some amount of dumb low level hacks necessary somewhere"
19:19:42 <ElKowar> big ooph
19:20:08 <Liskni_si> andytoshi: there isn't any real day-to-day really :-)
19:20:15 <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
19:20:40 <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
19:20:46 <andytoshi> ElKowar: if you're on linux you can probably use control groups somehow
19:20:54 <andytoshi> though i've never figured this out tbh
19:21:14 <Solid> yay for reading kmonad code \o/
19:21:27 <ElKowar> yea, "somehow",.... there is a way, but it seems as though noone has actually figured this out
19:21:31 <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
19:21:38 <andytoshi> lol whoaaa what is kmonad
19:22:07 <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
19:22:24 <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
19:22:29 <andytoshi> ah, so if i already have a QMK keyboard maybe i won't get much value out of it?
19:22:39 <ElKowar> not really, yea
19:22:53 <andytoshi> ah ok, at first i thought it might've been a QMK firmware written in haskell
19:22:58 <andytoshi> which would've been pretty incredible
19:23:03 <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
19:23:10 <ElKowar> which is what I'm mainly using it for
19:23:26 <coldpress> so your laptop keyboard can have a numpad :)
19:23:26 <andytoshi> yeah that's a good point, i do miss my good keyboarfd when i'm typing on airplanes
19:23:32 <andytoshi> i also miss airplanes :P
19:23:37 <ElKowar> yea, then play around with kmonad ;D
19:24:44 <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
19:25:37 <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
19:26:06 <Liskni_si> bwrap might be a systemd-less alternative to not leaking processes
19:26:18 <Liskni_si> if you don't mind pid namespaces
19:26:29 <Solid> kmonad should already *almost* be configurable in haskell
19:26:32 ddellacosta joins (dd@gateway/vpn/mullvad/ddellacosta)
19:26:33 <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
19:27:07 <Liskni_si> yeah it's a problem the linux process management world has been struggling with for dozens of years
19:27:16 <Liskni_si> don't expect to solve it on your own in a month
19:28:16 <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
19:29:38 <Liskni_si> do they really _need_ it?
19:29:49 <ElKowar> i mean, if they want to not leak processes, they do, no?
19:29:54 growpotkin joins (~growpotki@130-45-30-154.dyn.grandenetworks.net)
19:30:19 <Liskni_si> probably, but you may fix the source of the leak instead
19:30:36 <ElKowar> well, given that it's user provided scripts, I can't really
19:30:38 <Liskni_si> or wrap it in a systemd service, let it leak and restart it once a day to clean up
19:31:30 <Liskni_si> if it's a user code then you probably want a container-like isolation anyway
19:31:37 <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)
19:32:15 <Liskni_si> well there's systemd-run which isn't all that annoying, provided you control the environment
19:32:47 <Liskni_si> if you don't, then maybe bwrap or something like that
19:32:49 <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
19:32:54 <ElKowar> bwrap could actually work, i guess
19:33:01 <Liskni_si> bwrap is linux specific, too
19:33:09 <ElKowar> :/
19:33:42 <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?
19:34:01 <Liskni_si> add a recommendation to monitor it, systemd it or containerize it, and be done
19:34:39 <Liskni_si> (I almost feel ashamed of being so pragmatic, this is not the usual me, but it's a useful thought experiment anyway)
19:34:48 <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)
19:34:57 <Solid> (as a runit user, please don't add a systemd dependency if you don't absolutely have to)
19:35:22 <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,....
19:35:38 <ElKowar> i won't, solid, no worries :P
19:36:12 <ElKowar> (general question, is off-topic like this acceptable here actually? We really completely lost any xmonad related context at this point xD)
19:36:32 <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" :-))
19:37:17 <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
19:37:42 <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 :-)
19:37:49 <ElKowar> Nice!
19:38:43 <Liskni_si> some amount of off-topic is important for a community to work, for people to get to know each other
19:39:28 <ElKowar> good point, actually
19:41:14 <Liskni_si> (also, incidentally, grandchildren processes aren't all that off topic here, see #434 :-))
19:47:27 <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
19:47:51 <mc47> wait what now?
19:48:27 <Solid> oh I wrote your name wrong when I used ?tell
19:48:50 <mc47> omg I totally forgot about that
19:48:54 <Solid> yes in statusBarPropTo we only have `(spawnStatusBarAndRemember cmd)' as a startup hook, we never actually kill the bars
19:49:03 <Solid> so we may want to fix that :P
19:49:20 <mc47> totally, Ill quickly push something
19:49:24 <Liskni_si> to be fair the documentation does look like people are supposed to use cleanupStatusBars
19:49:32 <Liskni_si> but it's not good UX
19:49:41 <mc47> Yeah, we should add it
19:50:25 <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
19:50:51 <mc47> by datatype I mean a record
19:52:21 <mc47> And tbh, I like the idea :-) I'll make a PR soon
19:57:06 × ADG1089__ quits (~aditya@223.235.213.117) (Remote host closed the connection)
20:03:50 <Solid> sounds good; how are you handling the keybindings?
20:04:02 <Solid> I remember you wanted more freedom instead of only a toggle struts key
20:05:31 <mc47> I defined a record with 4 things: a log-hook, a startHook, a key and an action
20:06:30 <mc47> And basically just made makeStatusBar take that as an argument instead
20:07:04 <mc47> the "nice" thing is that now, there's a nice direct way of combining status bars :-)
20:07:12 <mc47> Here's the code I'm currently using
20:07:13 <mc47> https://github.com/TheMC47/dotfiles/blob/master/.xmonad/src/Config.hs#L358
20:07:49 <mc47> I like the fact that I can write `combineStatusBars [xmobarTop, xmobarBottom] conf` instead of doing all the plumbing manually
20:18:13 × cwrbs quits (~jy@141.98.102.227) (Ping timeout: 246 seconds)
20:19:58 bendo_ joins (~bendo@130.61.122.121)
20:23:26 × bendo quits (~bendo@130.61.122.121) (Ping timeout: 264 seconds)
20:24:23 bendo_ is now known as bendo
20:31:53 cwrbs joins (~jy@178.162.209.171)
20:39:38 × Shiranai quits (beed0d74@gateway/web/cgi-irc/kiwiirc.com/ip.190.237.13.116) (Quit: Connection closed)
20:41:54 al3x27 joins (~plovs@85.254.75.157)
20:43:13 byorgey joins (~byorgey@155.138.238.211)
20:46:37 × cwrbs quits (~jy@178.162.209.171) (Ping timeout: 260 seconds)
21:00:33 × mc47 quits (~yecinem@89.246.239.190) (Remote host closed the connection)
21:13:50 × al3x27 quits (~plovs@85.254.75.157) (Quit: WeeChat 3.0)
21:26:57 × geekosaur quits (ae68c070@cpe-174-104-192-112.neo.res.rr.com) (Remote host closed the connection)
21:27:24 × ddellacosta quits (dd@gateway/vpn/mullvad/ddellacosta) (Quit: WeeChat 2.8)
21:27:34 ddellacosta joins (dd@gateway/vpn/mullvad/ddellacosta)
21:28:58 × ddellacosta quits (dd@gateway/vpn/mullvad/ddellacosta) (Client Quit)
21:29:07 ddellacosta joins (dd@gateway/vpn/mullvad/ddellacosta)
21:33:38 × xaltsc quits (~xaltsc@unaffiliated/xaltsc) (Ping timeout: 264 seconds)
21:52:57 xaltsc joins (~xaltsc@unaffiliated/xaltsc)
21:57:06 FrostyX joins (~jkadlcik@78.80.183.78)
22:07:13 dmwit joins (~dmwit@pool-108-18-106-204.washdc.fios.verizon.net)
22:42:24 naom joins (~dingo@srvnet-01-080.ikbnet.co.at)
22:42:38 × ddellacosta quits (dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 256 seconds)
22:43:58 <Liskni_si> ?tell everythingTaken please try https://github.com/xmonad/xmonad-contrib/pull/440
22:43:58 <lambdabot> Consider it noted.
22:46:23 <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
22:46:58 <Liskni_si> maybe not worth the haslle for the 60 issues that we have
22:47:49 <Liskni_si> but it might make maintenance easier
22:47:51 <Liskni_si> or something
22:51:35 ddellacosta joins (dd@gateway/vpn/mullvad/ddellacosta)
23:13:13 × andytoshi quits (~apoelstra@unaffiliated/andytoshi) (Quit: leaving)
23:24:45 × thoros quits (~thoros@194-96-55-156.hdsl.highway.telekom.at) (Ping timeout: 240 seconds)
23:27:36 × ddellacosta quits (dd@gateway/vpn/mullvad/ddellacosta) (Ping timeout: 240 seconds)
23:54:12 × naom quits (~dingo@srvnet-01-080.ikbnet.co.at) (Quit: Lost terminal)
23:55:05 et09 joins (~et09@unaffiliated/endolphin)
23:56:39 <et09> i was playing with sway for a while
23:56:52 <et09> i noticed there's a couple interesting things which are hard to replicate
23:57:13 <et09> one of them is that you can resize a window in tile mode using right click
23:59:19 <et09> the other i guess is that you kind of have this abstraction of a 'container' which can contain 1 or more actual windows
23:59:39 <et09> so for instance you could have a layout with one big window on top and two or three on the bottom
23:59:52 <et09> or two floating windows locked together

All times are in UTC on 2021-01-01.