Logs on 2022-07-08 (liberachat/#xmonad)
| 00:34:28 | → | Kaladin joins (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) |
| 00:36:45 | <Kaladin> | hello #xmonad, I'm planning to upgrade from 0.15 to 0.17 today and I'm wondering if anyone has a recommendation for a guide or steps to take before getting started, I'm on arch linux, planning to backup my .xmonad folder so I can go back to my current state if needed, is there anything else I should backup? ty for any suggestions :) |
| 00:39:15 | <geekosaur> | that should be it |
| 00:48:04 | → | Forkk joins (~forkk@li926-228.members.linode.com) |
| 00:50:04 | <Kaladin> | @geekosaur, thank you, I am a bit nervous since I put in a lot of work over a long time to get the state I have with xmonad and not sure I can remember all the things I did to get it this way, your confirmation helps :) |
| 00:50:04 | <lambdabot> | Unknown command, try @list |
| 00:50:40 | <geekosaur> | your xmonad.hs is the big one. if you have any local modules in .xmonad/lib, you'll want those as well |
| 00:50:52 | <geekosaur> | (most people don't) |
| 00:54:18 | <Kaladin> | I don't think so but I backed up the entire .xmonad folder so should be good either way |
| 01:00:43 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 01:19:51 | × | Kaladin quits (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) (Quit: Leaving) |
| 01:29:39 | → | Kaladin joins (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) |
| 01:38:39 | → | tjmciver joins (~tjmciver@cpe-198-255-176-114.maine.res.rr.com) |
| 01:41:04 | <tjmciver> | Hello folks. I'm currently running Xmonad 0.15 and am trying to figure out what hook to use to call (spawn) autorandr to configure external monitors when docking/undocking my laptop. I know there's XMonad.Hooks.Rescreen in 0.17 but that's not available in 0.15. What do I do instead? |
| 02:02:57 | × | banc quits (banc@gateway/vpn/airvpn/banc) (Ping timeout: 276 seconds) |
| 02:13:30 | × | Kaladin quits (~Kaladin@157-131-200-16.fiber.dynamic.sonic.net) (Quit: Leaving) |
| 02:14:44 | → | jaybird joins (~cjayross@47-185-199-160.dlls.tx.frontiernet.net) |
| 02:15:23 | ← | jaybird parts (~cjayross@47-185-199-160.dlls.tx.frontiernet.net) () |
| 02:18:19 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 244 seconds) |
| 02:24:42 | → | banc joins (banc@gateway/vpn/airvpn/banc) |
| 02:33:10 | × | td_ quits (~td@muedsl-82-207-238-170.citykom.de) (Ping timeout: 240 seconds) |
| 02:35:21 | → | td_ joins (~td@94.134.91.254) |
| 04:22:50 | × | steve__ quits (~steve@ool-182c2b80.dyn.optonline.net) (Ping timeout: 244 seconds) |
| 05:43:47 | <Solid> | tjmciver: you could upgrade to 0.17.0 :> |
| 05:44:18 | <Solid> | copying the module itself would probably be quite complicated, since it depends on ExtensibleConfig |
| 05:44:34 | <Solid> | though I recall fizzie having a standalone module that was the basis for X.H.Rescreen? So perhaps copying that would work |
| 06:28:27 | × | nev_yn quits (~nyven@c-68-43-234-118.hsd1.mi.comcast.net) (Remote host closed the connection) |
| 07:00:19 | → | Zedgamer9128 joins (~Zedgamer9@2409:4064:2d8c:d471:3792:1457:5b3a:1e2) |
| 07:01:19 | × | Zedgamer9128 quits (~Zedgamer9@2409:4064:2d8c:d471:3792:1457:5b3a:1e2) (Client Quit) |
| 07:29:37 | × | hexo quits (~hexo@user/hexo) (Quit: Leaving) |
| 07:36:03 | → | chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:e563:a1c3:b513:f7a5) |
| 07:45:53 | → | cfricke joins (~cfricke@user/cfricke) |
| 07:58:00 | × | chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:e563:a1c3:b513:f7a5) (Ping timeout: 276 seconds) |
| 07:59:22 | → | alternateved joins (~alternate@82.180.151.80) |
| 08:42:49 | → | Guest9 joins (~Guest9@48.red-83-55-226.dynamicip.rima-tde.net) |
| 08:44:16 | Guest9 | is now known as Baitinq |
| 08:44:40 | <Baitinq> | Hi everyone, I was having a problem with xmobar <box> tag and I was wondering whether I was doing something wrong or this was a bug with xmobar (probably the former). I am trying to draw a empty rectangle on top of my inactive but not empty workspaces (in a dwm style). I have succesfully drawn the box, but when I try to apply left and right margins |
| 08:44:40 | <Baitinq> | they are not respected by the two <box type=Top> that make up the empty rectangle, while they are respected by the <box type=HBoth> that also makes up the empty triangle. Am I doing something wrong? Is there a better way of implementing this? Many thanks https://pastebin.com/vYWRNG7k. I have asked in the xmobar specific channel but it seems pretty |
| 08:44:41 | <Baitinq> | inactive so I hope you dont mind me asking here. |
| 08:51:30 | <fizzie> | tjmciver: Solid: Yes, I had one of those. The hooky part is just xrandrStartupHook + xrandrScreenChangeEventHook at https://github.com/fis/dot-xmonad/blob/master/zem/src/Zem/AutoRandr.hs#L243 |
| 08:55:44 | × | ^[ quits (~user@user//x-8473491) (Ping timeout: 255 seconds) |
| 08:59:03 | × | Baitinq quits (~Guest9@48.red-83-55-226.dynamicip.rima-tde.net) (Quit: Client closed) |
| 09:00:12 | → | Baitinq joins (~Baitinq@48.red-83-55-226.dynamicip.rima-tde.net) |
| 09:24:56 | → | Zedgamer9128 joins (~Zedgamer9@2409:4064:2d8c:d471:3792:1457:5b3a:1e2) |
| 09:27:14 | <Zedgamer9128> | how to send custom log to xmobar like i want to send songs title by playerctl from xmonad.hs i am sending all worksapce info by UnsafeXmonadLog and i was thinking if there was a way to send another variabe |
| 09:27:45 | × | Baitinq quits (~Baitinq@48.red-83-55-226.dynamicip.rima-tde.net) (Quit: Client closed) |
| 09:28:48 | <Zedgamer9128> | l am seeing a statusbarpropto function but i dont know if that is what is what i want or how to even implement it |
| 09:41:18 | × | Zedgamer9128 quits (~Zedgamer9@2409:4064:2d8c:d471:3792:1457:5b3a:1e2) (Quit: Client closed) |
| 09:41:31 | → | Zedgamer9128 joins (~Zedgamer9@2409:4064:2d8c:d471:3792:1457:5b3a:1e2) |
| 09:43:13 | <vrs> | Zedgamer9128: I do it with a PipeReader |
| 09:44:59 | <vrs> | my player is mpd and I monitor the state with `mpc idle` |
| 09:52:32 | × | Zedgamer9128 quits (~Zedgamer9@2409:4064:2d8c:d471:3792:1457:5b3a:1e2) (Ping timeout: 252 seconds) |
| 10:05:35 | → | Zedgamer9128 joins (~Zedgamer9@2409:4064:4e8e:a7aa:28d1:bb05:df72:c820) |
| 10:09:33 | × | cfricke quits (~cfricke@user/cfricke) (Quit: WeeChat 3.5) |
| 10:30:06 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 10:30:43 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Client Quit) |
| 10:43:10 | → | Jade1 joins (~Jade1@ip-178-201-128-039.um46.pools.vodafone-ip.de) |
| 10:48:10 | <Jade1> | How would you build a layout in which the side to the master has a second "master" window and the stack is vertical to the side? https://imgur.com/a/gwR41yq |
| 10:51:03 | → | chomwitt joins (~chomwitt@2a02:587:dc0d:4a00:bd6:dafd:ce58:5eb6) |
| 11:16:18 | × | Zedgamer9128 quits (~Zedgamer9@2409:4064:4e8e:a7aa:28d1:bb05:df72:c820) (Quit: Client closed) |
| 11:24:44 | × | defjam quits (~eb0t@33ba38ab.skybroadband.com) (Ping timeout: 272 seconds) |
| 11:25:39 | → | Zedgamer9128 joins (~Zedgamer9@2409:4064:4e8e:a7aa:28d1:bb05:df72:c820) |
| 11:26:34 | → | defjam joins (~eb0t@33bb8326.skybroadband.com) |
| 11:26:34 | × | Zedgamer9128 quits (~Zedgamer9@2409:4064:4e8e:a7aa:28d1:bb05:df72:c820) (Client Quit) |
| 11:52:39 | <tjmciver> | Solid: Yes, I'd love to upgrade but I'm using NixOS and that's giving me 0.15 and I'm not savvy enough with Nix yet to know how to upgrade. |
| 11:53:41 | <tjmciver> | fizzie: thanks. If I read that correctly it looks like you're not directly using autoxrandr there but have implemented much of it yourself there. |
| 11:54:31 | <fizzie> | Yeah, but that was just out of perversity, you could just shell out from the hook and ignore all the rest. |
| 11:55:23 | <tjmciver> | Cool, thanks! |
| 11:55:28 | <fizzie> | Although you might want some form of "debouncing" in there. |
| 11:55:40 | <fizzie> | And the version done by X.H.Rescreen is objectively better. :) |
| 11:56:08 | <fizzie> | (There tends to be a bunch of events fired off when unplugging/replugging screens, not just one.) |
| 11:59:30 | <fizzie> | My kludge is based on just adding a delay of 0.5 seconds, and ignoring subsequent events while that timer is pending. X.H.Rescreen does some smarter to the event queue. |
| 12:00:59 | <tjmciver> | Yeah, it sounds like I should invest the time in upgrading to 0.17. |
| 12:09:27 | → | MUT joins (~MUT@91.196.39.241) |
| 12:13:01 | <MUT> | Hello everyone. I've been a long time haskell fan and just decided to give xmonad a good try. I am trying to make the default configuration template provided to work and i came across this issue. The keybinding configuration provided in it is given by `myKeys :: XConfig Layout -> M.Map (KeyMask, KeySym) (X ())`. Now i want to put |
| 12:13:01 | <MUT> | XMonad.Util.EZConfig.checkKeymap into my startup hook to use. |
| 12:13:28 | <geekosaur> | Jade1, XMonad.Layout.Master lets you add a second master window |
| 12:14:13 | <MUT> | The issue is that checkKeymap takes [(String, X())] and not the Map. I can use toList from Data.Map to take the map into [(KeyMask, KeySym), X())], but that wont cut it |
| 12:14:35 | <geekosaur> | checkKeymap is designed for use with additionalKeysP maps |
| 12:15:16 | <MUT> | is there a Map (KeyMask, KeySym) (X ()) -> [(String, X ())] function that would be able to take the tuples and return the short string syntax of keymaps? |
| 12:15:58 | × | Jade1 quits (~Jade1@ip-178-201-128-039.um46.pools.vodafone-ip.de) (Quit: Client closed) |
| 12:16:04 | <MUT> | geekosaur how do i check my initial keymaps for duplicates then? |
| 12:16:17 | <MUT> | is it assumed you have to manually do that? |
| 12:16:49 | <geekosaur> | yes, because the duplicates will already have overwritten by the time you reach the startupHook |
| 12:17:39 | <MUT> | fair enough i guess. |
| 12:17:59 | <geekosaur> | and we're kinda strongly encouraging use of the newer keymap style |
| 12:25:54 | <MUT> | the short string thing?? |
| 12:25:58 | <MUT> | the short string thing? |
| 12:26:07 | <MUT> | damn. sorry |
| 12:32:23 | <MUT> | there are just some cool list comprehensions done for the workspace switching and moving that i dont think can be possible to refactor to work with the string syntax. |
| 12:32:39 | <MUT> | i might be wrong tho |
| 12:35:23 | <alternateved> | What those list comprehensions do for workspace switching? |
| 12:36:40 | <MUT> | -- mod-[1..9], Switch to workspace N |
| 12:36:41 | <MUT> | -- mod-shift-[1..9], Move client to workspace N |
| 12:36:41 | <MUT> | -- |
| 12:36:42 | <MUT> | [((m .|. modm, k), windows $ f i) |
| 12:36:42 | <MUT> | | (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9] |
| 12:36:43 | <MUT> | , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]] |
| 12:36:56 | <alternateved> | I do like X.U.EZConfig module, but I also come from Emacs world so this makes it familiar for me |
| 12:37:26 | <alternateved> | I have those comprehensions for that short syntax |
| 12:38:18 | <alternateved> | [ ("M-" <> m <> show k, withNthWorkspace' f i) |
| 12:38:18 | <alternateved> | | (k, i) <- zip workspaceNumbers [0 ..] |
| 12:38:18 | <alternateved> | , (m, f) <- [("", W.greedyView), ("S-", W.shift), ("C-", copy)] |
| 12:38:18 | <alternateved> | ] |
| 12:39:56 | <alternateved> | There is a bit more since I also wanted to filter out scratchpads |
| 12:44:53 | × | tjmciver quits (~tjmciver@cpe-198-255-176-114.maine.res.rr.com) (Read error: Connection reset by peer) |
| 12:45:10 | → | tjmciver joins (~tjmciver@cpe-198-255-176-114.maine.res.rr.com) |
| 12:49:59 | <MUT> | hmm |
| 12:50:04 | <MUT> | that can work yeah |
| 12:50:34 | <MUT> | still if theres a function from "old" syntax to "new" syntax, it would be good to have one from new to old too |
| 13:01:50 | <geekosaur> | do you have that backwards? mkKeymap turns an additionalKeysP list into a keymap (but it's already a Map at that point so dups are already lost) |
| 13:20:14 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 13:21:35 | <MUT> | mkKeymap :: XConfig l -> [(String, X ())] -> M.Map (KeyMask, KeySym) (X ()) |
| 13:21:53 | <MUT> | i want unmkKeymap, if that makes sense |
| 13:23:30 | <MUT> | something like |
| 13:23:30 | <MUT> | mkNewKeymap :: M.Map (KeyMask, KeySym) -> (X ()) [(String, X ())] |
| 13:25:02 | <geekosaur> | that's why I asked if you had that ackwards; I suspected that |
| 13:26:00 | <geekosaur> | it's doable, but EZConfig is all about going the other direction |
| 13:26:47 | <MUT> | oh is the map from (KeyMask, Keysym) to X actions the "newer" keymap style that you encourage? |
| 13:27:34 | <geekosaur> | no, that's the original style and what is used internally |
| 13:28:26 | <MUT> | yeah i see. |
| 13:28:38 | <geekosaur> | since keygrabs are done on (KeyMask,KeyCode) and an internal lookup is done to go from KeySym to KeyCode |
| 13:29:03 | <geekosaur> | (and that will produce surprises if the KeySym has modifiers associated with it, which is the original reason for checkKeymap) |
| 13:29:34 | <geekosaur> | which means we should really have a checkKeymap-alike for old style keys too |
| 13:32:11 | <geekosaur> | maybe I'll write that this weekend |
| 13:39:39 | <MUT> | [4:16:14 PM] <geekosaur> yes, because the duplicates will already have overwritten by the time you reach the startupHook |
| 13:39:40 | <MUT> | But given this i dont think it will be any useful |
| 13:40:05 | <MUT> | since the only use i had for it, is like not valid |
| 13:40:23 | <geekosaur> | it would still check for non-base plane keys and such. but checkKeymap as is also won't do what you want |
| 13:41:05 | <geekosaur> | a version could be written that took a list and checked for dupes along with the other checks, of course |
| 13:43:16 | <MUT> | myStartupHook :: X () |
| 13:43:16 | <MUT> | myStartupHook = do |
| 13:43:17 | <MUT> | checkKeymap defaults $ map mkNewKeymap $ M.toList $ myKeys defaults |
| 13:43:17 | <MUT> | where |
| 13:43:18 | <MUT> | mkNewKeymap = ... |
| 13:43:18 | <MUT> | this is what how i thought id use the mkNewKeymap |
| 13:44:15 | <MUT> | inside the man/xmonad.hs |
| 13:44:39 | <geekosaur> | I'd be worried that the conversion would change something I cared about, and would want something more direct |
| 13:58:29 | <valarMorghulis[m> | > <@lladeebll:matrix.org> I was trying to implement top bar in xmonad to show active window instead of the boarder. If I user `noFillsDeco` the problem is that it's not smart even if there is just one window it shows the top bar, therefore I got a code snippet for smart top bar from reddit and I'm using it. It... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/9c2b5472f13b769907607584b7a7d69fd3219192) |
| 13:58:31 | <valarMorghulis[m> | Anyone got a suggestion on where to ask this so get an answer? |
| 13:58:31 | <lambdabot> | <hint>:1:1: error: parse error on input ‘<@’ |
| 13:59:08 | <valarMorghulis[m> | s/so/to/ |
| 13:59:54 | <MUT> | geekosaur im guessing you're part of the dev team for xmonad? can you please explain why you use strict types for all the records of XConfig record? |
| 14:00:06 | <MUT> | Does it bring any noticable performance boost or is it for something else? |
| 14:00:47 | <geekosaur> | I'm part of the current dev team but not the original one that made that decision. I think it's for performance though |
| 14:01:02 | <geekosaur> | sjanssen and dons are sadly long gone |
| 14:01:59 | <MUT> | aeef36f7 Spencer Janssen (2007-12-29 06:19): |
| 14:01:59 | <MUT> | Strictify all XConfig fields, gives nice error messages when a field is forgotten on construction |
| 14:02:00 | <MUT> | found this on when git blaming |
| 14:02:35 | <MUT> | on Xconfig fields* |
| 14:03:10 | <geekosaur> | that seems odd though as users don't generally build one up completely from scratch |
| 14:03:33 | <MUT> | yeah |
| 14:03:34 | <geekosaur> | there's a lot in there and users typically only touch part of it |
| 14:04:00 | <geekosaur> | it's very rare that anyone touches rootMask, for example |
| 14:05:28 | <MUT> | yeah i was searching for places where the inner fields are exposed to modification from user, there's a lot that never do |
| 14:05:51 | <alternateved> | Is there an easy way to restrict ppCurrent also to the current screen? |
| 14:07:28 | <alternateved> | Apart from just using logCurrentOnScreen |
| 14:07:55 | <geekosaur> | alternateved, I know it's been done but it's not particularly easy the way DyanmicLog / StatusBar is set up |
| 14:21:53 | <alternateved> | Hmm, that is what I've thought. I might play with logCurrentOnScreen then |
| 14:25:49 | <geekosaur> | might hang around in here and see if someone else speaks up. someone else had an xmobar per screen, each showing that screen's state |
| 14:26:25 | <geekosaur> | sadly they didn't do it in an issue or discussion, and the logs aren't searchable currently |
| 14:27:19 | <geekosaur> | Solid might remember a bit more but I think he's away for the next 2 weeks |
| 14:33:31 | <alternateved> | Thanks, I will keep that in mind, although I might just use logCurrentOnScreen and then the rest of the workspaces that are hidden as I don't really care about ordering here |
| 14:46:08 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 14:48:06 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 14:54:10 | × | alternateved quits (~alternate@82.180.151.80) (Remote host closed the connection) |
| 15:01:30 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 15:01:48 | → | alternateved joins (~alternate@82.180.151.80) |
| 15:05:56 | → | Baitinq joins (~Baitinq@48.red-83-55-226.dynamicip.rima-tde.net) |
| 15:06:37 | <Baitinq> | Hi everyone, I was having a problem with xmobar <box> tag and I was wondering whether I was doing something wrong or this was a bug with xmobar (probably the former). I am trying to draw a empty rectangle on top of my inactive but not empty workspaces (in a dwm style). I have succesfully drawn the box, but when I try to apply left and right margins |
| 15:06:37 | <Baitinq> | they are not respected by the two <box type=Top> that make up the empty rectangle, while they are respected by the <box type=HBoth> that also makes up the empty triangle. Am I doing something wrong? Is there a better way of implementing this? Many thanks https://pastebin.com/vYWRNG7k. I have asked in the xmobar specific channel but it seems pretty |
| 15:06:38 | <Baitinq> | inactive so I hope you dont mind me asking here. |
| 15:10:26 | × | MUT quits (~MUT@91.196.39.241) (Ping timeout: 252 seconds) |
| 15:13:35 | <geekosaur> | you can ask in here but you may have to hang around for someone who can answer. (I don't use xmobar so can't help. I vaguely recall a bug regarding box borders but I thought it was top/bottom rather than left/right) |
| 15:43:41 | × | alternateved quits (~alternate@82.180.151.80) (Remote host closed the connection) |
| 15:44:04 | → | alternateved joins (~alternate@82.180.151.80) |
| 15:56:48 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5) |
| 15:59:50 | × | alternateved quits (~alternate@82.180.151.80) (Remote host closed the connection) |
| 16:09:09 | → | alternateved joins (~alternate@82.180.151.80) |
| 16:11:20 | → | dschrempf joins (~dominik@mobiledyn-62-240-134-33.mrsn.at) |
| 16:23:46 | × | telser quits (~quassel@user/telser) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 16:46:49 | × | dschrempf quits (~dominik@mobiledyn-62-240-134-33.mrsn.at) (Quit: WeeChat 3.5) |
| 18:16:00 | → | cidra[m] joins (~cidramatr@2001:470:69fc:105::2:4207) |
| 19:13:14 | × | alternateved quits (~alternate@82.180.151.80) (Remote host closed the connection) |
| 19:16:22 | → | alternateved joins (~alternate@82.180.151.80) |
| 19:21:04 | × | alternateved quits (~alternate@82.180.151.80) (Remote host closed the connection) |
| 21:08:15 | × | chomwitt quits (~chomwitt@2a02:587:dc0d:4a00:bd6:dafd:ce58:5eb6) (Ping timeout: 276 seconds) |
| 21:22:58 | × | tjmciver quits (~tjmciver@cpe-198-255-176-114.maine.res.rr.com) (Ping timeout: 240 seconds) |
| 21:31:17 | × | noex quits (~null@user/noex) (Ping timeout: 255 seconds) |
| 21:31:37 | → | steve__ joins (~steve@ool-182c2b80.dyn.optonline.net) |
| 21:41:15 | → | tjmciver joins (~tjmciver@cpe-172-101-39-156.maine.res.rr.com) |
| 22:05:09 | → | noex_ joins (~null@2600:8804:14e0:104::1e13) |
| 22:59:56 | × | joshproehl quits (~quassel@user/joshproehl) (Remote host closed the connection) |
| 23:00:50 | → | joshproehl joins (~quassel@user/joshproehl) |
| 23:04:58 | × | Baitinq quits (~Baitinq@48.red-83-55-226.dynamicip.rima-tde.net) (Quit: Client closed) |
| 23:52:42 | × | gdd1 quits (~gdd@2001:470:1f13:187:2e9b:467c:7a38:be67) (Ping timeout: 272 seconds) |
| 23:54:19 | → | gdd1 joins (~gdd@129.199.146.230) |
All times are in UTC on 2022-07-08.