2023/07/09

2023-07-09 00:13:08 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection)
2023-07-09 00:20:17 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2023-07-09 02:18:35 +0200fcser(~fcser@booty.farted.net) (Server closed connection)
2023-07-09 02:18:42 +0200fcser(~fcser@booty.farted.net)
2023-07-09 03:03:00 +0200Kal(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net)
2023-07-09 03:26:02 +0200Kal(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net) (Quit: Leaving)
2023-07-09 03:32:51 +0200Kal(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net)
2023-07-09 03:33:15 +0200ElKowar(~ElKowar@srv-fin.xware-gmbh.de) (Server closed connection)
2023-07-09 03:33:37 +0200ElKowar(~ElKowar@srv-fin.xware-gmbh.de)
2023-07-09 03:58:57 +0200Kaladin(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net) (Quit: Leaving)
2023-07-09 03:59:12 +0200Kal(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net) (Quit: Leaving)
2023-07-09 04:05:59 +0200Kaladin(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net)
2023-07-09 04:15:13 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection)
2023-07-09 04:16:15 +0200td_(~td@i53870908.versanet.de) (Ping timeout: 246 seconds)
2023-07-09 04:18:24 +0200td_(~td@i53870924.versanet.de)
2023-07-09 04:18:48 +0200Kaladin(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net) (Quit: Leaving)
2023-07-09 04:20:31 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2023-07-09 04:25:39 +0200Kaladin(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net)
2023-07-09 04:32:09 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection)
2023-07-09 04:37:26 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2023-07-09 04:49:03 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection)
2023-07-09 04:54:21 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2023-07-09 04:57:41 +0200Kaladin(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net) (Quit: Leaving)
2023-07-09 05:07:55 +0200m5zs7k(aquares@web10.mydevil.net) (Server closed connection)
2023-07-09 05:08:18 +0200m5zs7k(aquares@web10.mydevil.net)
2023-07-09 05:08:22 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection)
2023-07-09 05:13:39 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2023-07-09 06:45:41 +0200fcser(~fcser@booty.farted.net) (Quit: zzzzz)
2023-07-09 06:45:59 +0200fcser(~fcser@booty.farted.net)
2023-07-09 06:49:33 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Remote host closed the connection)
2023-07-09 06:53:20 +0200fcser(~fcser@booty.farted.net) (Quit: zzzzz)
2023-07-09 06:53:34 +0200fcser(~fcser@booty.farted.net)
2023-07-09 06:54:51 +0200Natch(~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se)
2023-07-09 07:02:53 +0200fcser(~fcser@booty.farted.net) (Quit: zzzzz)
2023-07-09 07:03:10 +0200fcser(~fcser@booty.farted.net)
2023-07-09 07:15:15 +0200hellwolf[m](~hellwolfm@2001:470:69fc:105::3:6a4) (Server closed connection)
2023-07-09 07:15:27 +0200hellwolf[m](~hellwolfm@2001:470:69fc:105::3:6a4)
2023-07-09 08:23:21 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 246 seconds)
2023-07-09 08:24:10 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-07-09 09:59:56 +0200tv1(~tv@user/tv) (Server closed connection)
2023-07-09 10:00:20 +0200tv1(~tv@user/tv)
2023-07-09 10:19:52 +0200retropikzel(9d1a4f9f46@2604:bf00:561:2000::ce)
2023-07-09 10:19:57 +0200Retropikzel[m](~retropikz@2001:470:69fc:105::14e7)
2023-07-09 10:29:29 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 246 seconds)
2023-07-09 10:31:28 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-07-09 10:49:22 +0200acidbong(6e5528b381@198.108.77.94)
2023-07-09 10:55:05 +0200 <acidbong> hi there, hello, i'm yet with another wild thought
2023-07-09 10:55:05 +0200 <acidbong> since taffybar is also technically a library, can it be inserted in Xmonad like xmobar can?
2023-07-09 10:55:27 +0200liskin[m](~liskinmat@2001:470:69fc:105::768)
2023-07-09 10:55:42 +0200unclechu(~unclechu@2001:470:69fc:105::354)
2023-07-09 11:07:34 +0200 <acidbong> meaning, imported in xmonad.hs
2023-07-09 11:50:52 +0200liskin[m](~liskinmat@2001:470:69fc:105::768) (Remote host closed the connection)
2023-07-09 11:50:52 +0200unclechu(~unclechu@2001:470:69fc:105::354) (Remote host closed the connection)
2023-07-09 11:53:11 +0200 <Solid> I would imagine so
2023-07-09 11:53:25 +0200liskin[m](~liskinmat@2001:470:69fc:105::768)
2023-07-09 11:53:40 +0200unclechu(~unclechu@2001:470:69fc:105::354)
2023-07-09 11:54:11 +0200hightower3(~hightower@235-102.dsl.iskon.hr) (Ping timeout: 245 seconds)
2023-07-09 12:54:26 +0200alternat`(~user@77-254-166-50.dynamic.inetia.pl)
2023-07-09 12:54:26 +0200alternat`(~user@77-254-166-50.dynamic.inetia.pl) (Remote host closed the connection)
2023-07-09 17:30:01 +0200 <Solid[m]> ChaoticMist Perhaps try looking what command is actually spawned by using `getInput`
2023-07-09 17:30:09 +0200 <Solid[m]> Otherwise debugging sounds difficult
2023-07-09 18:04:21 +0200liskin[m](~liskinmat@2001:470:69fc:105::768) (Remote host closed the connection)
2023-07-09 18:04:22 +0200unclechu(~unclechu@2001:470:69fc:105::354) (Remote host closed the connection)
2023-07-09 18:14:25 +0200 <ChaoticMist[m]> <Solid[m]> "ChaoticMist Perhaps try looking..." <- How can I output the value of getInput?
2023-07-09 18:14:58 +0200 <ChaoticMist[m]> <geekosaur> "or asleep; I think I'm close..." <- No worries, just missed seeing more haskell content hehe xD
2023-07-09 18:22:42 +0200 <ndaniel[m]> What's the minimal config? I've found this https://xmonad.org/TUTORIAL.html and two there https://wiki.haskell.org/Xmonad/Config_archive
2023-07-09 18:23:15 +0200 <ndaniel[m]> And then of course the one from the arch wiki
2023-07-09 18:24:01 +0200 <geekosaur> absolute minimal config is https://paste.tomsmeding.com/2PAGmY30
2023-07-09 18:24:59 +0200liskin[m](~liskinmat@2001:470:69fc:105::768)
2023-07-09 18:25:14 +0200unclechu(~unclechu@2001:470:69fc:105::354)
2023-07-09 18:26:23 +0200 <geekosaur> minimal practical config is probably https://paste.tomsmeding.com/Szj1Cvc4
2023-07-09 18:32:43 +0200 <ndaniel[m]> Another different one! :D
2023-07-09 18:33:06 +0200 <geekosaur> there's lots of different ones
2023-07-09 18:33:21 +0200 <geekosaur> xmonad isn't so much a window manager, as it's a window manager construction toolkit
2023-07-09 18:33:42 +0200 <geekosaur> we give you the tools, you build your own WM 🙂
2023-07-09 18:33:56 +0200 <ndaniel[m]> I remember something like that
2023-07-09 18:34:03 +0200 <ndaniel[m]> Although it's a bit overwhelming at the beginninf
2023-07-09 18:36:27 +0200 <ndaniel[m]> s/beginninf/beginning/
2023-07-09 19:29:21 +0200 <geekosaur> that's what TUTORIAL is about, it takes you through building a custom config from the beginning
2023-07-09 19:29:50 +0200 <geekosaur> you're not required to start with liskin's config 🙂
2023-07-09 19:30:19 +0200 <geekosaur> (our configs are linked from README.md, if you're interested)
2023-07-09 19:37:18 +0200 <ndaniel[m]> I see
2023-07-09 19:37:39 +0200 <ndaniel[m]> By the way, what's the behavior supposed to be without a config?
2023-07-09 19:37:41 +0200 <ndaniel[m]> As in, I only install xmonad and try to start it
2023-07-09 19:37:50 +0200 <geekosaur> you get that first config I showed
2023-07-09 19:38:22 +0200Forkk(~forkk@li926-228.members.linode.com) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-07-09 19:38:31 +0200 <geekosaur> ICCCM compliance only so a lot of modern apps won't work very well
2023-07-09 19:41:11 +0200 <ndaniel[m]> What do newer apps rely on?
2023-07-09 19:41:12 +0200Forkk(~forkk@li926-228.members.linode.com)
2023-07-09 19:43:21 +0200 <geekosaur> EWMH
2023-07-09 19:43:32 +0200 <geekosaur> which is why I suggested the second config earlier
2023-07-09 19:44:11 +0200 <geekosaur> we can't do that in the default config because EWMH is part of xmonad-contrib which base xmonad can't rely on
2023-07-09 19:44:39 +0200 <geekosaur> (I suspect it's time to merge it over, but that'll actually involve a lot of stuff)
2023-07-09 19:45:49 +0200 <geekosaur> (also there's a redesign in the works somewhere)
2023-07-09 20:34:41 +0200 <ndaniel[m]> Ah I see
2023-07-09 20:34:47 +0200 <ndaniel[m]> Thanks for the answer
2023-07-09 21:16:56 +0200 <ndaniel[m]> I am looking at the tutorial - I don't quite see what ewmhFullscreen does
2023-07-09 21:17:30 +0200 <ndaniel[m]> From what I gather, without it, when I fullscreen an application it will stay in it's window in the layout
2023-07-09 21:19:54 +0200 <geekosaur> yes. basically, in EWMH fullscreening is something an application requests from the window manager. without ewmhFullscreen we don't look for or respond to the application request
2023-07-09 21:20:06 +0200 <geekosaur> or advertise support for it
2023-07-09 21:20:29 +0200 <ndaniel[m]> It asks XMonad to maximize the window?
2023-07-09 21:21:16 +0200 <geekosaur> it's a separate option because some users prefer alternative behaviors such as "fullscreening" in a window (see https://hackage.haskell.org/package/xmonad-contrib-0.17.1/docs/XMonad-Util-Hacks.html#v:windowedFu…)
2023-07-09 21:21:25 +0200 <geekosaur> yes
2023-07-09 21:24:08 +0200 <geekosaur> as to why these would differ: consider maximizing a video in a browser window. this both maximizes the video in the browser window and maximizes the browser window. some users want the first but not the second
2023-07-09 21:25:36 +0200 <ndaniel[m]> geekosaur: I get this behavior if I don't add ewmhFullscreen?
2023-07-09 21:26:45 +0200 <geekosaur> depends on the program. some use old-style fullscreen if the window manager doesn't advertise EWMH fullscreen, so you have to advertise EWMH fullscreen but not actually do it to get that behavior. I believe that option is provided by other combinators
2023-07-09 21:27:11 +0200 <geekosaur> ewmhFullscreen is the convenience combinator that does the whole fullscreen support thing
2023-07-09 21:27:53 +0200 <ndaniel[m]> I would want apps to think that their window size is everything
2023-07-09 21:29:35 +0200 <geekosaur> then you want https://hackage.haskell.org/package/xmonad-contrib-0.17.1/docs/XMonad-Hooks-EwmhDesktops.html#v:fu… which is currently deprecated, but I think Tomas's rework will replace it instead of it going away completely
2023-07-09 21:30:49 +0200 <geekosaur> ewmh take-focus has the same thing, sometimes you want to advertise it to keep apps from just stealing focus whenever, but not respond to focus change requests (more correctly, change them to urgency requests which is explicitly supported by the EWMH spec)
2023-07-09 21:31:44 +0200 <ndaniel[m]> So if I don't advertise the functionality, the program decides what to do?
2023-07-09 21:32:06 +0200 <geekosaur> yes, it assumes the WM is too old to support the requests and does it itself
2023-07-09 21:32:15 +0200 <geekosaur> which is … rude
2023-07-09 21:32:35 +0200 <ndaniel[m]> Is this the reason why ewmh and ewmhFullscreen are separate?
2023-07-09 21:32:38 +0200 <geekosaur> browsers in particular are guilty of this
2023-07-09 21:32:41 +0200 <geekosaur> yeh
2023-07-09 21:33:04 +0200 <geekosaur> you need ewmh for the browser to work at all but you don't necessarily want it to do fullscreen
2023-07-09 21:33:13 +0200 <ndaniel[m]> Ah I see
2023-07-09 21:33:21 +0200 <ndaniel[m]> I pretty much only use Firefox
2023-07-09 21:33:51 +0200 <ndaniel[m]> On the topic of fullscreen, in i3 I can go into Fullscreen mode
2023-07-09 21:34:03 +0200 <ndaniel[m]> Would the equivalent here be to switch to the Fullscreen layout?
2023-07-09 21:34:15 +0200 <geekosaur> Full layout
2023-07-09 21:34:34 +0200 <geekosaur> the Fullscreen layout is an alternative implementation of the EWMH Fullscreen stuff
2023-07-09 21:34:58 +0200 <geekosaur> for when you want to grant the app a larger but not actually full screen window, for example
2023-07-09 21:36:14 +0200 <ndaniel[m]> Ah that's what I mean though; I just want the app to have a large window without invoking it's fullscreen mode
2023-07-09 21:36:22 +0200 <ndaniel[m]> s/it's/its/
2023-07-09 21:36:29 +0200 <geekosaur> right, that's Full
2023-07-09 21:36:38 +0200 <geekosaur> or XMonad.Layout.Maximize
2023-07-09 21:37:00 +0200 <ndaniel[m]> Do those maximize the window in focus?
2023-07-09 21:37:04 +0200 <geekosaur> Fullscreen is for what happens when an app requests fullscreen but you don't want it to actually fullscreen
2023-07-09 21:37:53 +0200 <geekosaur> Maximize maximizes the focused window; Full maximizes all windows (meaning only one is visible, of course)
2023-07-09 21:38:21 +0200 <geekosaur> Full is the "default layout" in the sense that it's what happens when a layout does absolutely nothing
2023-07-09 21:38:31 +0200 <ndaniel[m]> I'll look into maximize then, thanks :)
2023-07-09 21:38:54 +0200 <geekosaur> it takes a screen rectangle and returns it, meaning the whole screen is given to the focused window and nothing to any other window
2023-07-09 21:41:41 +0200 <geekosaur> https://imgur.com/IfmGoWn.png maximized (X.L.Maximize) my IRC window, have a Matrix (nheko) window in its usual lower tile underneath (Mirror TwoPane layout)
2023-07-09 21:59:43 +0200 <ndaniel[m]> By the way, is there already a layout for main + tab? As in two panes, where one is tabbed and the other only holds a single window
2023-07-09 22:04:17 +0200 <geekosaur> combineTwo (TwoPane 0.03 0.5) Full simpleTabbed
2023-07-09 22:04:33 +0200 <geekosaur> import X.L.Combo, X.L.TwoPane, X.L.Tabbed
2023-07-09 22:05:07 +0200 <geekosaur> alternatively: mastered simpleTabbed
2023-07-09 22:05:15 +0200 <geekosaur> (X.L.Mastered, X.L.Tabbed)
2023-07-09 22:05:50 +0200 <geekosaur> there are also a few other ways to combine layouts, each with its own features
2023-07-09 22:09:07 +0200 <ndaniel[m]> Ah, very nice
2023-07-09 22:09:44 +0200 <geekosaur> for example, ComboP instead of Combo lets you match windows and auto-place them in the left-hand layout
2023-07-09 22:10:46 +0200 <geekosaur> LayoutBuilder and LayoutBuilderP let you construct multipane layouts in various ways, the -P variant likewise letting you auto-place windows
2023-07-09 22:12:13 +0200 <geekosaur> https://hackage.haskell.org/package/xmonad-contrib-0.17.1/docs/XMonad-Layout-TallMastersCombo.html is an interesting compound layout
2023-07-09 22:15:59 +0200 <geekosaur> since a layout is a function from a screen rectangle to a list of window rectangles, it can call other layout functions to test arbitrarily (and confusingly if you're not careful about combining things 🙂 )
2023-07-09 22:16:06 +0200 <geekosaur> *nest
2023-07-09 22:23:35 +0200 <ndaniel[m]> What's the proper way to redefine the key bindings? I'd probably want to redefine all the default ones
2023-07-09 22:27:16 +0200 <geekosaur> additionalKeysP as shown in the tutorial
2023-07-09 22:28:02 +0200 <geekosaur> you *could* replace the `keys` element of the config record, but (modmask,keysym) is annoying to work with
2023-07-09 22:29:39 +0200 <ndaniel[m]> But additionalKeysP wouldn't get rid of anything, right?
2023-07-09 22:30:38 +0200 <geekosaur> but (a) removeKeysP does (b) you don't need to remove to overwrite/replace
2023-07-09 22:31:26 +0200 <ndaniel[m]> I guess I'd have to remove M - p if I wanted only M - d to spawn dmenu
2023-07-09 22:32:15 +0200 <geekosaur> unless you want M-p to do something else
2023-07-09 22:48:10 +0200 <ndaniel[m]> Is there a clean way to refer to refer to "variables" of the conf from within additional keys?
2023-07-09 22:48:30 +0200 <ndaniel[m]> For example if I want to update the keybinding for the terminal
2023-07-09 22:59:09 +0200 <geekosaur> give the conf a binding instead of passing ot directly to `xmonad`
2023-07-09 22:59:17 +0200 <geekosaur> or maybe you want to use `keys` after all
2023-07-09 22:59:39 +0200 <geekosaur> it's annoying
2023-07-09 23:01:36 +0200 <geekosaur> `keys` is a function from a config to a Map (KeyMask,KeySym) (X ()), so you can refer to the config
2023-07-09 23:02:19 +0200 <geekosaur> you could also do something like `asks (terminal . config) >>= spawn` as the action
2023-07-09 23:47:17 +0200 <ndaniel[m]> <geekosaur> "`keys` is a function from a..." <- Yeah, I took a look at the definition
2023-07-09 23:49:31 +0200 <ndaniel[m]> <geekosaur> "give the conf a binding instead..." <- I guess this is what I'd do