2021-07-22 01:07:33 +0200 | Solid | (~slot@xmonad/slotThe) (Quit: Connection reset by pear) |
2021-07-22 01:07:52 +0200 | Solid | (~slot@xmonad/slotThe) |
2021-07-22 05:27:40 +0200 | <contrapunctus> | I've started writing a kmonad configuration. It seems very powerful and I'm excitedly looking forward to all the things it can do. However, the tutorial is rather difficult for a newcomer to use to get started...the Diataxis Framework (https://diataxis.fr) would call it an "explanation" (another useful kind of documentation, but serving a different purpose than a tutorial). |
2021-07-22 05:30:29 +0200 | <contrapunctus> | So I'm thinking of what might go into a tutorial. It has to have clear goals at every step, and it does not have to do things the "best" way, or explain/mention all alternatives - it just has to be fun and be enough to get someone started. It's also "learning by doing", rather than "learning by understanding". (The example configurations helped in this regard, but a more focused tutorial would be pre |
2021-07-22 05:30:29 +0200 | <contrapunctus> | ferable.) |
2021-07-22 06:15:49 +0200 | wolficefang[m] | (~wolficefa@2001:470:69fc:105::a3f1) |
2021-07-22 06:16:10 +0200 | <wolficefang[m]> | Hello? |
2021-07-22 06:16:33 +0200 | <contrapunctus> | wolficefang[m]: hello |
2021-07-22 06:19:18 +0200 | <wolficefang[m]> | Oh cool this works. |
2021-07-22 06:19:19 +0200 | <wolficefang[m]> | uhh I just wanted to make sure this is the actual kmonad IRC (since I can't see chat history, only user join/leave logs in Element.) |
2021-07-22 06:19:19 +0200 | <wolficefang[m]> | I didn't really have a question or anything. |
2021-07-22 06:29:04 +0200 | <contrapunctus> | Cool 🙂️ I just discovered kmonad yesterday 😅️ |
2021-07-22 06:40:50 +0200 | <contrapunctus> | Hm...the docs say "A tap-macro can take an optional :delay keyword (in ms)", but when I do a dry-run with this configuration, I get "parse error", "unexpected ':'" - http://ix.io/3tF4 |
2021-07-22 07:03:26 +0200 | niemand | (~niemand@p54a9c03a.dip0.t-ipconnect.de) |
2021-07-22 07:04:16 +0200 | niemand | (~niemand@p54a9c03a.dip0.t-ipconnect.de) (Client Quit) |
2021-07-22 07:04:34 +0200 | niemand | (~niemand@p54a9c03a.dip0.t-ipconnect.de) |
2021-07-22 07:08:35 +0200 | niemand | (~niemand@p54a9c03a.dip0.t-ipconnect.de) (Client Quit) |
2021-07-22 09:51:58 +0200 | <Solid> | contrapunctus: I'd agree that a proper "step-by-step" tutorial would be a nice addition |
2021-07-22 09:52:25 +0200 | <Solid> | but I'm sort of burned out from writing so much documentation for xmonad, so any help is welcome :) |
2021-07-22 09:52:58 +0200 | <Solid> | the :delay keyword is not in any released version yet, so if you've installed kmonad via your system's package manager you probably won't have it yet |
2021-07-22 10:44:42 +0200 | <contrapunctus> | Solid: glad to hear you like the idea. I might try writing one, or foundations of one anyway 🙂️ |
2021-07-22 10:54:59 +0200 | <contrapunctus> | Hm...I don't understand how to specify what I'm trying to get. According to the examples, `(defalias parens (tap-macro \( P5 \) P5 Left) left-shift (tap-hold-next @parens LeftShift))` ought to work, but I get `unexpected '@'` `expecting button` 🤔️ |
2021-07-22 10:58:46 +0200 | <Solid> | ah, that's a pretty bad error message |
2021-07-22 10:58:51 +0200 | <Solid> | but you need a timeout for tap-hold-next |
2021-07-22 11:07:21 +0200 | <contrapunctus> | Solid: ah, thanks! Finally no more errors ^^ |
2021-07-22 12:34:15 +0200 | <contrapunctus> | Urgh, I can't get past the uinput permission errors. My user is member of both input and uinput, but FWIW `groups` only displays this when I run it as root (`groups <user>`). I've followed all the steps in the FAQ :\ |
2021-07-22 12:46:05 +0200 | <Tisoxin> | contrapunctus: Did you reboot? |
2021-07-22 12:47:27 +0200 | <Tisoxin> | and apart from that…root is member of input & uinput but not your account? |
2021-07-22 13:22:07 +0200 | <contrapunctus> | Tisoxin: tried rebooting too, no luck. |
2021-07-22 13:28:41 +0200 | <Tisoxin> | <Tisoxin "and apart from that…root is memb"> ? |
2021-07-22 13:30:33 +0200 | <contrapunctus> | Ah, finally got it to run. My udev rules file had the wrong extension. |
2021-07-22 13:30:45 +0200 | <Tisoxin> | ok |
2021-07-22 13:51:02 +0200 | <contrapunctus> | I've managed to get Space to act as Ctrl, very cool! 😀 |
2021-07-22 13:53:55 +0200 | <contrapunctus> | I'm trying to get Shift to send `()<left>` when tapped; I bound `(tap-next (tap-macro \( P20 \) P20 Left) LeftShift)` to the Shift keys, but it presses Left indefinitely until I tap something else. 🤔 |
2021-07-22 13:57:37 +0200 | <Solid> | something doesn't get released huh |
2021-07-22 13:57:45 +0200 | <Solid> | I guess a hack would be Left P5 or something |
2021-07-22 14:03:06 +0200 | <contrapunctus> | Solid: thanks, that worked 🙂 |
2021-07-22 14:07:59 +0200 | <contrapunctus> | Now for the other mystery...when I invoke `kmonad file.kbd`, it emits a ton of whitespace 🤔 it wasn't this way in earlier iterations of my config, which looks like this right now - http://ix.io/3tGx |
2021-07-22 15:16:08 +0200 | Solid_ | (~slot@xmonad/slotThe) |
2021-07-22 15:18:46 +0200 | Solid | (~slot@xmonad/slotThe) (Ping timeout: 255 seconds) |
2021-07-22 15:18:55 +0200 | Guest4 | (~Guest4@49.36.233.220) |
2021-07-22 15:19:06 +0200 | <Guest4> | hello |
2021-07-22 15:19:21 +0200 | Solid_ | Solid |
2021-07-22 15:19:39 +0200 | <Solid> | hi |
2021-07-22 15:19:46 +0200 | <Guest4> | hey |
2021-07-22 15:20:44 +0200 | <Guest4> | can kmonad be used to switch layouts frequently? |
2021-07-22 15:20:54 +0200 | <Guest4> | like switch to qwerty when gaming |
2021-07-22 15:26:08 +0200 | <Solid> | sure, that's not a problem |
2021-07-22 15:27:16 +0200 | <Guest4> | oh nice |
2021-07-22 15:28:24 +0200 | <Solid> | there is a layer-switch function that just switches to a layer |
2021-07-22 15:29:00 +0200 | <Solid> | you can combine this with cmd-button to also execute some (probably necessary) setxkbmap commands in case you want to switch languages as well |
2021-07-22 15:29:23 +0200 | <Guest4> | hmm gotta look into it |
2021-07-22 15:30:01 +0200 | <Solid> | e.g. something like `(around (cmd-button "setxkbmap de") (layer-switch qwertz))` would switch to a defined `qwertz` layer and tell X that you want german language support |
2021-07-22 15:31:11 +0200 | <Guest4> | interesting |
2021-07-22 15:32:19 +0200 | <Guest4> | where to put the config file in linux? |
2021-07-22 15:32:49 +0200 | <Tisoxin> | Guest4: Do you use an ergonomic layout? |
2021-07-22 15:33:10 +0200 | <Tisoxin> | The kmonad config file? |
2021-07-22 15:33:17 +0200 | <Guest4> | yeah the kmonad config file |
2021-07-22 15:33:23 +0200 | <Guest4> | whats an ergonomic layout? |
2021-07-22 15:33:26 +0200 | <Tisoxin> | afaik there is no specific location |
2021-07-22 15:33:40 +0200 | <Tisoxin> | you just pass the config file from the command line |
2021-07-22 15:33:41 +0200 | <Solid> | Guest4: you give kmonad the path to the config file as a positional argument, so place it wherever you want |
2021-07-22 15:33:50 +0200 | <Guest4> | ohk |
2021-07-22 15:34:56 +0200 | <Tisoxin> | Guest4: Well, why would you want to switch layouts for gaming, if you don't use an additional ergonomic one ? That's the only reason i know |
2021-07-22 15:35:15 +0200 | <Tisoxin> | ergonomic layouts are layouts, which are optimized for typing |
2021-07-22 15:35:31 +0200 | <Guest4> | oh i thought you meant ergonomic keyboard |
2021-07-22 15:35:37 +0200 | <Tisoxin> | (qwerty is optimized for typewriters) |
2021-07-22 15:35:38 +0200 | <Guest4> | yeah i do use colemak dh |
2021-07-22 15:35:40 +0200 | <Guest4> | but im a begginer |
2021-07-22 15:35:50 +0200 | <Tisoxin> | ah, ok |
2021-07-22 15:36:06 +0200 | <Tisoxin> | How long do you type colemak? |
2021-07-22 15:36:10 +0200 | <Solid> | Tisoxin: another reason may be that they use home-row modifiers; I can imagine things like that being a bit awkward when accidentally pressed when gaming |
2021-07-22 15:36:25 +0200 | <Guest4> | its my day 5 on colemak dh |
2021-07-22 15:36:27 +0200 | <Guest4> | im on 40wpm |
2021-07-22 15:36:33 +0200 | <Tisoxin> | yes, but they wanted to switch layouts, not layers |
2021-07-22 15:36:35 +0200 | <Tisoxin> | nice |
2021-07-22 15:36:42 +0200 | <Guest4> | thanks :) |
2021-07-22 15:36:45 +0200 | <Solid> | ah, good point |
2021-07-22 15:36:55 +0200 | <Tisoxin> | i use the ergonomic layout bone |
2021-07-22 15:37:17 +0200 | <Guest4> | so i guess i could use vim with layers functionality? |
2021-07-22 15:37:56 +0200 | <Tisoxin> | depends on what you want to implement |
2021-07-22 15:38:03 +0200 | <Tisoxin> | https://neo-layout.org/Layouts/bone/ |
2021-07-22 15:39:50 +0200 | <Guest4> | exec /path/to/kmonad /path/to/config.kbd || exit 1 |
2021-07-22 15:39:55 +0200 | <Tisoxin> | Guest4: You might not be interested (since you've already begun learning colemak) but there are actually better layouts than colemak (although colemak is pretty sane), e.g. workman, 3l, etc. |
2021-07-22 15:40:02 +0200 | <Guest4> | in this is path to kmonad the kmonad.service file? |
2021-07-22 15:40:33 +0200 | <Tisoxin> | https://github.com/jackrosenthal/threelayout |
2021-07-22 15:40:37 +0200 | <Guest4> | Tisoxin hmm i willl look into it |
2021-07-22 15:41:02 +0200 | <Tisoxin> | https://colemakmods.github.io/ergonomic-mods/angle.html |
2021-07-22 15:41:13 +0200 | <Tisoxin> | https://workmanlayout.org/ |
2021-07-22 15:41:29 +0200 | <Tisoxin> | ok, enough link spamming :] |
2021-07-22 15:44:48 +0200 | Guest4 | (~Guest4@49.36.233.220) (Quit: Client closed) |
2021-07-22 15:48:06 +0200 | <Tisoxin> | !help |
2021-07-22 15:48:45 +0200 | <Tisoxin> | @help |
2021-07-22 15:48:45 +0200 | <lambdabot> | help <command>. Ask for help for <command>. Try 'list' for all commands |
2021-07-22 15:48:52 +0200 | <Tisoxin> | @list |
2021-07-22 15:48:52 +0200 | <lambdabot> | What module? Try @listmodules for some ideas. |
2021-07-22 15:48:59 +0200 | <Tisoxin> | @listmodules |
2021-07-22 15:48:59 +0200 | <lambdabot> | activity base bf check compose dice dict djinn dummy elite eval filter free fresh haddock help hoogle instances irc karma localtime metar more oeis offlineRC pl pointful poll pretty quote search |
2021-07-22 15:48:59 +0200 | <lambdabot> | seen slap source spell system tell ticker todo topic type undo unlambda unmtl version where |
2021-07-22 15:49:36 +0200 | <Tisoxin> | @type (<*>) (<*>) (<*>) |
2021-07-22 15:49:37 +0200 | <lambdabot> | error: |
2021-07-22 15:49:37 +0200 | <lambdabot> | • Occurs check: cannot construct the infinite type: |
2021-07-22 15:49:37 +0200 | <lambdabot> | f ~ (->) (f (f b)) |
2021-07-22 15:49:50 +0200 | <Tisoxin> | arg |
2021-07-22 15:50:58 +0200 | <Tisoxin> | @type (.) (<$>) (.) |
2021-07-22 15:50:59 +0200 | <lambdabot> | Functor f => (b -> c) -> f (a -> b) -> f (a -> c) |
2021-07-22 15:51:42 +0200 | <Solid> | Tisoxin: if they're learning colemak-dh then they've already found something "better" than the ones you listed :> |
2021-07-22 15:52:37 +0200 | <Tisoxin> | uh |
2021-07-22 15:52:41 +0200 | <Tisoxin> | i missed the dh |
2021-07-22 15:54:03 +0200 | <Tisoxin> | :/ |
2021-07-22 15:54:38 +0200 | <Tisoxin> | Solid: Maybe 3l is interesting for them |
2021-07-22 15:54:45 +0200 | <Tisoxin> | Since it has additional layers |
2021-07-22 15:55:16 +0200 | <Solid> | it looks pretty cool |
2021-07-22 15:55:32 +0200 | <Solid> | but probably the worst thing to do when you've been learning a layout for 5 days is to switch to a new weird one :D |
2021-07-22 15:55:49 +0200 | <Tisoxin> | :] |
2021-07-22 15:55:58 +0200 | <Tisoxin> | there are worse things |
2021-07-22 15:56:08 +0200 | <Tisoxin> | e.g. switching after a few weeks (like i did) |
2021-07-22 15:56:35 +0200 | <Tisoxin> | Solid: Which layout are you using? |
2021-07-22 15:56:51 +0200 | <Tisoxin> | afaik it's pretty common for german programmers to use qwerty |
2021-07-22 15:57:38 +0200 | <Solid> | I mean, it's pretty common for programmers (and, really, people) to use qwerty in general :) |
2021-07-22 15:57:44 +0200 | <Solid> | I also use colemak-dh right now |
2021-07-22 15:58:19 +0200 | <Solid> | my wrist problems disappeared and I'm reasonably fast, so probably not worth trying out more layouts |
2021-07-22 15:58:48 +0200 | <Tisoxin> | yes |
2021-07-22 16:01:16 +0200 | <Tisoxin> | Maybe I'll switch one day to a layout, thats suits english better |
2021-07-22 16:02:00 +0200 | <Tisoxin> | and the 5th and 6th layer of my current layout are pretty useless as well |
2021-07-22 16:02:03 +0200 | <Tisoxin> | I'd change them |
2021-07-22 16:37:38 +0200 | ThisGuyFucks | (~ThisGuyFu@49.36.233.220) |
2021-07-22 16:45:40 +0200 | ThisGuyFucks | (~ThisGuyFu@49.36.233.220) (Quit: Client closed) |
2021-07-22 17:18:37 +0200 | <contrapunctus> | Oh, so for some reason when I type `kmonad myconfig.kbd` and hit Enter at the terminal, Enter is "stuck" and triggered indefinitely until I press something else 🤔️ |
2021-07-22 18:23:39 +0200 | <Tisoxin> | contrapunctus: I have the same „problem“ |
2021-07-22 18:24:38 +0200 | <Tisoxin> | I'm not sure why it's happening, maybe kmonad just discards the first keyrelease, since there is no associated keypress for it |
2021-07-22 18:25:06 +0200 | <Tisoxin> | and then a program higher up the stuck just repeats the keypress |
2021-07-22 18:25:13 +0200 | <Tisoxin> | *stack not stuck |
2021-07-22 18:30:51 +0200 | <Tisoxin> | E.g. Xorg |
2021-07-22 18:35:56 +0200 | <Solid> | if the keyboard is captured before the release event is send to the system, then we can't send a release event because the keyboard that kmonad created is not the same as the original |
2021-07-22 18:36:18 +0200 | <Solid> | and linux is smart enough to figure out that the release event comes from two different devices |
2021-07-22 18:37:00 +0200 | <Solid> | the fix is to do something like `sleep 1 && kmonad ...` |
2021-07-22 18:37:35 +0200 | <Solid> | $HEAD should do this automatically |
2021-07-22 18:37:57 +0200 | <Tisoxin> | HEAD? |
2021-07-22 18:38:02 +0200 | <Solid> | the git version |
2021-07-22 18:38:22 +0200 | <Tisoxin> | ah |
2021-07-22 18:38:41 +0200 | <Tisoxin> | all the times its started? |
2021-07-22 18:39:33 +0200 | <Tisoxin> | Or is there a check wether it got interactively invoked or not? |
2021-07-22 18:40:47 +0200 | <Solid> | afaik it's there all the time |
2021-07-22 18:41:17 +0200 | <Solid> | (300ms by default or something) |
2021-07-22 18:41:19 +0200 | <Solid> | but it's configurable via the config file at least |
2021-07-22 18:41:30 +0200 | <Tisoxin> | ok |
2021-07-22 18:41:42 +0200 | <Solid> | ah and with a CL argument as well |
2021-07-22 18:41:48 +0200 | <Solid> | -w or --start-delay |
2021-07-22 18:42:03 +0200 | <Tisoxin> | yes its 300ms |
2021-07-22 21:23:59 +0200 | <contrapunctus> | I wrote a gemlog post about kmonad. gemini://tilde.team/~contrapunctus/gemlog/keyboard-machinations-kmonad.gmi |
2021-07-22 21:24:39 +0200 | <contrapunctus> | (If you don't have a Gemini client, see https://tilde.team/~contrapunctus ) |
2021-07-22 21:25:40 +0200 | <Tisoxin> | Do you know System Crafters? |
2021-07-22 21:27:10 +0200 | <Tisoxin> | apart from that: lol, now i know two musicians, that enjoy programming |
2021-07-22 21:28:38 +0200 | <contrapunctus> | Tisoxin: Never heard of System Crafters...what about them? :) |
2021-07-22 21:29:17 +0200 | <Tisoxin> | It's an youtube channel, mainly about emacs, but he made a video about gemini as well |
2021-07-22 21:29:37 +0200 | <Tisoxin> | That's why wondered, whether you were inspired by him to use Gemini |
2021-07-22 21:31:54 +0200 | <Tisoxin> | „small-yet-active community“ |
2021-07-22 21:31:57 +0200 | <Tisoxin> | :] |
2021-07-22 21:32:40 +0200 | <Tisoxin> | It's more or less just Solid and me, the other guys are either inactive or on discord |
2021-07-22 21:37:16 +0200 | <Tisoxin> | nice blog post |
2021-07-22 21:39:09 +0200 | <contrapunctus> | thanks :) really glad to have found this tool and for the help in getting it up. The possibilities are really exciting. |
2021-07-22 21:39:48 +0200 | <Tisoxin> | yes (though it the config language could be better) |
2021-07-22 21:39:51 +0200 | <Solid> | The plan still is to bridge to discord (sigh) at some point |
2021-07-22 21:39:57 +0200 | <Solid> | which may make this place more lively |
2021-07-22 21:40:04 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) |
2021-07-22 21:40:10 +0200 | <SomeRandomDude> | hello |
2021-07-22 21:40:14 +0200 | <Tisoxin> | hi |
2021-07-22 21:40:23 +0200 | <SomeRandomDude> | can somebody help me with installation? |
2021-07-22 21:40:38 +0200 | <SomeRandomDude> | i install the kmonad-bin packaged |
2021-07-22 21:40:45 +0200 | <SomeRandomDude> | what do i do now? |
2021-07-22 21:40:46 +0200 | <Tisoxin> | i guess |
2021-07-22 21:40:47 +0200 | <Tisoxin> | i can |
2021-07-22 21:41:13 +0200 | <Tisoxin> | Which OS are you using? |
2021-07-22 21:41:16 +0200 | <SomeRandomDude> | arch |
2021-07-22 21:41:36 +0200 | <SomeRandomDude> | i have a kmonad config for colemak dh |
2021-07-22 21:42:05 +0200 | <SomeRandomDude> | i dont know where to place the kmonad scripts |
2021-07-22 21:42:17 +0200 | <Tisoxin> | Well then you should be able to use kmonad with `kmonad $CONFIGFILE` |
2021-07-22 21:42:49 +0200 | <SomeRandomDude> | without running the services? |
2021-07-22 21:43:06 +0200 | <SomeRandomDude> | like theres the run file and the kmonad.service file given |
2021-07-22 21:43:16 +0200 | <Tisoxin> | Solid: I'm still sceptical, if bridging wouldn't just kill this community |
2021-07-22 21:43:28 +0200 | <Tisoxin> | hm |
2021-07-22 21:44:04 +0200 | <Tisoxin> | If you use the systemd service, the location of the file should be described in the installation explanation™ |
2021-07-22 21:45:18 +0200 | <SomeRandomDude> | yeah the run file in asked to be in /etc/sv/kmonad |
2021-07-22 21:45:24 +0200 | <SomeRandomDude> | but what about the .service file |
2021-07-22 21:46:29 +0200 | <Tisoxin> | I guess just your standard systemd directory |
2021-07-22 21:46:37 +0200 | <Tisoxin> | But i use NixOS, so i can't help you any further |
2021-07-22 21:47:03 +0200 | <Tisoxin> | https://wiki.archlinux.org/title/Systemd#Writing_unit_files |
2021-07-22 21:47:24 +0200 | <Solid> | SomeRandomDude: the run file is in case you use the runit init system |
2021-07-22 21:47:31 +0200 | <Solid> | you don't need it with systemd |
2021-07-22 21:47:48 +0200 | <SomeRandomDude> | ohh |
2021-07-22 21:48:00 +0200 | <Tisoxin> | You probably should place the service file in the directory `/usr/lib/systemd/system/` |
2021-07-22 21:48:16 +0200 | <SomeRandomDude> | oh |
2021-07-22 21:49:54 +0200 | <Solid> | Tisoxin: "kill" in what sense? |
2021-07-22 21:50:10 +0200 | <SomeRandomDude> | also about this |
2021-07-22 21:50:11 +0200 | <SomeRandomDude> | Make sure the uinput device file has the right permissions: Add a udev rule (in either /etc/dev/rules.d or /lib/udev/rules.d) with the following content: |
2021-07-22 21:50:12 +0200 | <SomeRandomDude> | KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinp |
2021-07-22 21:50:21 +0200 | <SomeRandomDude> | do i just make a random file name or is there a syntax |
2021-07-22 21:51:02 +0200 | <Solid> | afaik there has to be a .rules suffix |
2021-07-22 21:51:12 +0200 | <Solid> | but other than that you should be able to name it anything you want |
2021-07-22 21:51:21 +0200 | <SomeRandomDude> | oh thanks |
2021-07-22 21:52:03 +0200 | <Tisoxin> | Solid: Like maybe, „come on the discord, we already talked about this here and there“ |
2021-07-22 21:52:08 +0200 | <Tisoxin> | But I donno |
2021-07-22 21:52:13 +0200 | <Solid> | ah I see |
2021-07-22 21:52:32 +0200 | <Tisoxin> | Maybe It's just that i hate discord and i'm much to subjective on this matter |
2021-07-22 21:52:37 +0200 | <Tisoxin> | ¯\_(ツ)_/¯ |
2021-07-22 21:52:49 +0200 | <Solid> | can't have enough hate for discord really :P |
2021-07-22 21:57:50 +0200 | <SomeRandomDude> | do i make a new rules file? |
2021-07-22 21:57:59 +0200 | <SomeRandomDude> | i dont wanna fuck things up |
2021-07-22 21:58:03 +0200 | <SomeRandomDude> | :/ |
2021-07-22 21:58:26 +0200 | <Tisoxin> | (obligatoric NixOS Advertise) |
2021-07-22 21:58:33 +0200 | <Tisoxin> | :p |
2021-07-22 21:58:38 +0200 | <Solid> | both options are fine |
2021-07-22 21:58:50 +0200 | <Solid> | if you already have a rules file that all input rules reside in just add it there |
2021-07-22 21:58:57 +0200 | <Solid> | if not then making a new file works as well |
2021-07-22 21:59:25 +0200 | <SomeRandomDude> | well there are lots of rules file in the /lib/udev/rules.d dir |
2021-07-22 21:59:34 +0200 | <SomeRandomDude> | but idk whats the right one |
2021-07-22 21:59:52 +0200 | <SomeRandomDude> | maybe the udev-defaults |
2021-07-22 21:59:54 +0200 | <Tisoxin> | then just add a new one |
2021-07-22 22:01:05 +0200 | <SomeRandomDude> | ok i added the file im gonna restart |
2021-07-22 22:01:10 +0200 | <SomeRandomDude> | i will come back in 2 mins |
2021-07-22 22:01:13 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) (Quit: Client closed) |
2021-07-22 22:02:49 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) |
2021-07-22 22:02:56 +0200 | <SomeRandomDude> | hmm |
2021-07-22 22:03:09 +0200 | <SomeRandomDude> | its still showing permission denies |
2021-07-22 22:03:34 +0200 | <Tisoxin> | have added your user to the uinput and input group? |
2021-07-22 22:03:39 +0200 | <SomeRandomDude> | yeah |
2021-07-22 22:03:53 +0200 | <SomeRandomDude> | d |
2021-07-22 22:04:29 +0200 | <SomeRandomDude> | kmonad /dev/input/by-path/kdfjkd-kbd openFd permission denied |
2021-07-22 22:09:22 +0200 | <Tisoxin> | SomeRandomDude: Maybe try starting kmonad with verbose logging |
2021-07-22 22:09:28 +0200 | <Tisoxin> | (on the command line) |
2021-07-22 22:12:46 +0200 | <SomeRandomDude> | how to do that? |
2021-07-22 22:13:10 +0200 | <SomeRandomDude> | what value to pass in -l flag |
2021-07-22 22:13:40 +0200 | <Tisoxin> | i'm not sure, i don't actually have kmonad installed… |
2021-07-22 22:13:43 +0200 | Tisoxin | runs |
2021-07-22 22:14:04 +0200 | <Tisoxin> | hm |
2021-07-22 22:14:12 +0200 | <Tisoxin> | use debug |
2021-07-22 22:15:46 +0200 | <SomeRandomDude> | Opening KeySink |
2021-07-22 22:15:46 +0200 | <SomeRandomDude> | Registering Uinput device |
2021-07-22 22:15:47 +0200 | <SomeRandomDude> | Opening KeySource |
2021-07-22 22:15:47 +0200 | <SomeRandomDude> | Closing KeySink |
2021-07-22 22:15:48 +0200 | <SomeRandomDude> | Unregistering Uinput device |
2021-07-22 22:15:48 +0200 | <SomeRandomDude> | Closing Uinput device file |
2021-07-22 22:15:49 +0200 | <SomeRandomDude> | kmonad: /dev/input/by-path/platform-i8042-serio-0-event-kbd: openFd: permission denied (Permission denied) |
2021-07-22 22:16:10 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) (Quit: Client closed) |
2021-07-22 22:16:45 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) |
2021-07-22 22:17:59 +0200 | <SomeRandomDude> | so i tried running kmonad.service file through systemd |
2021-07-22 22:18:07 +0200 | <SomeRandomDude> | it still does not work :( |
2021-07-22 22:18:29 +0200 | <Tisoxin> | do you get the same output, if you run it with your user? |
2021-07-22 22:18:34 +0200 | <Tisoxin> | *when |
2021-07-22 22:19:10 +0200 | <Tisoxin> | apart from that, are you sure you are in the uinput and input group? |
2021-07-22 22:19:24 +0200 | <Tisoxin> | (check with the `group` command, without sudo) |
2021-07-22 22:19:42 +0200 | <Tisoxin> | (not the `group` but the `groups` command) |
2021-07-22 22:20:39 +0200 | <SomeRandomDude> | i have only added myself to uinput group |
2021-07-22 22:20:50 +0200 | <SomeRandomDude> | is the input group required too? |
2021-07-22 22:20:59 +0200 | <Tisoxin> | yes |
2021-07-22 22:21:10 +0200 | <SomeRandomDude> | ohk i will make it |
2021-07-22 22:22:06 +0200 | <Tisoxin> | i guess the installation documentation is insufficient |
2021-07-22 22:22:12 +0200 | <Tisoxin> | sigh |
2021-07-22 22:22:47 +0200 | <SomeRandomDude> | yeah |
2021-07-22 22:22:52 +0200 | <SomeRandomDude> | its still showing the same thing |
2021-07-22 22:22:56 +0200 | <SomeRandomDude> | permission denied |
2021-07-22 22:23:04 +0200 | <Tisoxin> | did you reboot? |
2021-07-22 22:23:07 +0200 | <Tisoxin> | i think you need to |
2021-07-22 22:23:13 +0200 | <Tisoxin> | though i'm not sure |
2021-07-22 22:23:25 +0200 | <Tisoxin> | does `groups` show uinput as well as input? |
2021-07-22 22:23:43 +0200 | <SomeRandomDude> | groups shows only uinput |
2021-07-22 22:23:52 +0200 | <Tisoxin> | then you need to reboot |
2021-07-22 22:23:59 +0200 | <Tisoxin> | or relog |
2021-07-22 22:24:03 +0200 | <SomeRandomDude> | ok i will be back |
2021-07-22 22:24:08 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) (Quit: Client closed) |
2021-07-22 22:27:06 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) |
2021-07-22 22:27:11 +0200 | <SomeRandomDude> | Hey Im Back |
2021-07-22 22:27:19 +0200 | <SomeRandomDude> | It works now |
2021-07-22 22:27:26 +0200 | <Tisoxin> | nice |
2021-07-22 22:27:31 +0200 | <SomeRandomDude> | thanks for helping |
2021-07-22 22:27:39 +0200 | <SomeRandomDude> | :) |
2021-07-22 22:27:45 +0200 | <Tisoxin> | np |
2021-07-22 22:29:44 +0200 | Tisoxin | sighs in Haskell Confusion |
2021-07-22 22:31:12 +0200 | <Solid> | this does not really seem haskell related |
2021-07-22 22:31:29 +0200 | <Solid> | (and if the install instructions are wrong please pr a fix :)) |
2021-07-22 22:31:31 +0200 | <Tisoxin> | yes |
2021-07-22 22:32:00 +0200 | <Tisoxin> | I think the problem is, that there is, that the systmd file is not actually documented |
2021-07-22 22:32:17 +0200 | <Solid> | ah I see |
2021-07-22 22:32:23 +0200 | <Tisoxin> | My haskell confusion is also not rooted in their problem |
2021-07-22 22:33:00 +0200 | <Tisoxin> | i'm currently reading the typeclassopedia |
2021-07-22 22:33:23 +0200 | <Tisoxin> | „((.) ($ f) (flip ($)))“ |
2021-07-22 22:34:19 +0200 | <Solid> | lol |
2021-07-22 22:35:51 +0200 | <Tisoxin> | the flip ($) is the worst |
2021-07-22 22:36:13 +0200 | <Tisoxin> | though alone it's still comprehensible |
2021-07-22 22:36:19 +0200 | <Tisoxin> | but in combination with (.)… |
2021-07-22 22:40:50 +0200 | <Solid> | x) |
2021-07-22 22:40:56 +0200 | <Solid> | (&) reads a bit nicer than flip ($) |
2021-07-22 22:41:15 +0200 | <Solid> | @pointful ((.) ($ f) (flip ($))) |
2021-07-22 22:41:15 +0200 | <lambdabot> | f |
2021-07-22 22:41:21 +0200 | SomeRandomDude | (~SomeRando@2405:201:5c04:f137:3452:dd96:e675:9a7) (Quit: Client closed) |
2021-07-22 22:41:23 +0200 | <Tisoxin> | one could also write ↑ |
2021-07-22 22:41:24 +0200 | <Solid> | oh that's prety neat |
2021-07-22 22:41:28 +0200 | <Tisoxin> | :D |
2021-07-22 22:42:15 +0200 | <Tisoxin> | I tried to prove „pure f <*> x = pure (flip ($)) <*> x <*> pure f“ |
2021-07-22 22:43:01 +0200 | <Tisoxin> | * `pure f <*> x = pure (flip ($)) <*> x <*> pure f` |
2021-07-22 22:44:51 +0200 | <Solid> | looks true |
2021-07-22 22:45:05 +0200 | <Tisoxin> | it is |
2021-07-22 22:45:56 +0200 | <Tisoxin> | Why did i even use those Applicative laws |
2021-07-22 22:45:58 +0200 | <Tisoxin> | ._. |
2021-07-22 22:46:14 +0200 | <Tisoxin> | If i look at it, its pretty obviously true |
2021-07-22 22:46:27 +0200 | <Solid> | :D |
2021-07-22 22:46:54 +0200 | <Tisoxin> | well, the more you learn… |
2021-07-22 22:47:00 +0200 | <Solid> | It may also be easier to look at `pure ($) <*> pure f <*> x` instead of wrapping your head around flip |
2021-07-22 22:47:22 +0200 | <Solid> | well actually |
2021-07-22 22:47:26 +0200 | <Tisoxin> | yes, but that was the exercise… |
2021-07-22 22:47:37 +0200 | <Tisoxin> | * not the exercise |
2021-07-22 22:47:46 +0200 | <Solid> | let's just do `($) <$> pure f <*> x` to really make it clear |
2021-07-22 22:48:40 +0200 | <Tisoxin> | or `f <$> x` :> |
2021-07-22 22:48:44 +0200 | <Solid> | :D |
2021-07-22 22:49:21 +0200 | <Tisoxin> | sometimes, haskell is great at doing easy things complicated |
2021-07-22 22:50:26 +0200 | <Tisoxin> | though that particular example wasn't exactly haskells fault |
2021-07-22 22:51:19 +0200 | <Tisoxin> | But that's just the trade-off from having high abstractions i suppose |
2021-07-22 22:52:33 +0200 | <Solid> | I mean if you ever see someone trying to define f as ((.) ($ f) (flip ($))) then please slap that person :D |
2021-07-22 22:53:16 +0200 | <Solid> | but yeah these are just exercises to familiarise you with the laws for these functors |
2021-07-22 22:53:32 +0200 | <Solid> | don't worry, you'll forget them in a few days :P |
2021-07-22 22:53:46 +0200 | <Tisoxin> | :] |
2021-07-22 22:53:57 +0200 | <Tisoxin> | <Solid "I mean if you ever see someone t"> i will, i will |
2021-07-22 22:55:07 +0200 | Tisoxin | will use somewhere in his next haskell project ((.) ($ f) (flip ($))) instead of f :> |
2021-07-22 22:55:30 +0200 | <Solid> | x) |
2021-07-22 23:08:28 +0200 | <Tisoxin> | <Tisoxin "sometimes, haskell is great at d"> on a second thought, that's not really true |
2021-07-22 23:08:42 +0200 | <Tisoxin> | since the complicated bits are also the abstract ones |
2021-07-22 23:10:14 +0200 | <Tisoxin> | and abstraction is often intuitive but most of the time hard to understand completely |