2022/04/08

2022-04-08 04:03:33 +0200banc(banc@gateway/vpn/airvpn/banc) (Ping timeout: 260 seconds)
2022-04-08 04:24:54 +0200banc(banc@gateway/vpn/airvpn/banc)
2022-04-08 04:33:29 +0200benin(~benin@183.82.204.110) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 04:35:51 +0200benin(~benin@183.82.204.110)
2022-04-08 04:48:00 +0200benin(~benin@183.82.204.110) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 04:53:00 +0200benin(~benin@183.82.204.110)
2022-04-08 05:04:44 +0200akamar(~akamar@p5b0ca16a.dip0.t-ipconnect.de) (Ping timeout: 272 seconds)
2022-04-08 05:20:34 +0200benin(~benin@183.82.204.110) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 05:51:24 +0200mvk(~mvk@2607:fea8:5ce3:8500::9d5a) (Ping timeout: 240 seconds)
2022-04-08 06:03:09 +0200benin(~benin@183.82.204.110)
2022-04-08 07:03:29 +0200benin(~benin@183.82.204.110) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 07:07:23 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 07:07:49 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 07:08:14 +0200benin(~benin@183.82.204.110)
2022-04-08 07:10:37 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 07:10:59 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 07:11:43 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 07:12:05 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 07:13:43 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-04-08 07:15:26 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-04-08 07:21:12 +0200twiclo(~twiclo@vpn.utahbroadband.com) (Quit: WeeChat 3.4)
2022-04-08 07:34:39 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 07:37:07 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 07:37:59 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 07:38:23 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 07:39:05 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 07:39:25 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 07:43:15 +0200 <Ether[m]> Does someone know how to do something like && in bash in haskell?
2022-04-08 07:43:46 +0200 <Ether[m]> Haskell cmd 1 >> Haskell cmd2
2022-04-08 07:44:01 +0200 <Ether[m]> But it doesn't work :(
2022-04-08 07:45:11 +0200 <abastro[m]> What does && do in bash?
2022-04-08 07:45:34 +0200 <abastro[m]> Btw I think you can always code scripts in bash and call using `spawn`
2022-04-08 07:46:07 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Ping timeout: 256 seconds)
2022-04-08 07:52:58 +0200 <Ether[m]> && in bash allows you to use multiple commands at the same time
2022-04-08 07:53:04 +0200 <Ether[m]> Its an bash argument..
2022-04-08 07:53:16 +0200 <Ether[m]> a*
2022-04-08 07:59:54 +0200 <abastro[m]> When cmd1 and cmd2 are IO actions, cmd1 >> cmd2 should work
2022-04-08 08:01:32 +0200 <Ether[m]> I am using bindbylayout
2022-04-08 08:01:47 +0200 <Ether[m]> Which is not an IO action?
2022-04-08 08:05:58 +0200 <Solid> Ether[m]: you gotta be a little bit more specific than that
2022-04-08 08:06:10 +0200liskin[m](~liskinmat@2001:470:69fc:105::768)
2022-04-08 08:06:44 +0200 <abastro[m]> The ones which does not have `IO` in type
2022-04-08 08:06:55 +0200 <abastro[m]> Well actually
2022-04-08 08:07:07 +0200 <abastro[m]> In xmonad's case, sth like X is also IO action
2022-04-08 09:22:33 +0200cfricke(~cfricke@user/cfricke)
2022-04-08 09:48:17 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net)
2022-04-08 10:19:53 +0200defc0n[m](~defc0nmat@2001:470:69fc:105::1:f39b)
2022-04-08 10:19:54 +0200 <defc0n[m]> hello people
2022-04-08 10:20:49 +0200 <defc0n[m]> does anyone know why i cant change my theme, im using plasma/xmonad
2022-04-08 10:36:55 +0200 <davve> plasma and xmonad? didnt know they worked together
2022-04-08 11:00:09 +0200kwer[m](~kwermatri@2001:470:69fc:105::1:4da1) (Quit: You have been kicked for being idle)
2022-04-08 11:03:48 +0200dschrempf(~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.4.1)
2022-04-08 11:07:20 +0200 <Ether[m]> Is there way to do a cmd when spawning any new window > 1
2022-04-08 11:12:05 +0200 <defc0n[m]> <davve> "plasma and xmonad? didnt know..." <- well no youtube video or any documentation exists on this, so how could i ever know?
2022-04-08 11:12:41 +0200 <Ether[m]> defc0n[m]: https://wiki.haskell.org/Xmonad/Using_xmonad_in_KDE
2022-04-08 11:13:32 +0200 <Ether[m]> https://youtu.be/-PO5gqexi8c
2022-04-08 11:14:12 +0200 <Ether[m]> defc0n kde has something called "konkite" which is for tilling
2022-04-08 11:14:25 +0200 <defc0n[m]> why none of these showed up when i searched for this
2022-04-08 11:14:36 +0200 <Ether[m]> Why use xmonad just for running a DE?
2022-04-08 11:14:43 +0200 <Ether[m]> defc0n[m]: What ?
2022-04-08 11:15:08 +0200 <Ether[m]> Its the first thing you get when you search "kde with xmonad"
2022-04-08 11:16:04 +0200 <defc0n[m]> im sooo blind, its literlly the frist page
2022-04-08 11:17:33 +0200 <Ether[m]> defc0n[m]: Exactly... :)
2022-04-08 11:20:48 +0200 <davve> i think its "krohnkite" and is what I used with plasma
2022-04-08 11:21:14 +0200 <davve> its tiling in xmonad/dwm-esque
2022-04-08 11:21:35 +0200 <davve> a plugin for kwin
2022-04-08 11:21:56 +0200 <davve> might have still used it if there were some way to save plasma configuration
2022-04-08 11:22:03 +0200 <davve> its just a dotfolder with a huge mess
2022-04-08 11:26:30 +0200 <davve> now just using xmonad with DE installed and a key bound to open its settings
2022-04-08 11:26:40 +0200 <davve> fits my case pretty well
2022-04-08 11:27:19 +0200 <davve> and its easily replicable and editable :) (if one considers haskell easy, tsk)
2022-04-08 11:27:57 +0200 <Ether[m]> But why plasma.desktop?
2022-04-08 11:28:17 +0200 <Ether[m]> Its kinda getting slower and slower šŸ˜’
2022-04-08 11:28:46 +0200jeeeun(~jeeeun@78.40.148.178) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 11:29:05 +0200 <Drishal[m]> btw one small question... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/a6f1602e351b6f938427c674683850e85d7cā€¦)
2022-04-08 11:29:21 +0200jeeeun(~jeeeun@78.40.148.178)
2022-04-08 11:29:23 +0200 <Drishal[m]> s/floating/`simplestfloat`/
2022-04-08 11:29:28 +0200 <Ether[m]> As in mouse focus?
2022-04-08 11:29:46 +0200 <Drishal[m]> Ether[m]: yes I want click to focus so that windows do not go behind lol
2022-04-08 11:29:56 +0200 <Drishal[m]> when in floating mod e
2022-04-08 11:29:56 +0200 <Ether[m]> Yes thats possible
2022-04-08 11:30:21 +0200 <Ether[m]> But it will apply for all layouts.
2022-04-08 11:30:30 +0200 <Drishal[m]> I want clicktofocus only and only in `simplestfloat` not in tile
2022-04-08 11:30:46 +0200 <Drishal[m]> instead of hover to focus
2022-04-08 11:31:12 +0200 <Ether[m]> Ok hook with floating layout..
2022-04-08 11:31:58 +0200 <Ether[m]> myConfig p = def { borderWidth = border , clickJustFocuses = myClickJustFocuses , focusFollowsMouse = myFocusFollowsMouse , normalBorderColor = myNormalBorderColor , focusedBorderColor = myFocusedBorderColor , manageHook = myManageHook , handleEventHook = myHandleEventHook , layoutHook = myLayoutHook , logHook = myLogHook p , modMask = myModMask , mouseBindings = myMouseBindings , startupHook = myStartupHook , terminal = myTerminal ,
2022-04-08 11:31:58 +0200 <Ether[m]> workspaces = myWorkspaces }
2022-04-08 11:36:20 +0200 <Drishal[m]> <Ether[m]> "Ok hook with floating layout.." <- how exactly?
2022-04-08 11:37:01 +0200 <Ether[m]> Can share your config?
2022-04-08 11:37:21 +0200 <Ether[m]> I could do a PR in github?
2022-04-08 11:37:56 +0200 <Drishal[m]> https://gitlab.com/drishal/dotfiles/-/blob/master/xmonad/README.org
2022-04-08 11:38:09 +0200 <Ether[m]> Do you have github?
2022-04-08 11:38:22 +0200 <Ether[m]> Gotta create gitlab acc...
2022-04-08 11:39:39 +0200 <Drishal[m]> Ether[m]: thank god my mirroring is working lol
2022-04-08 11:39:39 +0200 <Drishal[m]> https://github.com/drishal/dotfiles/tree/master/xmonad
2022-04-08 11:41:11 +0200 <Ether[m]> Where is your xmonad.hs?
2022-04-08 11:41:53 +0200 <Ether[m]> Drishal
2022-04-08 11:42:12 +0200 <Drishal[m]> Ether[m]: I actually do in emacs org mode šŸ˜…
2022-04-08 11:42:17 +0200 <Ether[m]> Your using nix packages..
2022-04-08 11:42:24 +0200 <Ether[m]> Drishal[m]: Whatttt?
2022-04-08 11:43:02 +0200 <Drishal[m]> Ether[m]: wait, is it wrong to do it that way? šŸ‘€
2022-04-08 11:43:06 +0200 <Drishal[m]> I love emacs kek
2022-04-08 11:43:12 +0200 <Ether[m]> Ohh god, how do i modify?
2022-04-08 11:43:28 +0200 <Drishal[m]> you dont use emacs?
2022-04-08 11:43:30 +0200 <Drishal[m]> šŸ‘€
2022-04-08 11:43:32 +0200 <Ether[m]> I dont use emacs or org mode.. neovim for life
2022-04-08 11:43:45 +0200 <Drishal[m]> maybe just tell me where to modify stuff lol
2022-04-08 11:43:51 +0200 <Ether[m]> Neovim is lighter and faster..
2022-04-08 11:44:01 +0200 <Ether[m]> Drishal[m]: Suree.
2022-04-08 11:44:09 +0200 <Ether[m]> I dont have irc on pc..
2022-04-08 11:44:12 +0200 <Drishal[m]> ooh god I am not ready for another neovim vs emacs debate lol
2022-04-08 11:44:33 +0200 <Ether[m]> How do I write code from phone?
2022-04-08 11:44:43 +0200 <Drishal[m]> I can share the tangled xmonad.hs tho
2022-04-08 11:44:51 +0200 <Ether[m]> Yeah do that
2022-04-08 11:44:56 +0200Drishal[m]posted a file: (3KiB) < https://libera.ems.host/_matrix/media/r0/download/matrix.org/XcFyDRYMtTwiWBFtGQZdnKdT/xmobar.hs >
2022-04-08 11:45:01 +0200 <Ether[m]> Ohh
2022-04-08 11:45:14 +0200 <Ether[m]> Can u push this in github?
2022-04-08 11:45:27 +0200 <Ether[m]> Call it temp.hs?
2022-04-08 11:45:43 +0200 <Ether[m]> Drishal
2022-04-08 11:45:44 +0200 <Drishal[m]> hmm
2022-04-08 11:45:56 +0200 <Ether[m]> Thanks šŸ˜Š
2022-04-08 11:47:49 +0200 <Drishal[m]> Ether[m]: https://github.com/drishal/dotfiles/blob/master/xmonad/xmonad.hs
2022-04-08 11:48:00 +0200 <Ether[m]> Done?
2022-04-08 11:48:10 +0200 <Drishal[m]> pushed the temp to github
2022-04-08 11:48:33 +0200 <Ether[m]> I see it
2022-04-08 11:53:15 +0200 <Ether[m]> You already have it in your config šŸ¤£šŸ¤£šŸ¤£
2022-04-08 11:53:23 +0200 <Ether[m]> Drishal
2022-04-08 11:53:38 +0200 <Ether[m]> U just need to set it to true..
2022-04-08 11:53:46 +0200 <Ether[m]> Making a PR..
2022-04-08 11:55:57 +0200 <Drishal[m]> Ether[m]: ``` myClickJustFocuses = False
2022-04-08 11:55:57 +0200 <Drishal[m]> ```
2022-04-08 11:55:57 +0200 <Drishal[m]> to true ?
2022-04-08 11:56:15 +0200 <Drishal[m]> > <@etherror_code_404:matrix.org> U just need to set it to true..... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/042ad0262f2b0a018137667a89eedbf11831ā€¦)
2022-04-08 11:56:16 +0200 <lambdabot> <hint>:1:1: error: parse error on input ā€˜<@ā€™
2022-04-08 11:58:16 +0200 <Ether[m]> Drishal: done...
2022-04-08 12:01:24 +0200 <Drishal[m]> Ether[m]: but the thing is
2022-04-08 12:01:24 +0200 <Drishal[m]> I want it only in the float layout
2022-04-08 12:01:30 +0200 <Ether[m]> Ohh
2022-04-08 12:01:44 +0200 <Ether[m]> Ok i can implement that too..
2022-04-08 12:01:53 +0200 <Drishal[m]> like how dwm implements it
2022-04-08 12:02:11 +0200 <Ether[m]> Making a PR...
2022-04-08 12:02:12 +0200 <Drishal[m]> like new windows do not go behind in floating mode
2022-04-08 12:02:47 +0200 <Drishal[m]> Ether: well the real exact behavour I really need is that the windows should not go behind till I do a proper mod+click
2022-04-08 12:03:09 +0200 <Drishal[m]> thats why I wanted to disable hover to focus just for floating layout
2022-04-08 12:03:26 +0200 <Ether[m]> Not sure i get what you mean
2022-04-08 12:03:33 +0200 <Drishal[m]> so it behavs like how dwm does it
2022-04-08 12:03:45 +0200 <Ether[m]> But i can implement click to focus for the floating..
2022-04-08 12:03:50 +0200 <Drishal[m]> s/it/floating/, s/behavs/behaves/
2022-04-08 12:04:01 +0200 <Drishal[m]> Ether[m]: that also will do šŸ‘ļø
2022-04-08 12:04:22 +0200 <Ether[m]> Ok šŸ˜€
2022-04-08 12:04:57 +0200 <Ether[m]> Can you merge the first commit?
2022-04-08 12:06:13 +0200 <Drishal[m]> Ether[m]: well I have copied to the xmoand.org
2022-04-08 12:06:13 +0200 <Drishal[m]> will credit you when the commit is pushed lol
2022-04-08 12:06:58 +0200 <abastro[m]> I wonder how hard it would be to make a status bar myself
2022-04-08 12:07:27 +0200 <abastro[m]> ~~As it feels like I could make better one by myself~~
2022-04-08 12:07:45 +0200 <pantsu> more tedious than hard
2022-04-08 12:08:01 +0200 <abastro[m]> I see
2022-04-08 12:08:13 +0200 <pantsu> x11 has a lot of iritating cornercases etc
2022-04-08 12:08:30 +0200 <abastro[m]> Tedious in implementing widgets?
2022-04-08 12:08:31 +0200 <abastro[m]> Or is there more to.. oh
2022-04-08 12:08:45 +0200 <Drishal[m]> Ether[m]: soo uuh the real thing is I needed a dwm style floating layout
2022-04-08 12:08:45 +0200 <Drishal[m]> i.e newly spawned windows do not get pushed behind if I accidentally hover my mouse over the previous window
2022-04-08 12:08:47 +0200 <abastro[m]> Meh having to think about corner cases when just making a status bar is.. eh
2022-04-08 12:08:53 +0200 <pantsu> using gtk or similar do take some of the worst out of it though
2022-04-08 12:09:12 +0200 <Ether[m]> Drishal dm instead..
2022-04-08 12:09:19 +0200 <Ether[m]> Getting crowded
2022-04-08 12:09:26 +0200 <abastro[m]> Like I wanted to try out monomer-based task bars
2022-04-08 12:09:38 +0200 <abastro[m]> Tho I guess it would take.. quite an efforts
2022-04-08 12:10:57 +0200 <abastro[m]> Well you can use this chat here, my topic likely ended here
2022-04-08 12:11:08 +0200 <abastro[m]> s/here/now/
2022-04-08 12:18:21 +0200a1eaiactaest(~a1eaiacta@user/a1eaiactaest)
2022-04-08 12:18:48 +0200a1eaiactaest(~a1eaiacta@user/a1eaiactaest) ()
2022-04-08 12:21:37 +0200benin(~benin@183.82.204.110) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 12:42:42 +0200benin(~benin@183.82.204.110)
2022-04-08 12:48:07 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.4.1)
2022-04-08 13:47:58 +0200 <YusefAslam[m]> <Ether[m]> "Neovim is lighter and faster.." <- Emacs is better
2022-04-08 13:47:59 +0200 <YusefAslam[m]> Emacs for life
2022-04-08 13:49:03 +0200 <geekosaur> meh. I use both
2022-04-08 13:49:28 +0200 <YusefAslam[m]> geekosaur: yeah same
2022-04-08 13:50:39 +0200 <YusefAslam[m]> <Drishal[m]> "ooh god I am not ready for..." <- you are ready
2022-04-08 13:53:02 +0200 <YusefAslam[m]> <Ether[m]> "I dont use emacs or org mode..." <- illegal
2022-04-08 14:18:29 +0200 <Drishal[m]> <YusefAslam[m]> "you are ready" <- emacs bess hands down :P
2022-04-08 14:18:46 +0200 <Drishal[m]> emacs+gold linker+pgtk+jit
2022-04-08 14:19:09 +0200 <Drishal[m]> * emacs+gold linker+pgtk+jit/aot
2022-04-08 14:20:00 +0200 <abastro[m]> What about notepad >.>
2022-04-08 14:23:45 +0200cfricke(~cfricke@user/cfricke)
2022-04-08 14:26:23 +0200 <Solid> pgtk is only really needed when you're on wayland instead of xorg
2022-04-08 14:27:03 +0200 <Drishal[m]> Solid: its stable even on xorg
2022-04-08 14:27:21 +0200 <Solid> sure it's stable but it also doesn't buy you anything
2022-04-08 14:27:47 +0200 <Drishal[m]> Solid: well
2022-04-08 14:27:47 +0200 <Drishal[m]> it feels a bit more responsive lol
2022-04-08 14:28:55 +0200 <Solid> placebo, I reckon :P
2022-04-08 14:38:27 +0200 <YusefAslam[m]> <Drishal[m]> "emacs+gold linker+pgtk+jit" <- what is pgtk
2022-04-08 14:38:30 +0200 <YusefAslam[m]> and what is aot
2022-04-08 14:41:09 +0200 <Drishal[m]> YusefAslam[m]: pgtk means pure gtk
2022-04-08 14:41:10 +0200 <YusefAslam[m]> <abastro[m]> "What about notepad >.>" <- notepad++ is good aswell much better than plain notepad on Windows
2022-04-08 14:41:39 +0200 <abastro[m]> Well I meant plain notepad
2022-04-08 14:41:40 +0200 <Drishal[m]> btw whats the xmoand equivalent of
2022-04-08 14:41:40 +0200 <Drishal[m]> ```python
2022-04-08 14:41:40 +0200 <Drishal[m]> auto_minimize = False
2022-04-08 14:41:40 +0200 <Drishal[m]> ```
2022-04-08 14:42:08 +0200 <Solid> YusefAslam[m]: PGTK is essentially Wayland support for Emacs
2022-04-08 14:42:38 +0200 <YusefAslam[m]> Solid: I thought Emacs already supported Wayland?
2022-04-08 14:42:53 +0200 <Solid> Only through xwayland
2022-04-08 14:43:21 +0200 <YusefAslam[m]> ohk so like native Wayland support
2022-04-08 14:43:37 +0200 <Solid> yes
2022-04-08 14:43:48 +0200 <YusefAslam[m]> pretty decent
2022-04-08 14:44:00 +0200 <YusefAslam[m]> although I still use Xorg
2022-04-08 14:44:01 +0200 <Solid> by just going through GTK and side-stepping the whole "we need to do this ourselves" entirely
2022-04-08 14:44:16 +0200 <Drishal[m]> Solid: and also pure gtk means that the client has full gtk support
2022-04-08 14:44:16 +0200 <Drishal[m]> means that emacs should hang/stutter a little more less
2022-04-08 14:44:26 +0200 <Drishal[m]> even on Xorg
2022-04-08 14:45:03 +0200 <Solid> how would that follow?
2022-04-08 14:45:35 +0200 <YusefAslam[m]> > <@drishal:matrix.org> and also pure gtk means that the client has full gtk support
2022-04-08 14:45:35 +0200 <YusefAslam[m]> > means that emacs should hang/stutter a little more less
2022-04-08 14:45:35 +0200 <YusefAslam[m]> nice
2022-04-08 14:45:37 +0200 <lambdabot> <hint>:1:1: error: parse error on input ā€˜<@ā€™
2022-04-08 14:45:37 +0200 <lambdabot> error:
2022-04-08 14:45:37 +0200 <lambdabot> Variable not in scope:
2022-04-08 14:45:37 +0200 <lambdabot> means :: t0 -> t1 -> t2 -> (Doc -> Int -> Doc -> Doc) -> aerror: Varia...
2022-04-08 14:45:41 +0200 <geekosaur> you haven't seen how emacs does things
2022-04-08 14:45:45 +0200 <Solid> why would GTK be any more responsive than any of the other toolkits that Emacs ships with natively?
2022-04-08 14:46:16 +0200 <geekosaur> because they're all abused so emacs still keeps full control of the event loop, refreshes, etc.
2022-04-08 14:46:45 +0200 <geekosaur> "pure gtk" would mean they actually gave control to the toolkit instead of abusing it
2022-04-08 14:46:51 +0200 <pantsu> Solid: it has good hw acceleration
2022-04-08 14:46:56 +0200 <YusefAslam[m]> > <@drishal:matrix.org> btw whats the xmoand equivalent of... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/abab80d860ed1fc26a8531c6b8d931665610ā€¦)
2022-04-08 14:46:57 +0200 <lambdabot> <hint>:1:1: error: parse error on input ā€˜<@ā€™
2022-04-08 14:47:10 +0200 <pantsu> assuming >=gtk3
2022-04-08 14:47:33 +0200 <geekosaur> I didn't understand that question either. minimizing what?
2022-04-08 14:47:36 +0200 <pantsu> also have pretty efficient drawing
2022-04-08 14:47:40 +0200 <Solid> geekosaur: yeah it hacks its own event-loop, but that doesn't make it less responsive really
2022-04-08 14:47:58 +0200 <geekosaur> it's responsive most of the time
2022-04-08 14:48:08 +0200 <Solid> plus, there has been pretty good progress to support XInput 2.4 in master
2022-04-08 14:48:28 +0200 <Solid> allowing for things like pixel-scroll-precision-mode
2022-04-08 14:48:42 +0200 <YusefAslam[m]> pantsu: PGTK has better hardware acceleration? How
2022-04-08 14:48:53 +0200 <geekosaur> but if you go digging through emacs bug reports for the past two decades you'll find it causes lots of things from glitches to actual failures
2022-04-08 14:50:51 +0200 <abastro[m]> Emacs hacks event-loop? Wh
2022-04-08 14:51:10 +0200 <abastro[m]> I heard it is lightweight and editor-done-well, and now I am hearing this
2022-04-08 14:51:22 +0200 <abastro[m]> But then, I am using VSCode IRL soo
2022-04-08 14:51:55 +0200 <Solid> Emacs is older than X11 itself
2022-04-08 14:51:59 +0200 <geekosaur> oh, emacs is done well if you stick to a tty
2022-04-08 14:52:01 +0200 <Solid> so it's not really that surprising
2022-04-08 14:52:10 +0200 <geekosaur> GUI support is hacked in on top
2022-04-08 14:52:21 +0200 <abastro[m]> Oh.
2022-04-08 14:52:44 +0200 <abastro[m]> Why did I think emacs is essentially gui application
2022-04-08 14:52:44 +0200 <Solid> and yet it's still much superior to be able to embed pictures in org :P
2022-04-08 14:53:00 +0200 <YusefAslam[m]> Solid: lol
2022-04-08 14:53:00 +0200 <pantsu> YusefAslam[m]: gtk has better hw acceleration for drawing than using x11 primitives yes
2022-04-08 14:53:05 +0200 <Solid> really, you should be using Emacs as a GUI application
2022-04-08 14:53:39 +0200 <geekosaur> do remember that emacs started out as a set of macros for an older editor (hence its name: Editor MACroS)
2022-04-08 14:53:42 +0200 <YusefAslam[m]> pantsu: ohk, so all the gui stuff in Emacs is now using GTK?
2022-04-08 14:53:46 +0200 <abastro[m]> Well but emacs is done well for tty, not GUI
2022-04-08 14:54:22 +0200 <Solid> abastro[m]: it's a perfectely reasonable GUI program if you don't look into the source too much ;)
2022-04-08 14:54:38 +0200 <geekosaur> (I've actually used TECO, that older editor. it was ā€¦ freaky. but powerful enough that Gosling & co. could build emacs on top of it)
2022-04-08 14:54:39 +0200 <abastro[m]> XD
2022-04-08 14:54:52 +0200 <Solid> the chances that you're going to hit an actual bug due to its behaviour are very minimal
2022-04-08 14:54:54 +0200 <YusefAslam[m]> abastro[m]: I basically always use Emacs in GUI mode and Neovim for terminal editing
2022-04-08 14:55:08 +0200 <pantsu> YusefAslam[m]: and old version of gtk, but yes it does support gtk as the backend now
2022-04-08 14:55:11 +0200 <abastro[m]> Well tbh I feel GTK (and many other UI programs) are reasonable until source is looked into
2022-04-08 14:55:23 +0200 <pantsu> (it has a few gui backends)
2022-04-08 14:55:47 +0200Solidstill happily compiles Emacs with LUCID
2022-04-08 14:55:52 +0200 <geekosaur> GTK's not bad as UI toolkits go
2022-04-08 14:56:04 +0200 <abastro[m]> I guess emacs would be whope lot better than Eclipse at least, then
2022-04-08 14:56:05 +0200 <pantsu> they did finally port to gtk3 too which helped a bit
2022-04-08 14:56:21 +0200 <Solid> abastro[m]: of course, it's the best editor
2022-04-08 14:56:38 +0200 <abastro[m]> s/whope/whole/
2022-04-08 14:56:43 +0200 <YusefAslam[m]> pantsu: ohk
2022-04-08 14:56:46 +0200 <YusefAslam[m]> nice I guess
2022-04-08 14:56:51 +0200 <geekosaur> but they work very differently from tty-based frameworks, which means there's always been a noticeable impedance mismatch between GUI and emacs
2022-04-08 14:57:13 +0200 <abastro[m]> Hmmm
2022-04-08 14:57:27 +0200 <abastro[m]> Well it would still be better than VSCode tho
2022-04-08 14:57:44 +0200pantsuthink that the emacs gui is generally not really implemented well in general
2022-04-08 14:58:09 +0200 <abastro[m]> (The only reason I am using VSCode is basically since I don't know how to configure editors in general)
2022-04-08 14:58:28 +0200 <pantsu> lots of legacy/"deprecated" element used etc
2022-04-08 14:58:29 +0200 <abastro[m]> In the end, it is hard to be worse than Eclipse anyway
2022-04-08 14:58:53 +0200 <pantsu> no out of the box support for light/darkmode etc
2022-04-08 14:59:33 +0200 <Solid> the first step is to turn off all of the UI elements anyways :>
2022-04-08 14:59:36 +0200 <abastro[m]> Well whenever I look into gtk, I want to puke. Perhaps it is just my distaste towards C++, but ehh
2022-04-08 14:59:57 +0200 <pantsu> abastro[m]: funny since gtk is in C
2022-04-08 15:00:07 +0200 <pantsu> and the gtkmm bindings are not fantastic :p
2022-04-08 15:00:12 +0200 <abastro[m]> I should have said C
2022-04-08 15:00:28 +0200 <abastro[m]> But it does seem like gtk is built on inheritance
2022-04-08 15:00:36 +0200 <pantsu> it is
2022-04-08 15:00:42 +0200 <abastro[m]> * said C I guess
2022-04-08 15:00:55 +0200 <abastro[m]> I dislike whenever inheritance is actually used in C
2022-04-08 15:00:58 +0200 <abastro[m]> Like wja
2022-04-08 15:01:04 +0200 <abastro[m]> * Like wha
2022-04-08 15:01:07 +0200 <pantsu> partly anyway, its how they can do the memory management without driving the users insane
2022-04-08 15:01:13 +0200 <abastro[m]> Oh, that and gtk being singlethreaded
2022-04-08 15:01:35 +0200 <abastro[m]> Oh, memory management
2022-04-08 15:01:38 +0200 <pantsu> that isn't stricly true
2022-04-08 15:01:44 +0200 <abastro[m]> I guess one written in rust could be wildly different then
2022-04-08 15:01:54 +0200 <geekosaur> note that singlethreaded actually derives from X11
2022-04-08 15:02:08 +0200 <abastro[m]> Ouch
2022-04-08 15:02:23 +0200 <abastro[m]> So.. is Xmonad also singlethreaded?
2022-04-08 15:02:27 +0200 <geekosaur> you have one socket connecting to the server. multiple threads cannot meaningfully listen on that socket for responses from the X server
2022-04-08 15:02:30 +0200 <geekosaur> yes
2022-04-08 15:02:35 +0200 <pantsu> the mainloop does support threading etc, it uses callbacks for communication
2022-04-08 15:02:57 +0200 <geekosaur> well,there are parts that spawn temporary threads but they have to open their own distinct server connections
2022-04-08 15:03:07 +0200 <abastro[m]> I see, tho I heard that threading with gtk main loop is quite cumbersome
2022-04-08 15:03:08 +0200 <geekosaur> and can't share state
2022-04-08 15:03:28 +0200 <abastro[m]> But I see that with x11 it is even more severe
2022-04-08 15:03:59 +0200 <pantsu> its not that bad really
2022-04-08 15:04:36 +0200 <abastro[m]> Can you receive and handle inputs in other threads than main?
2022-04-08 15:04:55 +0200 <pantsu> but it is C after all :p (you can always use another language though, the introspection is pretty damn nice)
2022-04-08 15:05:21 +0200 <geekosaur> not without some forwarding mechanism, which is why gtk implementations come with such (postAsync and similar)
2022-04-08 15:05:44 +0200 <geekosaur> or openm your own connection, but again you can't share state in that case
2022-04-08 15:05:48 +0200 <abastro[m]> So you need forwarding mechanisms..
2022-04-08 15:06:02 +0200 <geekosaur> gtk comes with such mechanisms
2022-04-08 15:06:11 +0200 <abastro[m]> Oh so this limitation again comes from X11
2022-04-08 15:06:18 +0200 <abastro[m]> Meh
2022-04-08 15:06:19 +0200 <geekosaur> it's one reason it's so popular
2022-04-08 15:06:23 +0200 <abastro[m]> TIL X is bad
2022-04-08 15:06:33 +0200 <geekosaur> most alternatives will be no better
2022-04-08 15:06:40 +0200 <geekosaur> \multiplexed I/O is difficult at best
2022-04-08 15:07:08 +0200 <abastro[m]> Hm why do I feel so bad when programming with gtk then
2022-04-08 15:07:22 +0200 <geekosaur> and limits you to atomic transactions which often means size limitations, which makes e.g. uploading a pixmap to a server difficult
2022-04-08 15:07:36 +0200 <geekosaur> C's a lousy language for such things
2022-04-08 15:08:02 +0200 <abastro[m]> Eh it felt decent enough for making OS
2022-04-08 15:08:04 +0200 <geekosaur> I don't feel any worseprogramming GTK than programming anything else in C, but I'm kinda inured to it since C was my first language
2022-04-08 15:08:17 +0200 <geekosaur> but after something like Haskell, oh god does C feel klunky
2022-04-08 15:08:25 +0200 <abastro[m]> My first language is C as well
2022-04-08 15:08:54 +0200 <YusefAslam[m]> My first language is Bash LOL
2022-04-08 15:08:59 +0200 <abastro[m]> And tbh while I feel C to be klunky, it doesn't go that bad when I avoid resorting to inheritance
2022-04-08 15:09:14 +0200 <abastro[m]> Procedural programming has worked well for me
2022-04-08 15:10:16 +0200 <geekosaur> well, inheritance in C is just as klunky as the rest of it. but gtk didn't invent that either
2022-04-08 15:10:25 +0200 <geekosaur> go look at Xt/Xaw sometime
2022-04-08 15:10:42 +0200 <abastro[m]> Oh I don't even know about Xt soo
2022-04-08 15:11:04 +0200 <geekosaur> no, it's mostly well forgotten :)
2022-04-08 15:11:09 +0200 <abastro[m]> Plus, I did feel simulating inheritance in C more problematic than typical C programming
2022-04-08 15:11:19 +0200 <geekosaur> the poriginal X toolkit. ugly as sin
2022-04-08 15:12:22 +0200 <geekosaur> come to think of it, Motif was implemented on top of Xt too
2022-04-08 15:12:32 +0200 <geekosaur> so did the same kind of "inheritance"
2022-04-08 15:13:48 +0200 <abastro[m]> Like that one toy OS task where there was page "class" with uninitialized page, memory-backed page and file-backed page inheriting it
2022-04-08 15:13:49 +0200 <geekosaur> GTK's is actually cleaner and mostly safer than the original
2022-04-08 15:14:41 +0200 <geekosaur> at least you get an assert if you inherit fromthe wrong thing, instead of a core dump
2022-04-08 15:14:43 +0200 <abastro[m]> Many fields inside the page "class" which is used or not used depending on which "subclass" it resides on
2022-04-08 15:14:47 +0200 <abastro[m]> It was a nightmare to me
2022-04-08 15:15:15 +0200 <abastro[m]> Oh, so gtk's implementation of inheritance was at least slightly better
2022-04-08 15:17:01 +0200 <geekosaur> re pages, that's true even without subclassing
2022-04-08 15:17:28 +0200 <geekosaur> a zero page has very little associated state, but you still have to tell the MMU about it
2022-04-08 15:17:30 +0200 <abastro[m]> Well yeah but it got even worse with subclassinf
2022-04-08 15:17:51 +0200 <abastro[m]> s/subclassinf/subclassing/
2022-04-08 15:18:33 +0200 <abastro[m]> I forgot to mention that the "methods" implemented are quite limited, and somehow, general functionality has to go in each of those methods.
2022-04-08 15:19:24 +0200 <abastro[m]> I am fine with zero page, tho equating anonymous page and file page, then page cache was nightmare
2022-04-08 15:19:56 +0200 <geekosaur> it is anyway. sounds good in theory, painful to implement in practice
2022-04-08 15:21:51 +0200 <geekosaur> (was this minix btw? it's been a few years and my book is long gone, to say nothing of the disk that came with it)
2022-04-08 15:22:08 +0200 <abastro[m]> What is minix?
2022-04-08 15:23:16 +0200 <geekosaur> https://en.wikipedia.org/wiki/Operating_Systems:_Design_and_Implementation
2022-04-08 15:24:38 +0200 <geekosaur> quite a few of us bought that book just toget our hands on minix, back in the day. reportedly it also inspired linux torvalds to develop linux
2022-04-08 15:25:49 +0200 <abastro[m]> Oh, I was more talking about my uni assignment on toy OS dev
2022-04-08 15:25:59 +0200 <geekosaur> minix was a message-passing microkernel, so while a little slow it was easy to modify and easy to see how all the pieces fit together
2022-04-08 15:26:07 +0200 <geekosaur> right, minix was such a toy os
2022-04-08 15:26:19 +0200 <geekosaur> and the book was intended for such courses
2022-04-08 15:26:20 +0200 <abastro[m]> Took debugging of millions of multithreading bugs
2022-04-08 15:26:35 +0200 <abastro[m]> What I worked with was pintos
2022-04-08 15:28:28 +0200 <abastro[m]> I don't know how message-passing kernel would work, but it sounds like it would be easier to work with
2022-04-08 15:29:05 +0200 <geekosaur> they're mostly slower than traditional kernels but a lot more secure and easier to understand and work with
2022-04-08 15:29:28 +0200 <geekosaur> windows and macos are both based on message-passing systems
2022-04-08 15:29:45 +0200 <abastro[m]> Hmm perhaps pintos is also message-passing then? Idk
2022-04-08 15:29:48 +0200 <abastro[m]> https://pintos-os.org/
2022-04-08 15:29:54 +0200 <abastro[m]> ^ what I was talking about
2022-04-08 15:30:35 +0200 <abastro[m]> Could be smaller than minix, considering how I was able to implement some parts towards working OS in the end
2022-04-08 15:31:57 +0200 <abastro[m]> Wait, its VM part seems to be largely left out for students to flesh details out
2022-04-08 15:32:19 +0200 <geekosaur> from the slides it's a traditional architecture, not microkernel
2022-04-08 15:32:44 +0200 <abastro[m]> What is microkernel?
2022-04-08 15:33:08 +0200 <abastro[m]> Perhaps I simply read that as "kernel"
2022-04-08 15:33:13 +0200 <abastro[m]> Traditional architecture?
2022-04-08 15:33:29 +0200 <geekosaur> in essence you have a tiny fixed scheduler, then the kernel consists of independent processes that communicate with each other (typically via messages)
2022-04-08 15:33:52 +0200 <geekosaur> a traditional architecture has the kernel as a single large chunk, like linux
2022-04-08 15:34:02 +0200 <abastro[m]> Oh, I see
2022-04-08 15:34:27 +0200 <abastro[m]> Microkernel sounds nicer to code in with separation of concerns (tho I have no experience in them)
2022-04-08 15:34:44 +0200 <abastro[m]> Easier to hack stuff together randomly in traditional architecture
2022-04-08 15:35:35 +0200 <abastro[m]> Anyway it seems like, instead of letting students to write the virtual memory managenent, the prof decided to write down sh*tty, hard-to-extend code with many limitations and meh inheritance schemes
2022-04-08 15:36:07 +0200 <abastro[m]> The nicer parts of it seem to come from original pintos code
2022-04-08 15:43:29 +0200 <abastro[m]> (Sorry for the rant)
2022-04-08 15:55:59 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Quit: Leaving)
2022-04-08 15:57:35 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-04-08 16:17:58 +0200^[(~user@user//x-8473491) (Ping timeout: 260 seconds)
2022-04-08 16:24:53 +0200^[(~user@user//x-8473491)
2022-04-08 16:32:47 +0200benin(~benin@183.82.204.110) (Quit: The Lounge - https://thelounge.chat)
2022-04-08 17:03:23 +0200lambdabot(~lambdabot@haskell/bot/lambdabot) (Ping timeout: 260 seconds)
2022-04-08 17:22:47 +0200Czernobog(~Czernobog@user/czernobog) (Ping timeout: 268 seconds)
2022-04-08 17:30:01 +0200jmct_(sid160793@id-160793.tinside.irccloud.com) ()
2022-04-08 17:30:20 +0200jmct(sid160793@id-160793.tinside.irccloud.com)
2022-04-08 17:39:49 +0200lambdabot(~lambdabot@haskell/bot/lambdabot)
2022-04-08 18:05:57 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.4.1)
2022-04-08 18:36:55 +0200cfricke(~cfricke@user/cfricke)
2022-04-08 18:43:32 +0200Czernobog(~Czernobog@user/czernobog)
2022-04-08 18:58:59 +0200theproffesor(~theprofff@user/theproffesor) (Ping timeout: 268 seconds)
2022-04-08 19:01:24 +0200Czernobog(~Czernobog@user/czernobog) (Quit: ZNC 1.8.2 - https://znc.in)
2022-04-08 19:03:55 +0200Czernobog(~Czernobog@user/czernobog)
2022-04-08 19:20:56 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.4.1)
2022-04-08 19:40:42 +0200abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2022-04-08 20:42:18 +0200theproffesor(~theprofff@user/theproffesor)
2022-04-08 21:29:43 +0200krrishg[m](~krrishgma@2001:470:69fc:105::1:f40c)
2022-04-08 21:57:35 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 22:02:21 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-04-08 22:02:43 +0200rekahsoft(~rekahsoft@cpe001b21a2fd89-cm64777ddc63a0.cpe.net.cable.rogers.com)
2022-04-08 22:51:56 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-04-08 22:53:41 +0200geekosaur(~geekosaur@xmonad/geekosaur)
2022-04-08 22:55:45 +0200geekosaur(~geekosaur@xmonad/geekosaur) (Excess Flood)
2022-04-08 22:55:47 +0200allbery_b(~geekosaur@xmonad/geekosaur)
2022-04-08 22:55:50 +0200allbery_bgeekosaur
2022-04-08 23:03:51 +0200 <liskin> Saw a tweet of someone getting train tickets for ZuriHac. Shall I start worrying about that as well? :-)
2022-04-08 23:20:53 +0200 <tdammers> depends where you're traveling from, and how hard you depend on those train tickets to be cheap
2022-04-08 23:22:37 +0200 <tdammers> fwiw, I booked mine a couple weeks ago