Logs on 2023-03-19 (liberachat/#xmonad)
| 00:10:23 | × | noex quits (~null@user/noex) (Quit: :q!) |
| 00:55:09 | × | chomwitt quits (~chomwitt@ppp-94-67-217-45.home.otenet.gr) (Ping timeout: 250 seconds) |
| 01:16:03 | → | Guest18 joins (~Guest18@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) |
| 03:03:28 | × | banc quits (~banc@154.47.24.197) (Ping timeout: 246 seconds) |
| 03:05:50 | × | kora9 quits (uid591798@user/Kora9) (Quit: Connection closed for inactivity) |
| 03:17:28 | × | td_ quits (~td@i5387093F.versanet.de) (Ping timeout: 246 seconds) |
| 03:19:34 | → | td_ joins (~td@i5387093A.versanet.de) |
| 03:22:59 | → | banc joins (~banc@154.47.24.197) |
| 03:41:59 | → | hightower4 joins (~hightower@13-222.dsl.iskon.hr) |
| 03:45:16 | × | hightower3 quits (~hightower@166-57.dsl.iskon.hr) (Ping timeout: 276 seconds) |
| 04:17:22 | → | catman joins (~catman@user/catman) |
| 04:24:35 | × | catman quits (~catman@user/catman) (Ping timeout: 246 seconds) |
| 06:28:50 | × | scardinal quits (~supreme@customer-212-237-101-39.ip4.gigabit.dk) (Quit: leaving) |
| 06:32:27 | → | scardinal joins (~supreme@customer-212-237-101-39.ip4.gigabit.dk) |
| 07:46:44 | → | dge joins (~jeromelan@221-22-190-109.dsl.ovh.fr) |
| 07:53:55 | <dge> | Hi, can someone explain me or sent to me a link that show me how to test XMonad config (maybe with Xephyr or anything else) ? I would like to try XMonad and Haskell language to replace maybe my AWesome WM. I did install xmonad from his git repo and compil with a xmonad.hs config file very basic. When i start a session from SDDM, i have an "ok" button in the middle and everything seems to be like frozen (have to reboot next). So i want to test |
| 07:53:55 | <dge> | it before to apply a config and be able to read some error log or something helpfull to fix my first problem. |
| 07:56:47 | <dge> | (also, just tell me if you can read my message, because i testing also my irc connection) |
| 08:09:19 | <[Leary]> | dge: Have you tried the default keybinds? Mod+? to show help with xmessage, Mod+Shift+Enter for an xterm, etc. |
| 08:20:30 | <dge> | yes, i did try all of them. I also used the mod4 key instead of Alt key to access the default one. At run time, i tryed both Alt and mod4 ones with many combi (like terminal start, help message, and so on). No one worked, but looks like freeze at start. No error message from compil config file. |
| 08:25:02 | <[Leary]> | And you're sure you have xmessage and xterm on your system? |
| 08:33:11 | <dge> | i use alacritty and did config terminal to be alacritty at terminal call key binding. i don't have "xmessage" installed, and not find any in kind of ubuntu repos (pop_os the same). |
| 08:33:39 | <dge> | but my question was on "how to test xmonad" (like... with Xephyr maybe) ? |
| 08:33:56 | <dge> | and get error message back to be able to fix things myself maybe. |
| 08:39:13 | <[Leary]> | Yes, and there are ways, but it's usually easier to test in action. It's a long time since I've used Xephyr for this and I don't recall the details. They might be in the xmonad-test repo if it still exists, but it's almost certainly out of date. In any case, it looks like x11-utils will give you xmessage, which should show you the errors. |
| 08:52:14 | <dge> | "easier" ? To reboot at each freeze time and get no error message ? You are thinkingit is easier to practice tests this way ? Or is it esier for YOU only due to no help time for Xephyr ? I ay prefer to wait for someone that can help me to install and use a real test process than to reboot all the time with nothing to look at for error. |
| 08:53:05 | <dge> | but, thank you for your ppurpose and your time, i do appreciate it. |
| 08:54:30 | <[Leary]> | Normally you should be able to just exit to your login/display manager instead, so it shouldn't be such a hassle. |
| 08:55:43 | <[Leary]> | I suspect an issue with whatever script is trying to start xmonad, but the other possibility is that your config does compile to a loop. If so, you may be able to kill it via tty. |
| 08:56:14 | <[Leary]> | Though it would be best to just erase the config and try the defaults first. |
| 09:00:00 | <[Leary]> | Your session logs may also have something to say, though I couldn't tell you where to look for them; it's different on every distro. |
| 09:18:11 | <dge> | So, each time i will increase my config file, line by line i will reboot... that is, for you, not a hassle loosing tie instead of runing test from a xephyr session ? Ok. have a good day man, i have no time for that. |
| 10:11:27 | <liskin> | dge: instead of rebooting, you should be able to use Ctrl-Alt-F1/F2/… to switch to another console and kill the nonresponsive session |
| 10:11:46 | <liskin> | actually you can run multiple X sessions this way as well and switch between them |
| 10:12:01 | <liskin> | it might be easier (admittedly not as convenient) than running Xephyr |
| 10:12:44 | <liskin> | using Xephyr involves some xauth hassle that I don't remember (it's in bash history on my other laptop, but I won't have time to open that one until tomorrow) |
| 10:14:39 | <liskin> | also, you might want to disable DontZap temporarily and use Ctrl-Alt-Backspace to kill the X: https://unix.stackexchange.com/questions/375/how-to-enable-killing-xorg-with-ctrlaltbackspace |
| 10:15:14 | <liskin> | (it's a bad idea to leave that on as then pranksters can come and kill your session, but then if they have physical access you've lost anyway, so… meh) |
| 10:42:06 | → | chomwitt joins (~chomwitt@2a02:587:7a12:e700:1ac0:4dff:fedb:a3f1) |
| 11:59:45 | → | thunderrd joins (~thunderrd@183.182.111.130) |
| 12:23:08 | <dge> | Why no tjust make it simple and use Xephyr ? Ask yourself why... |
| 12:23:32 | <dge> | What is the most simple and clean ? |
| 12:23:48 | <dge> | please... let's be factual. |
| 12:49:40 | <geekosaur> | xephyr doesn't seem that hard for me? is this a fedora thing? or just that I use `startx -- :1` with a `.xserverrc` to launch it? |
| 12:50:23 | <Solid[m]> | Yes, I just have something like |
| 12:50:23 | <Solid[m]> | Xephyr -br -ac -noreset -screen 800x600 :1 & |
| 12:50:23 | <Solid[m]> | DISPLAY=:1 xmonad |
| 12:50:23 | <Solid[m]> | in a script |
| 12:51:12 | <Solid[m]> | but dge do note that compilation errors will not trash your xmonad executable, you will still be running the old version |
| 12:51:17 | <geekosaur> | but I have a full sandboxing setup so I can test user configs |
| 12:51:43 | <Solid[m]> | so this kind of stuff might not be as useful as you think it will |
| 12:51:50 | <geekosaur> | (that's how I debugged the join point bug and the windowNavigation thing among others) |
| 14:31:24 | × | VarikValefor[m] quits (~varikvale@2001:470:69fc:105::a5d) (Ping timeout: 265 seconds) |
| 14:31:53 | × | geekosaur[m] quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 265 seconds) |
| 14:33:04 | → | lisk1n joins (~liskin@xmonad/liskin) |
| 14:34:17 | × | liskin quits (~liskin@xmonad/liskin) (Ping timeout: 265 seconds) |
| 14:43:33 | → | VarikValefor[m] joins (~varikvale@2001:470:69fc:105::a5d) |
| 14:48:01 | → | geekosaur[m] joins (~geekosaur@xmonad/geekosaur) |
| 15:09:07 | → | qbt joins (~qbt@user/edun) |
| 15:50:00 | × | chomwitt quits (~chomwitt@2a02:587:7a12:e700:1ac0:4dff:fedb:a3f1) (Ping timeout: 264 seconds) |
| 16:03:06 | × | qbt quits (~qbt@user/edun) (Quit: WeeChat 3.5) |
| 16:41:13 | <geekosaur> | dge, re xmessage on debian |
| 16:41:16 | <geekosaur> | skkukuk «xmonad:skkukuk» ⁅xmonad-bsa⁆ Z$ dpkg -S /usr/bin/xmessage |
| 16:41:16 | <geekosaur> | x11-utils: /usr/bin/xmessage |
| 16:41:39 | <geekosaur> | should be able to get that from apt-cache as well |
| 16:42:10 | <geekosaur> | debian/ubuntu/probably popos |
| 16:50:16 | <geekosaur> | also there are certainly ways for an xmonad config to break things completely; the simplest is to set the `handleEventHook` to `return (All False)` or equivalent |
| 17:32:36 | × | jabuxas quits (~jabuxas@user/jabuxas) (Ping timeout: 255 seconds) |
| 17:34:20 | → | jabuxas joins (~jabuxas@user/jabuxas) |
| 18:15:23 | <dge> | i was afk... Xephyr is new to me, but i was thinking (and it seems i'm wrong) that XMonad lovers used it for test XMonad config, as AwesomeWM users use awmtt, who is a kind of Xephyr helper to test rc.lua config file for Awesome). |
| 18:15:55 | <dge> | I'm under Pop!_OS who is an Ubuntu-22.04 distro. |
| 18:16:32 | <dge> | I was using GDM3 but just installed and use now SDDM (lighter and good enaugh to me). |
| 18:16:58 | <dge> | @Solid[m], thank you, i'm going to try this. |
| 18:16:59 | <lambdabot> | Unknown command, try @list |
| 18:18:06 | <geekosaur> | I think xmonad users just mod-q and hope for the best 🙂 |
| 18:18:27 | <geekosaur> | I mean, usually if it compiles it works |
| 18:18:34 | <dge> | Solid[m], yes, thank you. Sure, i dio use ~/.cache/xmonad/xmonad-x86_64-linux compiled version |
| 18:18:55 | <geekosaur> | not guaranteed but the compiler really does catch most mistakes |
| 18:19:49 | <dge> | geekosaur, i was thinking the same but... i'm very newby with that and also Haskell. So... i'm trying to win a bit of time by increase my capacity of testing faster because i know i will make a lot of error but still will customize and learn from them. |
| 18:20:35 | <dge> | I also failed to find any Google best Haskell lovers users practice to config and test XMonad. |
| 18:22:12 | <dge> | geekosaur, about xmessage, yes, it is inside my x11-utils package. So i have it installed. |
| 18:31:22 | <dge> | sandboxing setup is something that should be a very good idea. I arrived to start xmonad on Xephyr (thanks geekosaur) but yeah... no error and Awesome still get my key bindings and not Xephyr, so untestable this way ! Maybe also a VM to run can be nice... |
| 19:38:46 | → | abhixec joins (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) |
| 19:47:29 | <dge> | even through a VM, and following the official install method with default config, and default session, it failed with no error printed and it run the Gnome session. even from startx or from default xsession or what ever... |
| 19:48:35 | <geekosaur> | if it's running the gnome session then it's not even attempting xmonad |
| 19:48:49 | <geekosaur> | there's no fallback mechanism in X11 startup |
| 19:58:27 | <dge> | not from startx, but from sddm |
| 19:59:08 | <dge> | it looks like i missed something on xmonad.hs config file maybe |
| 19:59:23 | <geekosaur> | @where paste |
| 19:59:23 | <lambdabot> | Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com |
| 20:03:51 | <dge> | ok, i get a compilation error after to try from stack recompile.... due to version between ghc and stack (8.10 for ghc and 9.2.7 from stack) that is bad. I have to upgrade stack, but missing space on VM disk (crying)... |
| 20:33:23 | × | dge quits (~jeromelan@221-22-190-109.dsl.ovh.fr) (Ping timeout: 246 seconds) |
| 21:35:51 | → | Guest1886 joins (~Guest18@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) |
| 21:43:10 | <Guest1886> | Having trouble with an app stealing keyboard focus. Reproduced this with a minimal xmonad config (i.e. just `import XMonad; main = xmonad def`). Repro: with the minimal config launch Godot4 (stable), and switch to a terminal with `modmask+j` then resize window with `modmap+h` and observe that keystrokes go to the Godot4 window even though the |
| 21:43:11 | <Guest1886> | terminal's borders are highlighted. I'm running latest ArchLinux: |
| 21:43:58 | <Guest1886> | libx11 1.8.4-1 |
| 21:43:59 | <Guest1886> | xmonad 0.17.1-87 |
| 21:43:59 | <Guest1886> | xmonad-contrib 0.17.1-86 |
| 21:44:00 | lisk1n | is now known as liskin |
| 21:44:23 | <geekosaur> | you're saying the xmonad keys are going to the app? |
| 21:44:34 | <Guest1886> | all keys are going to the app |
| 21:44:43 | <geekosaur> | that requires it to have done a key grab, which we can't prevent |
| 21:44:50 | <Guest1886> | xmonad keys still work |
| 21:44:54 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 21:45:00 | <geekosaur> | oh |
| 21:45:31 | <Guest1886> | It doesn't happen in e.g. Ubuntu 22.04 (with alt-tab) |
| 21:46:28 | <Guest1886> | i.e. with Ubuntu's stock window mgr and desktop |
| 21:47:02 | <geekosaur> | have you tried it with xmonad on ubuntu? or with a different window manager on arch? |
| 21:47:36 | <geekosaur> | we've had problems with arch's packaging of Haskell stuff (and in particular xmonad) but this would be somewhat weird |
| 21:48:45 | <Guest1886> | I tried xfce and lxde on arch and saw the issue randomly on lxde (alt-tabbing) but not on xfce. I'm trying xmonad in Ubuntu next |
| 21:50:54 | <Guest1886> | This is a related issue for Godot https://github.com/godotengine/godot/issues/74587 but it isn't really getting any attention leading me to think that not many people are seeing it. So I'm not sure what software has the issue. |
| 21:53:02 | <Guest1886> | As above, I reproduced with min config but I noticed that the problem is much more aggressive with my full config, notably with bluetile (i.e. grabs keyboard more often and much harder/nearly impossible to get keyboard focus back even when clicking mouse on intended window) |
| 21:53:11 | <geekosaur> | sounds like that's actually two issues, an earlier Windows-specific one and a more recent one that repros in lxde and i3 |
| 21:53:18 | <geekosaur> | and, apparently, xmonad |
| 21:53:55 | <geekosaur> | the i3 reproduction is 3 days old |
| 21:54:18 | <geekosaur> | which means just before the weekend so probably nobody sees it until tomorrow 🙂 |
| 21:55:17 | <Guest1886> | yes, I was thinking more of a general issue originally with the windows problem but since it didn't show up in Ubuntu (stock WM) or Arch XFCE it seems like the windows issue might be unrelated and that the i3 and xmonad issues *might* be caused by similar implementations (??) |
| 21:55:56 | <geekosaur> | well, we're both tiling, but that doesn |
| 21:55:59 | <geekosaur> | 't explain LXDE |
| 21:56:30 | <geekosaur> | I'd be curious as to whether it also happens with LXQt (same environment different implementation) |
| 21:57:12 | <Guest1886> | I'll test LXQt in Arch too |
| 21:57:15 | <geekosaur> | in any case it sounds like it's stealing focus |
| 21:59:09 | <Guest1886> | So I don't know much about X11 implementation but it sounds like client windows can choose to steal focus, overriding any focus controls implemented in window managers? |
| 21:59:23 | <geekosaur> | (LXDE is Gtk based, LXQt is part of a long term move from Gtk to Qt) |
| 21:59:30 | <geekosaur> | yes |
| 21:59:42 | <geekosaur> | it's strongly frowned upon |
| 21:59:51 | <Guest1886> | gotcha |
| 22:00:43 | <geekosaur> | but the same API is used for a program to set focus to an internal widget so they can't simply remove it |
| 22:07:45 | <Guest1886> | btw I found running `watch -n0.1 xdotool getwindowfocus getwindowname` useful for debugging this |
| 22:08:50 | <Guest1886> | just prints the currently focused window and the bug can be seen when it prints the Godot window name while xmonad is highlighting a different window |
| 22:09:36 | × | Guest1886 quits (~Guest18@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) (Quit: Client closed) |
| 22:09:36 | × | Guest18 quits (~Guest18@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) (Quit: Client closed) |
| 22:27:25 | → | Guest1886 joins (~Guest1886@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) |
| 22:28:11 | <Guest1886> | LXQt on Arch behaved the same as LXDE did |
| 22:30:20 | <Guest1886> | However there is a difference between what LXDE/Qt are doing and what XMonad is doing. LXDE/Qt keep correct window highlighting but XMonad doesn't |
| 22:32:15 | <Guest1886> | i.e. in the video ( https://github.com/godotengine/godot/issues/74587#issuecomment-1466538062 ) at 15 seconds you can see alt-tab to terminal fails but the Godot window keeps the highlighting. But when in XMonad the terminal I wan't to type in gets highlighted but the keystrokes keep going to Godot |
| 22:33:20 | <geekosaur> | hm. normally xmonad should get the focus change event and update the borders |
| 22:35:23 | <Guest1886> | Yes that's what's making think that at least part of the prob is in XMonad |
| 22:45:39 | <geekosaur> | https://paste.tomsmeding.com/Cx907lfH |
| 22:46:21 | <geekosaur> | then check the session log when this is happening. it should show either or both of FocusChangeEvent or CrossingEvent happening |
| 22:46:38 | <geekosaur> | (probably FocusChangeEvent since the mouse isn't causing it_ |
| 22:46:41 | <geekosaur> | ) |
| 22:48:02 | <Guest1886> | Will do |
| 22:48:43 | <Guest1886> | Also just confirmed bug occurs in Ubuntu 22.04.2 |
| 22:49:07 | <Guest1886> | xmonad 0.15 |
| 22:49:11 | <Guest1886> | totally default |
| 22:51:25 | <geekosaur> | the other alternative is you'll see a whole bunch of them, which would mean xmonad is indeed trying to track it but it's fighting with godot4 and you can't see the focus changes because they're happening too quickly |
| 22:52:04 | <geekosaur> | although in that case this might slow things down just enough to make them visible |
| 22:57:03 | <geekosaur> | one other thing to try is to enable EwmhDesktops and see if it still happens. for backward compatibility reasons we don't support EWMH by default, only ICCCM |
| 22:57:17 | <Guest1886> | xmonad.hs:6:30: error: |
| 22:57:18 | <Guest1886> | • Data constructor not in scope: |
| 22:57:18 | <Guest1886> | All :: Bool -> base-4.15.1.0:Data.Semigroup.Internal.All |
| 22:57:19 | <Guest1886> | • Perhaps you meant variable ‘all’ (imported from Prelude) |
| 22:57:19 | <Guest1886> | | |
| 22:57:20 | <Guest1886> | 6 | debugFocusEvents _ = return (All True) |
| 22:57:20 | <Guest1886> | | ^^^ |
| 22:57:21 | <Guest1886> | Please check the file for errors. |
| 22:57:31 | <Guest1886> | Tried `import Data.Semigroup.Internal` also |
| 22:57:38 | <geekosaur> | but this breaks a number of modern programs (for example, LibreOffice will get into a focus loop without EWMH) |
| 22:57:48 | <geekosaur> | oh, sorry, need to import Data.Monoid, forgot that |
| 22:58:00 | <Guest1886> | yeah I normally use EWMH and still saw the bug |
| 22:58:15 | <geekosaur> | https://paste.tomsmeding.com/cmdAN7aB |
| 23:00:37 | <geekosaur> | (…Data.Semigroup.Internal? It doesn't make any sense as a semigroup, it needs `mempty`) |
| 23:01:00 | <geekosaur> | guess they have weird organization for those modules |
| 23:07:54 | <Guest1886> | Which log should I look at? ~/.local/share/xorg/Xorg.0.log and /var/log/Xorg.0.log don't seem to have anything |
| 23:08:36 | <Guest1886> | I don't see anything under .xmonad/ |
| 23:08:52 | <geekosaur> | session log |
| 23:09:03 | <geekosaur> | for startx it'll be the text console |
| 23:09:17 | <geekosaur> | for display managers other than sddm it's ~/.xsession (usually) |
| 23:10:06 | <geekosaur> | for sddm it's ~/.local/share/sddm/xorg-session.log |
| 23:10:30 | <geekosaur> | sorry that was ~/.xsession-errors |
| 23:11:15 | <geekosaur> | for display managers other than sddm that is |
| 23:11:48 | <Guest1886> | ok I use startx... trying to find the magic ctrl-alt-f# key... |
| 23:12:04 | <geekosaur> | should be ctrl-alt-f1 |
| 23:12:47 | <Guest1886> | yeah I expected that but only >1 are working (new logins only) |
| 23:13:03 | <geekosaur> | although for some reason I've never understood that doesn't work on ubuntu, I always have to ctrl-alt-f2 and then alt-f1 |
| 23:15:22 | × | Guest1886 quits (~Guest1886@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) (Quit: Client closed) |
| 23:15:30 | <geekosaur> | oops? |
| 23:27:52 | → | Guest1886 joins (~Guest1886@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) |
| 23:31:44 | <Guest1886> | https://pastebin.com/GFm11sne |
| 23:31:48 | <geekosaur> | did you survive? |
| 23:34:12 | <geekosaur> | odd, looks like you killed it with ^C? |
| 23:34:26 | <geekosaur> | no focus changes logged, at least |
| 23:34:57 | <Guest1886> | yeah... startx wouldn't work while `script` was running so I just did `startx &> log` |
| 23:34:58 | <geekosaur> | so whatever godot is doing, xmonad isn't being informed of it by the server 😞 |
| 23:38:39 | <Guest1886> | Also, I had to start xmonad/startx with my usual config then reload to your debug config in-session. When I started with the debug config I had no input at all and had to `killall xorg` from another console. |
| 23:39:16 | <Guest1886> | I didn't see any obvious xmonad debug output in my pastebin, just the usual reload stuff |
| 23:39:43 | <geekosaur> | it should only have been logging focus change related events |
| 23:40:07 | <geekosaur> | I could have had you run debugEventsHook unconditionally but that would produce a lot of spam |
| 23:40:34 | <geekosaur> | that thing about the debug config sounds very wrong |
| 23:43:25 | × | Guest1886 quits (~Guest1886@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) (Quit: Client closed) |
| 23:43:37 | <geekosaur> | no, I had `return (All True)`. but it sounds as if it got `False` instead |
| 23:43:39 | <geekosaur> | sigh |
| 23:47:46 | → | Guest1886 joins (~Guest1886@node-1w7jr9yaj7srjfo5i42ldx870.ipv6.telus.net) |
| 23:50:03 | <Guest1886> | ok I tried again and everything worked with the debug script at session start, it just took longer than expected for alt+p to bring up dmenu |
| 23:52:29 | <Guest1886> | output looks similar, no focus change events. But I don't see any focus change events for `arandr` or the terminals I ran either. Is that expected? |
| 23:53:02 | <geekosaur> | arandr uses an override-redirect window, which can't be focused |
| 23:54:23 | <geekosaur> | the terminals won't show one on startup because that's a MapNotify event that includes focus. but switching focus from godot to the terminal should I think have included one |
| 23:54:33 | <geekosaur> | (although the fact that we do it might suppress it) |
| 23:55:05 | <geekosaur> | in any case the important but missing one is where godot is stealing focus back |
| 23:57:14 | <geekosaur> | I don't know what it's doing but the fact that xmonad doesn't receive an event from the server makes it impossible for xmonad to show it |
| 23:59:49 | <geekosaur> | but then, how does e.g. LXDE know? |
All times are in UTC on 2023-03-19.