2022-10-17 00:34:42 +0200 | Phaseditto | (~Phaseditt@p200300f03f4e5400fba0b8c980f21ad3.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 01:30:21 +0200 | wonko | (~wjc@2a0e:1c80:2:0:45:15:19:130) (Ping timeout: 260 seconds) |
2022-10-17 03:50:46 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2022-10-17 03:59:31 +0200 | ghormoon | (~ghormoon@ghorland.net) (Ping timeout: 248 seconds) |
2022-10-17 04:04:56 +0200 | banc | (banc@gateway/vpn/airvpn/banc) (Ping timeout: 260 seconds) |
2022-10-17 04:21:40 +0200 | td_ | (~td@83.135.9.59) (Ping timeout: 268 seconds) |
2022-10-17 04:23:18 +0200 | td_ | (~td@83.135.9.13) |
2022-10-17 04:24:10 +0200 | banc | (banc@gateway/vpn/airvpn/banc) |
2022-10-17 04:42:53 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat) |
2022-10-17 04:45:28 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) |
2022-10-17 04:45:49 +0200 | ghormoon | (~ghormoon@ghorland.net) |
2022-10-17 04:53:55 +0200 | berberman | (~berberman@user/berberman) (Ping timeout: 248 seconds) |
2022-10-17 05:52:10 +0200 | berberman | (~berberman@user/berberman) |
2022-10-17 06:36:06 +0200 | Kaladin | (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net) |
2022-10-17 07:05:08 +0200 | Kaladin | (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net) (Quit: Leaving) |
2022-10-17 07:06:37 +0200 | Kaladin | (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net) |
2022-10-17 07:08:02 +0200 | vanvik1 | (~vanvik@188.113.111.129) |
2022-10-17 07:08:12 +0200 | vanvik | (~vanvik@188.113.111.129) (Ping timeout: 264 seconds) |
2022-10-17 07:08:12 +0200 | vanvik1 | vanvik |
2022-10-17 07:10:06 +0200 | sagax | (~sagax_nb@user/sagax) |
2022-10-17 07:13:03 +0200 | sagax | (~sagax_nb@user/sagax) (*.net *.split) |
2022-10-17 07:13:03 +0200 | liskin[m] | (~liskinmat@2001:470:69fc:105::768) (*.net *.split) |
2022-10-17 07:13:03 +0200 | Solid[m] | (~slot-matr@2001:470:69fc:105::1:a84) (*.net *.split) |
2022-10-17 07:13:04 +0200 | devhashtag[m] | (~devhashta@2001:470:69fc:105::2:85a2) (*.net *.split) |
2022-10-17 07:13:04 +0200 | Spiker01[m] | (~s98742598@2001:470:69fc:105::2:8415) (*.net *.split) |
2022-10-17 07:13:04 +0200 | MangoIV[m] | (~mangoivma@2001:470:69fc:105::2:8417) (*.net *.split) |
2022-10-17 07:13:04 +0200 | bsima | (~bsima@2604:a880:400:d0::19f1:7001) (*.net *.split) |
2022-10-17 07:13:04 +0200 | PotatoGim_ | (sid99505@id-99505.lymington.irccloud.com) (*.net *.split) |
2022-10-17 07:13:04 +0200 | brianbnt | (~brianbnt@user/brianbnt) (*.net *.split) |
2022-10-17 07:13:51 +0200 | PotatoGim_ | (sid99505@id-99505.lymington.irccloud.com) |
2022-10-17 07:15:36 +0200 | brianbnt | (~brianbnt@user/brianbnt) |
2022-10-17 07:15:43 +0200 | bsima | (~bsima@2604:a880:400:d0::19f1:7001) |
2022-10-17 07:16:07 +0200 | Solid[m] | (~slot-matr@2001:470:69fc:105::1:a84) |
2022-10-17 07:17:51 +0200 | liskin[m] | (~liskinmat@2001:470:69fc:105::768) |
2022-10-17 07:20:20 +0200 | MangoIV[m] | (~mangoivma@2001:470:69fc:105::2:8417) |
2022-10-17 07:22:35 +0200 | devhashtag[m] | (~devhashta@2001:470:69fc:105::2:85a2) |
2022-10-17 07:22:35 +0200 | Spiker01[m] | (~s98742598@2001:470:69fc:105::2:8415) |
2022-10-17 07:24:26 +0200 | sagax | (~sagax_nb@user/sagax) |
2022-10-17 07:26:12 +0200 | berberman | (~berberman@user/berberman) (Ping timeout: 264 seconds) |
2022-10-17 07:41:48 +0200 | Kaladin | (~Kaladin@157-131-169-214.fiber.dynamic.sonic.net) (Quit: Leaving) |
2022-10-17 07:42:43 +0200 | [Leary] | (~Leary]@user/Leary/x-0910699) (Remote host closed the connection) |
2022-10-17 07:42:58 +0200 | [Leary] | (~Leary]@user/Leary/x-0910699) |
2022-10-17 08:06:52 +0200 | chomwitt | (~chomwitt@2a02:587:dc1e:5e00:35ee:8105:5f30:c2c7) |
2022-10-17 08:09:23 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 250 seconds) |
2022-10-17 08:28:53 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-10-17 08:38:43 +0200 | berberman | (~berberman@user/berberman) |
2022-10-17 09:09:48 +0200 | akamar | (~akamar@host-212-204-102-90.customer.m-online.net) (Remote host closed the connection) |
2022-10-17 09:18:30 +0200 | sagax | (~sagax_nb@user/sagax) (Remote host closed the connection) |
2022-10-17 09:18:50 +0200 | Ehllie | (~Thunderbi@217-67-208-66.itsa.net.pl) |
2022-10-17 09:33:54 +0200 | chomwitt | (~chomwitt@2a02:587:dc1e:5e00:35ee:8105:5f30:c2c7) (Quit: Leaving) |
2022-10-17 09:36:35 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 09:53:26 +0200 | <Phaseditto> | Does anyone know what i might be doing wrong when i try to build xmonad via cabal that i installed with GHCup when i get the Error message: cabal: Failed to build data-default-class-0.1.2.0 (which is required by exe:xmonad from xmonad-0.1.0.0) ? |
2022-10-17 10:09:27 +0200 | <dminuoso> | Phaseditto: Yes, you are depending on an import present in a package that has not been declared in your build-depends |
2022-10-17 10:09:36 +0200 | <dminuoso> | Phaseditto: In cabal, you may not implicitly use a transitive dependency. |
2022-10-17 10:09:42 +0200 | <dminuoso> | Oh wait. |
2022-10-17 10:09:47 +0200 | <dminuoso> | My squinting is poor. |
2022-10-17 10:09:54 +0200 | <dminuoso> | Phaseditto: Can you share the entire build eror? |
2022-10-17 10:10:00 +0200 | <Phaseditto> | sure |
2022-10-17 10:10:31 +0200 | <Phaseditto> | Error: cabal: Failed to build data-default-class-0.1.2.0 (which is required by |
2022-10-17 10:10:32 +0200 | <Phaseditto> | exe:test-xmonad from my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:10:32 +0200 | <Phaseditto> | Failed to build exe:hsc2hs from hsc2hs-0.68.8 (which is required by |
2022-10-17 10:10:33 +0200 | <Phaseditto> | exe:test-xmonad from my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:10:33 +0200 | <Phaseditto> | Failed to build splitmix-0.1.0.4 (which is required by exe:test-xmonad from |
2022-10-17 10:10:34 +0200 | <Phaseditto> | my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:10:34 +0200 | <Phaseditto> | Failed to build utf8-string-1.0.2 (which is required by exe:test-xmonad from |
2022-10-17 10:10:35 +0200 | <Phaseditto> | my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:10:40 +0200 | <Phaseditto> | Problem is, that there is no log file as far as i can see |
2022-10-17 10:10:56 +0200 | <dminuoso> | Is this when you run the `build` script? |
2022-10-17 10:11:05 +0200 | <Phaseditto> | yup |
2022-10-17 10:11:06 +0200 | <dminuoso> | Try running plain `cabal build` in the path |
2022-10-17 10:11:12 +0200 | <dminuoso> | Im not sure how much -v0 silences :p |
2022-10-17 10:11:35 +0200 | <Phaseditto> | oh that is WAY more verbose |
2022-10-17 10:11:52 +0200 | <dminuoso> | Yeah, the build script runs cabal with `-v0` as to avoid xmonad prompting needlessly |
2022-10-17 10:11:59 +0200 | <Phaseditto> | [1 of 5] Compiling Codec.Binary.UTF8.String ( Codec/Binary/UTF8/String.hs, dist/build/Codec/Binary/UTF8/String.o, dist/build/Codec/Binary/UTF8/String.dyn_o ) |
2022-10-17 10:11:59 +0200 | <Phaseditto> | [2 of 5] Compiling Codec.Binary.UTF8.Generic ( Codec/Binary/UTF8/Generic.hs, dist/build/Codec/Binary/UTF8/Generic.o, dist/build/Codec/Binary/UTF8/Generic.dyn_o ) |
2022-10-17 10:12:00 +0200 | <Phaseditto> | [3 of 5] Compiling Data.ByteString.Lazy.UTF8 ( Data/ByteString/Lazy/UTF8.hs, dist/build/Data/ByteString/Lazy/UTF8.o, dist/build/Data/ByteString/Lazy/UTF8.dyn_o ) |
2022-10-17 10:12:00 +0200 | <Phaseditto> | [4 of 5] Compiling Data.ByteString.UTF8 ( Data/ByteString/UTF8.hs, dist/build/Data/ByteString/UTF8.o, dist/build/Data/ByteString/UTF8.dyn_o ) |
2022-10-17 10:12:01 +0200 | <Phaseditto> | [5 of 5] Compiling Data.String.UTF8 ( Data/String/UTF8.hs, dist/build/Data/String/UTF8.o, dist/build/Data/String/UTF8.dyn_o ) |
2022-10-17 10:12:02 +0200 | <Phaseditto> | collect2: error: ld returned 1 exit status |
2022-10-17 10:12:02 +0200 | <Phaseditto> | `gcc' failed in phase `Linker'. (Exit code: 1) |
2022-10-17 10:12:03 +0200 | <Phaseditto> | Error: cabal: Failed to build data-default-class-0.1.2.0 (which is required by |
2022-10-17 10:12:03 +0200 | <Phaseditto> | exe:test-xmonad from my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:12:04 +0200 | <Phaseditto> | Failed to build exe:hsc2hs from hsc2hs-0.68.8 (which is required by |
2022-10-17 10:12:04 +0200 | <Phaseditto> | exe:test-xmonad from my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:12:05 +0200 | <Phaseditto> | Failed to build splitmix-0.1.0.4 (which is required by exe:test-xmonad from |
2022-10-17 10:12:05 +0200 | <Phaseditto> | my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:12:06 +0200 | <Phaseditto> | Failed to build utf8-string-1.0.2 (which is required by exe:test-xmonad from |
2022-10-17 10:12:06 +0200 | <Phaseditto> | my-xmonad-0.1.0.0). See the build log above for details. |
2022-10-17 10:12:13 +0200 | <dminuoso> | Use a paste website, or the network mechanisms will kick you off the network |
2022-10-17 10:12:19 +0200 | <dminuoso> | See topic |
2022-10-17 10:12:19 +0200 | <Phaseditto> | oh okay |
2022-10-17 10:12:23 +0200 | <dminuoso> | Or not |
2022-10-17 10:12:36 +0200 | <dminuoso> | https://paste.tomsmeding.com/ |
2022-10-17 10:12:42 +0200 | <dminuoso> | Or gist at github, or whatever |
2022-10-17 10:12:49 +0200 | <Phaseditto> | yeah |
2022-10-17 10:13:01 +0200 | <dminuoso> | I dont quite like what Im seeing though. |
2022-10-17 10:13:03 +0200 | <dminuoso> | Can you run cabal with -v2 |
2022-10-17 10:13:12 +0200 | <dminuoso> | This will produce a ton of output, so be sure to use a paste website |
2022-10-17 10:13:19 +0200 | <Phaseditto> | sure will do |
2022-10-17 10:13:47 +0200 | <dminuoso> | Before we go further, are you on a musl system? |
2022-10-17 10:13:58 +0200 | <Phaseditto> | nope |
2022-10-17 10:14:11 +0200 | <Phaseditto> | https://paste.tomsmeding.com/cabgeQRU |
2022-10-17 10:14:23 +0200 | <dminuoso> | Ah! |
2022-10-17 10:14:26 +0200 | <dminuoso> | You need to install `gmp` |
2022-10-17 10:14:40 +0200 | <dminuoso> | So I would consider this a ghcup bug, it should have told you so. |
2022-10-17 10:14:47 +0200 | <Phaseditto> | devel? |
2022-10-17 10:14:49 +0200 | <dminuoso> | But its hard to have diagnostics for every linux distribution out there |
2022-10-17 10:14:58 +0200 | <dminuoso> | No, just plain should be sufficient |
2022-10-17 10:15:04 +0200 | <dminuoso> | I think?> |
2022-10-17 10:15:08 +0200 | <Phaseditto> | got gmp-6.2.1_1 installed |
2022-10-17 10:15:53 +0200 | <dminuoso> | Try installing the -devel package? |
2022-10-17 10:15:59 +0200 | <Phaseditto> | sure |
2022-10-17 10:16:42 +0200 | <dminuoso> | Ah yes, you need the development package. |
2022-10-17 10:16:54 +0200 | <Phaseditto> | yeah it's building atm |
2022-10-17 10:17:30 +0200 | <Phaseditto> | also i replaced the filler with my old xmonad.hs |
2022-10-17 10:17:34 +0200 | <Phaseditto> | just to see how that pans out |
2022-10-17 10:17:36 +0200 | <dminuoso> | Yeah that's perfecftly fine. |
2022-10-17 10:18:09 +0200 | <Phaseditto> | This whole undertaking is also a precursor to getting waymonad running once it's mature enough |
2022-10-17 10:18:30 +0200 | <dminuoso> | The waymonad that bas been dead for 3 years? |
2022-10-17 10:18:37 +0200 | <Phaseditto> | the more you knowl... |
2022-10-17 10:18:39 +0200 | <dminuoso> | 4 even. |
2022-10-17 10:19:00 +0200 | <Phaseditto> | I just can't with sway for the life of it. The way it handles multi monitor is just ... n |
2022-10-17 10:19:00 +0200 | <dminuoso> | It was really just a single person, and I suppose they didnt have the energy |
2022-10-17 10:19:01 +0200 | <Phaseditto> | o |
2022-10-17 10:19:50 +0200 | <Phaseditto> | yeah not even judging, it's just a shame. wlroots might have made this a whole lot easier |
2022-10-17 10:20:08 +0200 | <dminuoso> | Honestly I think one of the biggest problems with wayland is that its all adhoc and not specified. |
2022-10-17 10:20:23 +0200 | <dminuoso> | That makes writing software for it way more difficult. |
2022-10-17 10:20:49 +0200 | <dminuoso> | While X has some severe deficiencies, clearly defined semantics and an extremely stable API are not amongst them. |
2022-10-17 10:20:53 +0200 | <Phaseditto> | Yeah the fact that you need to reinvent the wheel for every new project is crippling |
2022-10-17 10:21:51 +0200 | <dminuoso> | But truth be told, xmonad is what keeps me tied to X11. |
2022-10-17 10:22:20 +0200 | <Phaseditto> | same |
2022-10-17 10:22:26 +0200 | <Phaseditto> | i mean, WMs in general |
2022-10-17 10:22:39 +0200 | <Phaseditto> | DWM is the only one i could bastardize to behave like xmonad |
2022-10-17 10:25:08 +0200 | <dminuoso> | There's also i3 which you can customize quite arbitrarily as well |
2022-10-17 10:25:11 +0200 | <dminuoso> | If you can stand the pain of C. |
2022-10-17 10:25:41 +0200 | <Phaseditto> | The problem is that sway behaves like i3, and i haven't seen anyone being able to make the workspaces on multi monitors or at all behave like xmonad |
2022-10-17 10:26:13 +0200 | <dminuoso> | It took me a while to get used to the default behavior of xmonad on multi mopnitor |
2022-10-17 10:26:36 +0200 | <dminuoso> | But once I did, I began to embrace it - there's just so many right things with the way StackSet is used. |
2022-10-17 10:27:23 +0200 | <Phaseditto> | I prefer to have one set of workspaces accessible to every monitor. I have a set of workspaces, designated to functionality, 1 for instance is Production. When i want to access audacity and i know i have it open, i access 1, does not matter which monitor, it just works |
2022-10-17 10:27:42 +0200 | <dminuoso> | you can do that with xmonad too, and I used to use as well |
2022-10-17 10:28:10 +0200 | <dminuoso> | Mostly the pinning can also be solved by just a small bit of discipline |
2022-10-17 10:28:18 +0200 | <dminuoso> | My browser is always on 2, chat windows on 4 |
2022-10-17 10:28:22 +0200 | <dminuoso> | development stuff is on 1 |
2022-10-17 10:28:26 +0200 | <Phaseditto> | no this is the specific reason why i use xmonad to begin with :D |
2022-10-17 10:28:38 +0200 | <dminuoso> | well by "it with xmonad" I meant the deafult. |
2022-10-17 10:29:01 +0200 | <Phaseditto> | maybe i modified its behavior, don't remember |
2022-10-17 10:29:30 +0200 | <Phaseditto> | Though it's weird that this is not the default behavior or at least a setting on most WMs |
2022-10-17 10:29:38 +0200 | <Phaseditto> | in any case: https://paste.tomsmeding.com/Bqfms9oo |
2022-10-17 10:29:39 +0200 | <Phaseditto> | Did this ... work? |
2022-10-17 10:33:35 +0200 | <dminuoso> | Yes. |
2022-10-17 10:33:45 +0200 | <Phaseditto> | amazing |
2022-10-17 10:33:46 +0200 | <dminuoso> | What you saw is just a warning (as you can see in line 11 right next to the file + line) |
2022-10-17 10:33:57 +0200 | <dminuoso> | Where it says `warning:` |
2022-10-17 10:34:06 +0200 | <Phaseditto> | Yeah i would've guessed, i just expected more... resistance? |
2022-10-17 10:34:27 +0200 | <dminuoso> | Glad to have surprised you. :) |
2022-10-17 10:34:39 +0200 | <dminuoso> | A bit sad that it was that much of a hurdle, though |
2022-10-17 10:34:54 +0200 | <dminuoso> | Feel free to file a bug report on ghcup to not tell the user about `gmp-devel` on void |
2022-10-17 10:35:08 +0200 | <Phaseditto> | when i get around, sure :D |
2022-10-17 10:35:09 +0200 | <Phaseditto> | So all i need is to make a corresponding .desktop file and link / paste the binary? |
2022-10-17 10:35:17 +0200 | <dminuoso> | Nope |
2022-10-17 10:35:33 +0200 | <dminuoso> | So the build script already symlinks the artifact to the directory itself, that should be sufficient |
2022-10-17 10:35:46 +0200 | <dminuoso> | Just run `exec /path/to/your/xmonad//directory/xmonad` as your window manager now. |
2022-10-17 10:35:56 +0200 | <dminuoso> | Ah without the double slash of course. |
2022-10-17 10:36:01 +0200 | <Phaseditto> | does the rebuild go back to the build script in its own? |
2022-10-17 10:36:42 +0200 | <dminuoso> | Yes, so the way xmonad works is, it looks in your ~/.config/xmonad/ for whether an executable called `build` exists. |
2022-10-17 10:36:49 +0200 | <dminuoso> | And if it does, that is what it will use. |
2022-10-17 10:37:04 +0200 | <Phaseditto> | it's not currently located there, should i move it there? |
2022-10-17 10:37:09 +0200 | <dminuoso> | The directory, yes. |
2022-10-17 10:37:13 +0200 | <dminuoso> | Alternatively ~/.xmonad works too |
2022-10-17 10:37:38 +0200 | <Phaseditto> | so the whole build script and all in one of those corresponding directories and the rest is up to cabal? |
2022-10-17 10:38:30 +0200 | <Phaseditto> | In that case i will take a small break and try that in a bit |
2022-10-17 10:38:42 +0200 | <dminuoso> | I do not understand the question |
2022-10-17 10:39:04 +0200 | <dminuoso> | Basically there's just two bits you need: |
2022-10-17 10:40:13 +0200 | <dminuoso> | Ah the build script is incomplete by the way. |
2022-10-17 10:40:31 +0200 | <dminuoso> | Adapt it, so it symlinks to $1 |
2022-10-17 10:40:43 +0200 | <dminuoso> | First, ~/.xmonad/build or ~/.config/xmonad/build need to exist (for custom build scripts) |
2022-10-17 10:40:54 +0200 | <Phaseditto> | got it |
2022-10-17 10:41:11 +0200 | <dminuoso> | If a file there is found, it will be used to rebuild. The script will be passed the name of the resulting artifact, so `build` must place it at that path. |
2022-10-17 10:41:28 +0200 | <dminuoso> | (Whether or not that directory contains anything else, is almost entirely irrelevant) |
2022-10-17 10:41:30 +0200 | <dminuoso> | Second: |
2022-10-17 10:41:50 +0200 | <dminuoso> | You might want the build script to keep an *additional* symlink at a known path |
2022-10-17 10:42:07 +0200 | <Phaseditto> | hm okay |
2022-10-17 10:42:19 +0200 | <dminuoso> | Such that your X start script can `exec` directly into the existing binary, rather than relying on xmonad -- because that would try and `build` first (causing a delay) |
2022-10-17 10:42:39 +0200 | <dminuoso> | (In a custom build script, xmonad does not do any caching at the moment) |
2022-10-17 10:42:41 +0200 | <Phaseditto> | okay |
2022-10-17 10:43:30 +0200 | <Phaseditto> | i presume when i got the build script in ~/.xmonad/ or ~/.config/xmonad/ i need the corresponsing files around there aswell, such as the cabal file and xmonad.hs |
2022-10-17 10:43:43 +0200 | <dminuoso> | That doesnt really matter |
2022-10-17 10:43:49 +0200 | <dminuoso> | as long as the build script itself executes. |
2022-10-17 10:44:01 +0200 | <dminuoso> | so you can shuffle things around, but then adapt the build script to locate the proper directory |
2022-10-17 10:44:08 +0200 | <Phaseditto> | ah yeah |
2022-10-17 10:44:11 +0200 | <Phaseditto> | that was what i meant |
2022-10-17 10:44:15 +0200 | <dminuoso> | As soon as xmonad detects the build script, it really doesnt care about anything. it just calls that script |
2022-10-17 10:44:43 +0200 | <dminuoso> | Its then the scripts responsibility to produce an xmonad executable at the given argument |
2022-10-17 10:53:20 +0200 | <Phaseditto> | I will set everything up and test it out, that would be so cool if it would work |
2022-10-17 10:59:48 +0200 | wonko | (~wjc@2a0e:1c80:2:0:45:15:19:130) |
2022-10-17 11:05:55 +0200 | andrejsh[m] | (~andrejshm@2001:470:69fc:105::2:a171) |
2022-10-17 11:06:33 +0200 | <Phaseditto> | should i compile xmobar myself aswell or just take the xmobar-0.42_1 from xbps? |
2022-10-17 11:23:07 +0200 | <dminuoso> | Up to you, really. |
2022-10-17 11:23:15 +0200 | <dminuoso> | I would just use `cabal install` for this. |
2022-10-17 11:36:08 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 11:37:31 +0200 | ft | (~ft@p3e9bc57b.dip0.t-ipconnect.de) (Quit: leaving) |
2022-10-17 11:42:57 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 11:51:31 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 11:54:11 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 11:55:19 +0200 | <Phaseditto> | almost done with it, though when i try to start it it immediately closes and the error log is non conclusive: |
2022-10-17 11:55:20 +0200 | <Phaseditto> | $ /home/user/.xmonad/build /home/user/.xmonad/xmonad-x86_64-linux |
2022-10-17 11:59:50 +0200 | <geekosaur> | if you're using cabal, drop 'exec 1>&2' near the top of the buildscript so cabal sends the error messages to the right place (sigh) |
2022-10-17 12:00:00 +0200 | <geekosaur> | or run "xmonad --recompile" in a terminal |
2022-10-17 12:01:34 +0200 | <Phaseditto> | it recompiles successfully |
2022-10-17 12:02:47 +0200 | <geekosaur> | also you usually can't start xmonad directly because another window manager will already be running so it'll get an error about "access to private resource denied" |
2022-10-17 12:03:25 +0200 | <geekosaur> | that or you are trying to run it from a text terminal and it'll fail to connect to an X server; it does not start the server itself |
2022-10-17 12:03:52 +0200 | <geekosaur> | if you're at a virtual console, try: startx /path/to/xmonad |
2022-10-17 12:04:23 +0200 | <geekosaur> | (you must specify the full path or it'll use the default window manager and pass "xmonad" as a parameter to it. startx is weird) |
2022-10-17 12:05:45 +0200 | <Phaseditto> | my tests were done through configuration in lightdm |
2022-10-17 12:05:58 +0200 | <Phaseditto> | just throws me back to the greeter |
2022-10-17 12:07:48 +0200 | <geekosaur> | 😞 |
2022-10-17 12:09:52 +0200 | <geekosaur> | is there anything in .xsession-errors? |
2022-10-17 12:12:24 +0200 | <Phaseditto> | lemme check |
2022-10-17 12:13:54 +0200 | <Phaseditto> | oh... |
2022-10-17 12:14:13 +0200 | <Phaseditto> | "Couldn't exec xmonad: No such file or directory" |
2022-10-17 12:14:39 +0200 | <geekosaur> | x11 via a greeter won't have the path your terminal does |
2022-10-17 12:14:55 +0200 | <Phaseditto> | i made a .desktop file for it |
2022-10-17 12:15:11 +0200 | <Phaseditto> | thought that would solve the problem |
2022-10-17 12:15:46 +0200 | <Phaseditto> | should probably enter the whole path in the exec section of said file |
2022-10-17 12:15:59 +0200 | <geekosaur> | you would still need a full pathname, or use a wrapper script that sets $PATH (I used a wrapper script that did "source ~/.profile" until I arranged for X11 to do so itself) |
2022-10-17 12:16:28 +0200 | <Phaseditto> | so either i have the corresponding binary in /usr/bin or i put the whole path |
2022-10-17 12:16:37 +0200 | <geekosaur> | yes |
2022-10-17 12:16:45 +0200 | <Phaseditto> | alright, will try that in a bit |
2022-10-17 12:19:15 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 12:26:36 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 12:26:44 +0200 | <Phaseditto> | Ladies and Gentlemen, it works |
2022-10-17 12:26:57 +0200 | <Phaseditto> | currently on xmonad on void |
2022-10-17 12:27:18 +0200 | <Phaseditto> | With my own config, xmobar and everything |
2022-10-17 12:27:32 +0200 | <dminuoso> | Very nice :) |
2022-10-17 12:27:40 +0200 | <dminuoso> | And with a custom v2-build ontop. |
2022-10-17 12:28:29 +0200 | <Phaseditto> | Entirely separate from xbps but that's not a problem for me, might even prove as a somewhat portable setup |
2022-10-17 12:28:53 +0200 | <dminuoso> | Yes, this is definitely more portable. |
2022-10-17 12:29:12 +0200 | <dminuoso> | Outside of native dependencies, all haskell dependencies can be constrained or even pinned |
2022-10-17 12:29:21 +0200 | <dminuoso> | (via tight bounds or lock file) |
2022-10-17 12:29:34 +0200 | <Phaseditto> | Again, thank you and geekosaur for the help |
2022-10-17 12:29:42 +0200 | <dminuoso> | You're welcome. |
2022-10-17 12:30:46 +0200 | <Phaseditto> | When i am less sick and got more time i might write a little documentation for the Void crowd how to get xmonad running there. It initially kept me from switching to the distro since i had to opt for DWM to have a somewhat similar experience |
2022-10-17 12:32:58 +0200 | <dminuoso> | Feel free to supply that documentation to our wiki at https://wiki.haskell.org/Xmonad |
2022-10-17 12:33:38 +0200 | <Phaseditto> | When i get around to it, i will set a reminder for myself |
2022-10-17 12:33:48 +0200 | <Phaseditto> | When i get around to it, until then i will set a reminder for myself |
2022-10-17 12:34:06 +0200 | <Phaseditto> | Whoops, new-era messenger habit |
2022-10-17 12:49:47 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 12:55:10 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2022-10-17 12:58:53 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 13:11:51 +0200 | Ehllie | (~Thunderbi@217-67-208-66.itsa.net.pl) (Ping timeout: 252 seconds) |
2022-10-17 13:14:35 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 13:15:27 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 13:19:48 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Client Quit) |
2022-10-17 13:36:29 +0200 | <Solid> | (please add it to the website instead of a desolate wiki) |
2022-10-17 13:45:26 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
2022-10-17 13:48:39 +0200 | <geekosaur> | they already left |
2022-10-17 13:49:11 +0200 | <Solid> | oh |
2022-10-17 14:05:32 +0200 | cfricke | (~cfricke@user/cfricke) (Ping timeout: 268 seconds) |
2022-10-17 14:12:46 +0200 | Ehllie | (~Thunderbi@217-67-208-66.itsa.net.pl) |
2022-10-17 14:28:33 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 250 seconds) |
2022-10-17 14:43:20 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) |
2022-10-17 14:43:57 +0200 | <Phaseditto> | Solid i was merely gone and i read through the logs. will do when i get around to do that |
2022-10-17 14:44:27 +0200 | <Phaseditto> | Haven't installed an IRC client yet so this is just a guest session over my browser |
2022-10-17 14:53:30 +0200 | <geekosaur> | you may be interested in matrix |
2022-10-17 14:54:25 +0200 | <geekosaur> | see https://element.io (element is the most popular, but not the only, matrix client) |
2022-10-17 14:55:20 +0200 | <geekosaur> | https://matrix.org has a list of other clients |
2022-10-17 14:55:25 +0200 | <Phaseditto> | I have my own matrix / elment server but it's unfederated and i muslti sessions are not a thing yet |
2022-10-17 14:55:37 +0200 | <geekosaur> | ah |
2022-10-17 14:56:06 +0200 | Phaseditto | (~Phaseditt@p200300f03f0a9400773b3c68de96c9f8.dip0.t-ipconnect.de) (Quit: Client closed) |
2022-10-17 15:05:57 +0200 | Phaseditto | (~r5on11c@p5ddf8ff3.dip0.t-ipconnect.de) |
2022-10-17 15:06:29 +0200 | <Phaseditto> | Test, is this working? |
2022-10-17 15:10:34 +0200 | <geekosaur> | yes |
2022-10-17 15:11:19 +0200 | <Phaseditto> | Good, i set up irssi real quick so i don't have to do this over the browser |
2022-10-17 15:11:56 +0200 | geekosaur | prefers hexchat |
2022-10-17 15:12:01 +0200 | <geekosaur> | but whatever floats your boat |
2022-10-17 15:12:19 +0200 | <Phaseditto> | i literally took the first thing the gentoo people answered in their Discord |
2022-10-17 15:13:08 +0200 | <Phaseditto> | also i am a Terminal rat, so i like CLIs (i know they are more cumbersome overall ^^') |
2022-10-17 15:13:43 +0200 | <geekosaur> | I hang out in a couple channels which use flags and such that don't render right in most terminals |
2022-10-17 15:14:05 +0200 | <geekosaur> | and emoticons (borderline) etc. |
2022-10-17 15:14:38 +0200 | <geekosaur> | mostly I use matrix from my phone because irc clients for android suck |
2022-10-17 15:15:04 +0200 | <geekosaur> | but doing chanop stuff sucks even more from matrix so I use a real irc client on the desktop |
2022-10-17 15:15:29 +0200 | <geekosaur> | (chanop here, #haskell* channels, ##soccer) |
2022-10-17 15:15:42 +0200 | <Phaseditto> | Yeah i haven't used IRC in years but slowly i prefer it more over the alternatives again |
2022-10-17 15:20:47 +0200 | <Phaseditto> | I have this odd behavior that, when i recompile xmonad and restart it i don't see any changes. The restart is happening, i can see the very short flicker but i only get the changes when i log out and in again |
2022-10-17 15:27:13 +0200 | <geekosaur> | are you changing your layout hook? |
2022-10-17 15:27:29 +0200 | <Phaseditto> | the build file is in ~/.xmonad/ . The only difference is that the xmonad folder is symlinked but that should not pose a problem, no? |
2022-10-17 15:27:41 +0200 | <geekosaur> | it doesn't |
2022-10-17 15:28:03 +0200 | <geekosaur> | if you change only your layout hook and the type doesn't change, it will be ignored until you mod-shift-space |
2022-10-17 15:28:32 +0200 | <Phaseditto> | This time for instance i changed myFocusBorderColor to a different value |
2022-10-17 15:28:35 +0200 | <geekosaur> | because it doesn't detect the change at runtime and there are things like changing the number of master windows that you might want to keep across restarts |
2022-10-17 15:28:43 +0200 | <geekosaur> | oh, that should have worked |
2022-10-17 15:28:47 +0200 | <Phaseditto> | thought so |
2022-10-17 15:30:22 +0200 | <Phaseditto> | makes adjusting the look quite the hassle |
2022-10-17 15:31:53 +0200 | <geekosaur> | hm. I use a build script and I can chang stuff at runtime fine without having to log out/in |
2022-10-17 15:32:47 +0200 | <Phaseditto> | maybe i am missing something in my build script? |
2022-10-17 15:33:10 +0200 | <geekosaur> | probably not or logging out and in wouldn't do it either |
2022-10-17 15:33:36 +0200 | <Phaseditto> | makes sense but then i have no idea what's wrong |
2022-10-17 15:36:06 +0200 | <geekosaur> | neither do I 😞 if the one works then the other should as well |
2022-10-17 15:36:16 +0200 | <Phaseditto> | the rest is state handling |
2022-10-17 15:36:35 +0200 | <Phaseditto> | i could remove the xmonad.state but that would probably just make it crash |
2022-10-17 15:37:29 +0200 | <geekosaur> | they're actually the same code path, mod-q recompiles if necedssary and then re-exsecs xmonad. the only difference is the new one is passed a parameter pointing to a state file preserving the layout and ExtensibleState, neither of which is involved with border color |
2022-10-17 15:40:38 +0200 | <Phaseditto> | The thing is that literally no changes go through. Key bindings aswell |
2022-10-17 15:40:52 +0200 | <Phaseditto> | until i log |
2022-10-17 15:41:13 +0200 | <geekosaur> | yes, that sounds like it's running the old version of your compiled config |
2022-10-17 15:41:27 +0200 | <geekosaur> | can you pastebin your build script? |
2022-10-17 15:41:30 +0200 | <geekosaur> | @where paste |
2022-10-17 15:41:30 +0200 | <lambdabot> | Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com |
2022-10-17 15:41:54 +0200 | <Phaseditto> | https://paste.tomsmeding.com/Mgcmm9bC |
2022-10-17 15:42:16 +0200 | <Phaseditto> | literally as simple as can be |
2022-10-17 15:44:20 +0200 | <geekosaur> | hm. actually I wonder if that works. you might check the session file for errors |
2022-10-17 15:44:48 +0200 | <Phaseditto> | aite |
2022-10-17 15:44:56 +0200 | <geekosaur> | it occurs to me that the file that's being written is the one that';s running and something might be throwing ETXTBSY as a result |
2022-10-17 15:45:46 +0200 | <Phaseditto> | thanks for the hint i will check it out in a bit |
2022-10-17 15:45:53 +0200 | <geekosaur> | I have mine copy instead of linking out of cabal's build area, and move the old one to a backup, so that can't happen |
2022-10-17 15:46:16 +0200 | <Phaseditto> | ah yeah i might try that in a bit |
2022-10-17 15:46:23 +0200 | <Phaseditto> | currently in a sudden VC |
2022-10-17 15:58:57 +0200 | <geekosaur> | (if you're wondering how this would work on login, that recompile (forced because it can't know when to rebuild when you have a build script) is done by the main xmonad binary instead of by your compiled config like mod-q restarts) |
2022-10-17 16:03:12 +0200 | [Leary] | (~Leary]@user/Leary/x-0910699) (Remote host closed the connection) |
2022-10-17 16:04:02 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-10-17 16:13:39 +0200 | amenonsen | (~amenonsen@pitta.toroid.org) (Remote host closed the connection) |
2022-10-17 16:14:01 +0200 | amenonsen | (~amenonsen@pitta.toroid.org) |
2022-10-17 16:20:08 +0200 | [Leary] | (~Leary]@user/Leary/x-0910699) |
2022-10-17 16:34:55 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2022-10-17 16:56:41 +0200 | Ehllie | (~Thunderbi@217-67-208-66.itsa.net.pl) (Ping timeout: 260 seconds) |
2022-10-17 17:19:05 +0200 | telser | (~quassel@user/telser) |
2022-10-17 17:19:05 +0200 | telser | (~quassel@user/telser) (Client Quit) |
2022-10-17 17:23:22 +0200 | <Phaseditto> | geekosaur can you paste your build script maybe? |
2022-10-17 17:25:10 +0200 | <geekosaur> | I'm just using the example cabal build script. https://github.com/geekosaur/xmonad.hs/blob/skkukuk/build |
2022-10-17 17:26:14 +0200 | <xmonadtrack> | xmonad-contrib Tony Zorman * v0.17.1-33-g4d7ae81f: X.U.Parser: Feature parity with ReadP (2 weeks ago, 2 files, 103+ 2-) https://github.com/xmonad/xmonad-contrib/commit/4d7ae81f7ad7 |
2022-10-17 17:26:14 +0200 | <xmonadtrack> | xmonad-contrib Tony Zorman * v0.17.1-34-g0bef428f: X.U.Parser: Inline definitions (13 days ago, 1 file, 36+ 4-) https://github.com/xmonad/xmonad-contrib/commit/0bef428f8fe5 |
2022-10-17 17:26:17 +0200 | <Phaseditto> | hold on, this script uses cabal install instead of cabal build, does that make any difference? |
2022-10-17 17:26:20 +0200 | <xmonadtrack> | xmonad-contrib Tony Zorman * v0.17.1-35-g2b1a15c9: X.P.OrgMode: Remove pLast (2 weeks ago, 1 file, 2+ 7-) https://github.com/xmonad/xmonad-contrib/commit/2b1a15c9e57d |
2022-10-17 17:26:27 +0200 | <xmonadtrack> | xmonad-contrib Tony Zorman {GitHub} * v0.17.1-41-g05c4c776: Merge pull request #759 from slotThe/parser/feature-parity (2 minutes ago, 0 files, 0+ 0-) https://github.com/xmonad/xmonad-contrib/commit/05c4c776af3a |
2022-10-17 17:27:27 +0200 | <geekosaur> | you're using list-bin to grab the built config, the build script uses install to lift it out of dist-newstyle |
2022-10-17 17:27:40 +0200 | <geekosaur> | mostly this is left over from cabal v1, at some point I may rewrite it |
2022-10-17 17:31:03 +0200 | <geekosaur> | either way you would need to mv (not cp) the running config to a backup name before installing (however you do it) the new one |
2022-10-17 17:31:34 +0200 | <Phaseditto> | why is that |
2022-10-17 17:31:44 +0200 | <geekosaur> | but this is probably harder if you ln to the build artifact in dist_newstyle because you'd need to find and move it before running cabal |
2022-10-17 17:31:55 +0200 | <geekosaur> | [17 13:44:56] <geekosaur> it occurs to me that the file that's being written is the one that';s running and something might be throwing ETXTBSY as a result |
2022-10-17 17:32:28 +0200 | <geekosaur> | basically you can't overwrite a file that is currently running because the OS expects to be able to load pages from it on the fly |
2022-10-17 17:32:35 +0200 | <Phaseditto> | ooooh yeah |
2022-10-17 17:32:38 +0200 | <Phaseditto> | that makes sense |
2022-10-17 17:32:53 +0200 | <Phaseditto> | hm |
2022-10-17 17:34:38 +0200 | <geekosaur> | I'd say instead of ln -sf you cp, and before doing that mv the existing one out of the way |
2022-10-17 17:34:54 +0200 | <Phaseditto> | i could give that a try, gimme a sec |
2022-10-17 17:35:34 +0200 | <Phaseditto> | Hold on, remove the symlink or the actual file? |
2022-10-17 17:36:07 +0200 | <geekosaur> | it won;t be a symlink any more, it would be a copy |
2022-10-17 17:36:13 +0200 | <Phaseditto> | right |
2022-10-17 17:36:22 +0200 | <geekosaur> | otherwise you're just pushing the problem down into dist_newstyle |
2022-10-17 17:36:31 +0200 | <geekosaur> | and it'll be harder to do the backup step |
2022-10-17 17:37:33 +0200 | <Phaseditto> | so instead of "ln -sf "$bin" "$1" i do rm "$1" and cp "$bin" "$1" |
2022-10-17 17:38:14 +0200 | <geekosaur> | well, I'd do `mv "$1" "$1.bak"` but I think if you `rm` it it gets copied to swap |
2022-10-17 17:38:21 +0200 | <geekosaur> | so it can keep paging from it |
2022-10-17 17:38:50 +0200 | <Phaseditto> | i will try the rm version, see how that goes |
2022-10-17 17:39:28 +0200 | <geekosaur> | (the OS can't know you're immediately going to exec the new file) |
2022-10-17 17:39:56 +0200 | <geekosaur> | hm, actually neither can you, --recompile is separate from --restart) |
2022-10-17 17:40:05 +0200 | <Phaseditto> | yup |
2022-10-17 17:40:15 +0200 | <Phaseditto> | also it did't change |
2022-10-17 17:40:26 +0200 | <Phaseditto> | i can try to mv but i think that also makes no difference |
2022-10-17 17:43:42 +0200 | <geekosaur> | first one wouldn't work because it'd be moving the symlink which will do nothing useful |
2022-10-17 17:43:52 +0200 | <geekosaur> | I mean,m the first restart after the change |
2022-10-17 17:44:08 +0200 | <Phaseditto> | i tried the mv after i switched to cping |
2022-10-17 17:44:12 +0200 | <Phaseditto> | didn't work either |
2022-10-17 17:44:37 +0200 | <geekosaur> | hm. pastebin your current build script? |
2022-10-17 17:44:41 +0200 | <Phaseditto> | sure, sec |
2022-10-17 17:45:00 +0200 | <Phaseditto> | https://paste.tomsmeding.com/Juzs0JRr |
2022-10-17 17:45:32 +0200 | <geekosaur> | that should work 😞 |
2022-10-17 17:45:38 +0200 | <[Leary]> | Phaseditto: If you're using `launch` in your xmonad.hs, you might need to switch it for `xmonad`. If not, rather than the build script, I want to know what your logs show. |
2022-10-17 17:45:49 +0200 | <Phaseditto> | lemme check |
2022-10-17 17:46:22 +0200 | <Phaseditto> | nope, no launch |
2022-10-17 17:48:12 +0200 | <Phaseditto> | XMonad is recompiling and replacing itself with another XMonad process because the current process is called "xmonad" but the compiled configuration should be called "xmonad-x86_64-linux" |
2022-10-17 17:48:16 +0200 | <Phaseditto> | lul |
2022-10-17 17:49:24 +0200 | <geekosaur> | yes, that's an unfortunate message that happens because the first compile is done by xmonad instead of your config, as I described earlier |
2022-10-17 17:49:49 +0200 | <Phaseditto> | well it says that twice |
2022-10-17 17:50:05 +0200 | <Phaseditto> | should i just copy it as "xmonad"? |
2022-10-17 17:50:12 +0200 | <geekosaur> | no |
2022-10-17 17:50:40 +0200 | <Phaseditto> | can i tell restart to use a specific file? |
2022-10-17 17:51:18 +0200 | <geekosaur> | if you replace th keybinding, yes |
2022-10-17 17:53:39 +0200 | <geekosaur> | https://hackage.haskell.org/package/xmonad-0.17.1/docs/XMonad-Operations.html#v:restart |
2022-10-17 17:55:30 +0200 | <Phaseditto> | does it matter where i define the restart behavior in the HS file? |
2022-10-17 17:56:36 +0200 | <geekosaur> | this would be a keybinding |
2022-10-17 17:56:52 +0200 | <Phaseditto> | ah okay |
2022-10-17 18:01:10 +0200 | <Phaseditto> | something like this: |
2022-10-17 18:01:12 +0200 | <Phaseditto> | , ("M-q", restart "/home/r5on11c/.xmonad/xmonad-x86_64-linux" True) -- Restart xmonad |
2022-10-17 18:01:59 +0200 | <geekosaur> | that will restart but not recompile |
2022-10-17 18:02:35 +0200 | <Phaseditto> | yeah i know, i haven't done concatenated commands within a single keybind yet |
2022-10-17 18:03:46 +0200 | <geekosaur> | use >> to chain commands |
2022-10-17 18:03:58 +0200 | <Phaseditto> | gotcha |
2022-10-17 18:04:39 +0200 | <geekosaur> | that said, `recompile` is something of a pain to use directly and you can't spawn `xmonad --recompile` because it will run in the background (and you want it to, you don't want xmonad to block while compiling) |
2022-10-17 18:05:18 +0200 | <Phaseditto> | that's a shame.. |
2022-10-17 18:06:05 +0200 | <Phaseditto> | i will restart xmonad manually with logging out and in so i at least have that at my disposal |
2022-10-17 18:06:18 +0200 | Phaseditto | (~r5on11c@p5ddf8ff3.dip0.t-ipconnect.de) (Quit: Lost terminal) |
2022-10-17 18:09:06 +0200 | Phaseditto | (~r5on11c@p5ddf8ff3.dip0.t-ipconnect.de) |
2022-10-17 18:09:22 +0200 | <Phaseditto> | there we go |
2022-10-17 18:10:56 +0200 | <Phaseditto> | the restart works accordingly, that makes things easier |
2022-10-17 18:14:07 +0200 | <Phaseditto> | i set it back to symlinking and it still seems to work |
2022-10-17 18:14:30 +0200 | <Phaseditto> | don't know which method is preferrable |
2022-10-17 18:57:28 +0200 | <dminuoso> | geekosaur: How does xmonad know that compilation is done? |
2022-10-17 18:58:28 +0200 | <geekosaur> | it doesn't. these days the restart sequence is `spawn "xmonad --recompile; xmonad --restart"` and the restart message comes in when it's done |
2022-10-17 18:58:43 +0200 | <dminuoso> | So the manager is blocked while recompilation is going on? |
2022-10-17 18:58:47 +0200 | <geekosaur> | no |
2022-10-17 18:58:54 +0200 | <dminuoso> | Oh `spawn` sorry! |
2022-10-17 18:58:59 +0200 | <geekosaur> | the whole thing is backgrounded |
2022-10-17 18:59:32 +0200 | <dminuoso> | Ohh I see, so its actually the spawned thread that will, outside, call xmonad again, triggering the replacement |
2022-10-17 18:59:39 +0200 | <geekosaur> | but the shell sequence isn't so *it* (but not xmonad) knows when compilation is done, and sends XMONAD_RESTART |
2022-10-17 18:59:41 +0200 | <dminuoso> | or *process rather |
2022-10-17 19:00:30 +0200 | <geekosaur> | (client message sent to the root window; xmonad listens for that and does the actual restart) |
2022-10-17 19:00:57 +0200 | <dminuoso> | Okay, and `spawn` just double forks. |
2022-10-17 19:01:01 +0200 | <geekosaur> | yes |
2022-10-17 19:03:51 +0200 | <dminuoso> | So it seems to me, that one can also just bind a key to `spawn "/path/to/build; xmonad --restart"` too, |
2022-10-17 19:04:15 +0200 | <geekosaur> | right, but it's te restart part that Phaseditto was trying to replace, not the compile part |
2022-10-17 19:04:17 +0200 | <dminuoso> | Adapt the build script to forward stderr to the xmonad.errors directory |
2022-10-17 19:04:25 +0200 | <dminuoso> | Fair |
2022-10-17 19:05:10 +0200 | <geekosaur> | also build wants a parameter which is the binary to create |
2022-10-17 19:07:10 +0200 | <dminuoso> | Yeah, figured that one out already :) |
2022-10-17 19:07:18 +0200 | <dminuoso> | The interface is somewhat quirky |
2022-10-17 19:07:37 +0200 | <dminuoso> | I mean the entire restart/startup/rebuild interface |
2022-10-17 19:07:47 +0200 | <dminuoso> | Cant quite put my thumb on it, but it doesnt feel right |
2022-10-17 19:07:51 +0200 | <geekosaur> | there's also fun stuff like cabal redirecting errors to stdout |
2022-10-17 19:08:13 +0200 | <geekosaur> | it's not so much designed as grown from a much simpler setup |
2022-10-17 19:08:41 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.7) |
2022-10-17 19:09:02 +0200 | <dminuoso> | If only I was interested in hacking on my xmonad config again, I might be motivated to invest some work |
2022-10-17 19:09:17 +0200 | <dminuoso> | But as the old saying goes: never change a running xmonad config. |
2022-10-17 19:39:13 +0200 | <Phaseditto> | Currently spending my time making my xmobar resemble my DWM setup |
2022-10-17 19:40:34 +0200 | <Phaseditto> | i can't pass the restart parameters when call the restart in the terminal, can i? |
2022-10-17 19:40:58 +0200 | <Phaseditto> | If i could i could just make a recompile & restart script that handles the timing |
2022-10-17 19:41:24 +0200 | <geekosaur> | calling `xmonad --restart` sends the restart parameters automatically |
2022-10-17 19:41:37 +0200 | <geekosaur> | [17 16:58:28] <geekosaur> it doesn't. these days the restart sequence is `spawn "xmonad --recompile; xmonad --restart"` and the restart message comes in when it's done |
2022-10-17 19:42:23 +0200 | <geekosaur> | (`xmonad --restart` just sends an `XMONAD_RESTART` message to the root window; xmonad handles that in its builtin event handler and does `restart (its own path) True` |
2022-10-17 19:44:48 +0200 | <Phaseditto> | though i would need to set the restart path in the xmonad.hs then yes? |
2022-10-17 19:45:03 +0200 | <Phaseditto> | since i have only done so for the keybinding, but not globally for xmonad itself |
2022-10-17 19:46:20 +0200 | <geekosaur> | you could conceivably duplicate the `handle` code in your `handleEventHook` with your own path |
2022-10-17 19:46:39 +0200 | <Phaseditto> | i mean elsewise it would do default behavior and i would end up with the same problem |
2022-10-17 19:47:20 +0200 | <geekosaur> | https://github.com/xmonad/xmonad/blob/master/src/XMonad/Main.hs#L415-L419 |
2022-10-17 19:48:00 +0200 | <geekosaur> | if you handle it in `handleEventHook` it'll override the built-in behavior |
2022-10-17 19:49:19 +0200 | <Phaseditto> | gonna check that |
2022-10-17 19:49:50 +0200 | <Phaseditto> | that configuration right there only tackles the restart event right? |
2022-10-17 19:50:14 +0200 | <geekosaur> | yes |
2022-10-17 19:50:36 +0200 | <geekosaur> | if you look around it you'll notice that it's just one out of a bunch of equations for `handle` |
2022-10-17 19:51:29 +0200 | <Phaseditto> | yeah, which was what i suspected but my haskell syntax understanding is pretty rudamentary |
2022-10-17 19:51:55 +0200 | <Phaseditto> | let me give that a spin |
2022-10-17 19:52:42 +0200 | <geekosaur> | you can't quite use it as is, handleEventHook has different semantics from the built-in handler |
2022-10-17 19:55:40 +0200 | <geekosaur> | https://paste.tomsmeding.com/T9NZv9yx |
2022-10-17 19:56:20 +0200 | <Phaseditto> | was about to say, it don't work :D |
2022-10-17 19:56:29 +0200 | <geekosaur> | technically "wrong" as the restart leg should return (All False) to indicate it's been handled… but if it's been handled then that should never be reached 🙂 |
2022-10-17 19:57:15 +0200 | <Phaseditto> | is the inclusion of handle _ = return (All True) intentional? |
2022-10-17 19:57:19 +0200 | <geekosaur> | yes |
2022-10-17 19:57:50 +0200 | <geekosaur> | you aren't handling all possible events, you're taking one event type and handling it, and passing everything else on to the default handler |
2022-10-17 19:58:18 +0200 | <Phaseditto> | roger |
2022-10-17 19:58:37 +0200 | <geekosaur> | so the first one matches the ClientMessageEvent and the second one matches everything else and says "we didn't handle this, do the default handler" |
2022-10-17 19:59:12 +0200 | <Phaseditto> | i suppose the when was suppposed to be a then |
2022-10-17 19:59:18 +0200 | <geekosaur> | no |
2022-10-17 19:59:26 +0200 | <geekosaur> | @i8ndex when |
2022-10-17 19:59:26 +0200 | <lambdabot> | Control.Monad |
2022-10-17 19:59:39 +0200 | <Phaseditto> | oh misread |
2022-10-17 19:59:48 +0200 | <Phaseditto> | though it does not compile |
2022-10-17 19:59:53 +0200 | <geekosaur> | when <condition> <monadic action> |
2022-10-17 19:59:58 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2022-10-17 20:00:08 +0200 | <geekosaur> | and it performs a default (`return ()`) if the condition is false |
2022-10-17 20:00:47 +0200 | <geekosaur> | so it's shorter than `if <condition> then <action> else return ()` which is what you'd have to write otherwise |
2022-10-17 20:01:15 +0200 | <geekosaur> | (you do not want the `sendMessage` the builtin handler does, you want to pass it on to the default handler) |
2022-10-17 20:01:17 +0200 | <Phaseditto> | https://paste.tomsmeding.com/mw0sUdTe |
2022-10-17 20:01:55 +0200 | <geekosaur> | did you see the `@index` I did? you need to import Control.Monad to have `when` |
2022-10-17 20:02:16 +0200 | <geekosaur> | (`whenX` does something a bit different and wrong here) |
2022-10-17 20:02:17 +0200 | <Phaseditto> | oh sorry, not entirely there. Still sick, excuse my lack of attentiveness ^^' |
2022-10-17 20:03:25 +0200 | <Phaseditto> | compiling succeeded |
2022-10-17 20:04:33 +0200 | <Phaseditto> | still does not work |
2022-10-17 20:04:56 +0200 | <Phaseditto> | Not a biggie, i might check on later why that is |
2022-10-17 20:05:15 +0200 | <geekosaur> | hm |
2022-10-17 20:37:17 +0200 | <Phaseditto> | different topic, does anyone here use pipewire, and if yes, do you start it via the startup hook of xmonad? |
2022-10-17 20:41:07 +0200 | <Phaseditto> | or in a different manner? |
2022-10-17 20:41:36 +0200 | <geekosaur> | I run under MATE so that kind of thing is started by its session manager |
2022-10-17 20:47:01 +0200 | <Phaseditto> | usually i just call pipewire via a corresponding script. I tried to call it in the startingHook via spawnOnce but that did not work |
2022-10-17 20:48:12 +0200 | <geekosaur> | typically you need to invoke it in such a way that things can get at the environment variables it sents |
2022-10-17 20:48:15 +0200 | <geekosaur> | *sets |
2022-10-17 20:48:59 +0200 | <geekosaur> | which usually means either a startup script that starts a session, or one which returns envar settings and whose output needs to be `eval`ed in a shell |
2022-10-17 20:50:28 +0200 | <geekosaur> | hm, first link I get for pipewire startup assumes systemd is used to plumb stuff together… |
2022-10-17 20:50:38 +0200 | ft | (~ft@p3e9bc57b.dip0.t-ipconnect.de) |
2022-10-17 20:52:27 +0200 | <geekosaur> | right, all the instructions I'm seeing assume it's a systemd user session. you will not be able to start it from xmonad if that's the case |
2022-10-17 20:52:35 +0200 | <geekosaur> | you must configure systemd |
2022-10-17 20:52:44 +0200 | <Phaseditto> | Void runs on runit |
2022-10-17 20:52:55 +0200 | <Phaseditto> | in the documentation it just tells you to run it in the user-session |
2022-10-17 20:53:14 +0200 | <Phaseditto> | Merely a matter of where do i sensibly start it from |
2022-10-17 20:54:26 +0200 | <Phaseditto> | for instance dwm has a patch that executes a given script in a designated destionation once every startup / reboot, easy as pie. Just don't know where i would do such a thing in xmonad |
2022-10-17 20:54:39 +0200 | <geekosaur> | https://forum.artixlinux.org/index.php/topic,2368.0.html |
2022-10-17 20:55:19 +0200 | <geekosaur> | looks like spawns in the startupHook are expected to work |
2022-10-17 20:55:42 +0200 | <geekosaur> | I have no idea how clients are supposed to find and rendezvous with the server in that case |
2022-10-17 20:56:37 +0200 | <Phaseditto> | i mean i could also just use the dwm script from the startupHook |
2022-10-17 20:56:54 +0200 | <Phaseditto> | it's just about the processes being started, that's it |
2022-10-17 22:29:21 +0200 | wonko | (~wjc@2a0e:1c80:2:0:45:15:19:130) (Ping timeout: 268 seconds) |
2022-10-17 22:30:07 +0200 | chomwitt | (~chomwitt@2a02:587:dc1e:5e00:e9e7:bb14:f272:9a4b) |
2022-10-17 22:30:24 +0200 | Ehllie | (~Thunderbi@79.184.245.117.ipv4.supernova.orange.pl) |
2022-10-17 22:46:59 +0200 | Ehllie | (~Thunderbi@79.184.245.117.ipv4.supernova.orange.pl) (Ping timeout: 248 seconds) |
2022-10-17 23:01:16 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-17 23:03:09 +0200 | darkstardevx | (~darkstard@50.126.124.156) (Remote host closed the connection) |
2022-10-17 23:03:33 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-17 23:10:34 +0200 | darkstardevx | (~darkstard@50.126.124.156) (Remote host closed the connection) |
2022-10-17 23:10:57 +0200 | darkstardevx | (~darkstard@50.126.124.156) |
2022-10-17 23:15:08 +0200 | wonko | (~wjc@2a0e:1c80:2:0:45:15:19:130) |
2022-10-17 23:31:42 +0200 | abiss27 | (~abiss27@190.213.236.106) |
2022-10-17 23:35:10 +0200 | chomwitt | (~chomwitt@2a02:587:dc1e:5e00:e9e7:bb14:f272:9a4b) (Remote host closed the connection) |
2022-10-17 23:36:10 +0200 | Phaseditto | (~r5on11c@p5ddf8ff3.dip0.t-ipconnect.de) (Quit: Lost terminal) |
2022-10-17 23:38:57 +0200 | stackdroid18 | (14094@user/stackdroid) |
2022-10-17 23:56:41 +0200 | abiss27 | (~abiss27@190.213.236.106) (Ping timeout: 260 seconds) |