ifreund changed the topic of #river to: river - a dynamic tiling wayland compositor || https://github.com/riverwm/river || channel logs: https://libera.irclog.whitequark.org/river/
lxsameer has quit [Ping timeout: 244 seconds]
notzmv has quit [Ping timeout: 244 seconds]
NickH has quit [Ping timeout: 240 seconds]
NickH has joined #river
notzmv has joined #river
<NickH> ifreund: just looking at the new PACKAGING.md. I tried adding -Dpie but it zig returns "
<NickH> Invalid option: -Dpie
<NickH> zig version 0.9.1
<NickH> I'm using a standard cmake build of zig.
<NickH> Ahh, sorry my bad I didn't pull the new build.zig yet!
kitty1 has quit [Ping timeout: 272 seconds]
snakedye has quit [Ping timeout: 240 seconds]
_whitelogger has joined #river
kitty1 has joined #river
wrl has quit [*.net *.split]
wrl has joined #river
travankor has joined #river
<ifreund> no worries :)
lxsameer has joined #river
<NickH> I wonder if it is worth documenting how to build river with out the RUNPATH being set on PACKAGING.md?
<ifreund> NickH: what was the workaround for that again? passing the full target/cpu/libc?
<NickH> Hmm, I made two changes... let me check.
snakedye has joined #river
<NickH> Needed to use the --libc option and explicitly set -Dtarget. See https://github.com/NickHastings/river-debian/blob/main/rules
notzmv has quit [Ping timeout: 260 seconds]
snakedye_real has joined #river
Anderson-D has joined #river
<Anderson-D> Just checked out `hide-cursor` & `map -layout N` commands and it's totally awesome! River has been my daily driver for the past few months and I absolutely love it
<Anderson-D> I have one issue though, I'm using a keyb with a rotary encoder which is mapped to mouse scroll wheel. Every time I use it, my cursor reappears since river thinks I'm using my mouse. Is it possible to somehow prevent it from appearing unless mouse was actually moved/clicked?
<Anderson-D> I was thinking about two options: 1) adding one more enum to `HideCursorWhenTypingMode` or 2) adding filtering by device to call `unhide()` conditionally
<Anderson-D> Thoughts?
Guest12 has joined #river
<Guest12> Hello, is there a way to have tabs like in sway ?
snakedye_real has quit [Quit: snakedye_real]
<ifreund> Guest12: nope, no tabs
<ifreund> Anderson-D: If your rotary encoder is exposed to river as a mouse scroll wheel then it will be reported to the wayland client that currently has pointer focus as part of the wl_pointer interface
<ifreund> I think unhiding the cursor makes sense in this case as the cursor's location determines which client will recieve the events
<Guest12> ifreund: is there than maybe a way to swap apps from different tags, into the same position
<Guest12> ?
<Guest12> Most of the time i have split my screen into four parts, an easy way to replace one of the apps would be great
<ifreund> You can kind of hack it by seting the views you don't want to swap to be on e.g. tags 1, 2, and 3
<ifreund> then for the 3 views you want to swap between set them each to a single tag in that set (1, 2, or 3)
<Guest12> i can set a tag to a view?
<ifreund> then switch focus between tags 1, 2, and 3 to effectively swap out 1 view
<ifreund> this isn't very ergonomic though and doesn't guarentee that the position of the "replaced" view in the stack will be the same
<ifreund> Guest12: all the tag related commands are document in the TAG MANAGEMENT section of the riverctl man page
<Guest12> ok, i have to check them out
<Guest12> can you have multiple views per output ?
<ifreund> you mean like this? https://0x0.st/oaY-.png
<Guest12> view = app ?
<nor[m]> Vew = Window. Do you mean "multiple tags"? That is possible aswell.
<nor[m]> s/vew/view
<Guest12> Ok
<ifreund> I should really s/view/window/ in all user-facing river docs/commands
<ifreund> I don't think it's worth the breaking change though at this point
<nor[m]> Where does the view terminology come from? Is it a wayland protocol thing?
<Guest12> maybe just at a definition for view?
notzmv has joined #river
<ifreund> nor[m]: it originated in weston's source code a long time ago because they were planning on allowing multiple different views of the same client at the same time
<ifreund> It kinda got picked up by wlroots and sway from there, and then I just cargo culted it into river's code in the early days
<Shinyzenith[m]> I'm facing some zig issues, initially I was using the same server intiialization logic as tinywl... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/677417905e001879c118a0c37e345c21b1e3755b)
<Shinyzenith[m]> and then finally assigned that to self.*.=.{... .wl_server =wl_server}
<Shinyzenith[m]> but then I looked into river source and it was much cleaner by directly calling
<Shinyzenith[m]> self.wl_server = wl.Server.Create();
<Shinyzenith[m]> However for some odd reason which I do not understand, doing that simply segfaults
<Shinyzenith[m]> so I assumed maybe I need to dereference the pointer?
<Shinyzenith[m]> so I tried self.*.wl_server = wl.Server.Create();
<Shinyzenith[m]> still no luck. Any suggestions?
<ifreund> run it under valgrind :D
<Shinyzenith[m]> already thought of that, valgrind is giving me some weird 32 bit error on arch. Will send a log.
<Shinyzenith[m]> searched for the libc 64 package it wants, found nothing :(
<ifreund> weird, wouldn't expect arch's valgrind packaging to be messed up
<Shinyzenith[m]> ¯_(ツ)_/¯
<Shinyzenith[m]> what boggles my mind is that
<Shinyzenith[m]> self.field = expr
<Shinyzenith[m]> self.* = .{field = expr}
<Shinyzenith[m]> segfaults over
<Shinyzenith[m]> like why
<Shinyzenith[m]> Initially I thought my patch might've been too big to debug so I simply just tried changing the style around and found that self.field = expr breaks it
<ifreund> I doubt that's the actual cause, you've likely got a memory error somewhere else that only blows up when when the stack usage changes due to that change or something
<ifreund> really I'd recommend figuring out how to get valgrind running on your distro, try your distro's IRC channel
<Shinyzenith[m]> Can gdb suffice?
<Shinyzenith[m]> because I've already tried valgrind for weeks now
<Shinyzenith[m]> and failed over and over again 😆
<ifreund> you can try gdb, but it can't tell you as much as valgrind can
<Shinyzenith[m]> Ok I'll get back to you on this
<novakane> https://archlinux.org/packages/extra/x86_64/valgrind/ mention that you need lib32-glibc for 32 bit support
<novakane> Shinyzenith[m]: ^
<Shinyzenith[m]> I already have lib32-glic installed if that's what you're asking
<novakane> ah, weird
<novakane> Shinyzenith[m]: try this maybe https://bbs.archlinux.org/viewtopic.php?id=276422
<novakane> `export DEBUGINFOD_URLS="https://debuginfod.archlinux.org"`
<Shinyzenith[m]> huh that worked, I never came across that
<Shinyzenith[m]> ran valgrind --leak-check=full ./binary
<novakane> they're also a pkg for this https://wiki.archlinux.org/title/Debuginfod
<Shinyzenith[m]> the valgrind report crossed my terminal scrollback limit 😆 20k
<Shinyzenith[m]> and yes there is some memory leaks
<Shinyzenith[m]> I
<Shinyzenith[m]> sI'll get to the bottom of thi
<Shinyzenith[m]> s/sI/I/, s/thi/this/
wrl has quit [Quit: Reconnecting]
wrl has joined #river
<ifreund> Shinyzenith[m]: you're not really looking for leaks, those are "safe." You're looking for uninitialized reads, out of bounds access, etc
waleee has joined #river
<Shinyzenith[m]> <ifreund> "Shinyzenith: you're not really..." <- hm do you mean that wlroots itself leaks some memory?
<ifreund> memory leaks aren't unsafe
<ifreund> wlroots might leak some, I don't know. Mesa very likely does, it's stupidly complex
<Shinyzenith[m]> well yes, but not wanted either
<Shinyzenith[m]> oh absolutely, mesa and opengl do afaik
<ifreund> either way, they won't cause your segfault
<Shinyzenith[m]> hm Ok I'll keep looking, thank you!
kragacles has joined #river
waleee has quit [Ping timeout: 244 seconds]
snakedye has quit [Ping timeout: 244 seconds]
lxsameer has quit [Ping timeout: 258 seconds]
snakedye has joined #river
<novakane> damn 48 crates
<novakane> really something I hate in rust
waleee has joined #river
Guest12 has quit [Ping timeout: 252 seconds]
lxsameer has joined #river
<alebastr> ifreund: out of curiosity, what does cargo-bloat say for waylock?
lxsameer has quit [Ping timeout: 240 seconds]
dbuckley has quit [Read error: Connection reset by peer]
dbuckley has joined #river
Misthios1 has joined #river
Misthios has quit [Quit: Ping timeout (120 seconds)]
Misthios1 is now known as Misthios
<Shinyzenith[m]> ifreund: https://pastebin.com/RN7BEbwr I assume what it's trying to say is that wlr_backend was uninitialized?
waleee has quit [Ping timeout: 255 seconds]
waleee has joined #river