<ifreund>
hmm, I think we should just make individual issues for anything that needs doing and add them to an appropriate milestone
dbuckley has quit [Remote host closed the connection]
yyp has joined #river
travankor is now known as DarthRasengan
yyp has quit [Ping timeout: 272 seconds]
yyp has joined #river
leon-p has joined #river
leon-p has quit [Quit: leaving]
elshize has joined #river
leon-p has joined #river
<leon-p>
ifreund: The input PR should be done now, I think. I have updated the bash completion script and perhaps the people who contributed the completions for other shells are willing to update those as well.
elshize has quit [Quit: WeeChat 3.1]
elshize has joined #river
<elshize>
hi everyone, I tried out river yesterday, and I gotta say I'm really impressed; I love the layout protocol, have been playing with kile layout manager; I realize it's work in progress but so far everything works perfectly. to all contributors: great job so far! very exciting project, and your work is very appreciated!
<leon-p>
elshize: if you want to play around with layouts a bit more, in the contrib directory in rivers repository you'll find a simple layout written in C that is very hackable and has comments explaining all the important bits
<elshize>
leon-p: yep, I saw that, I'll definitely play around with that at some point
leon-p has quit [Quit: leaving]
FollieHiyuki has joined #river
FollieHiyuki has quit [Quit: WeeChat 3.2]
leon-p has joined #river
leon-p has quit [Quit: leaving]
leon-p has joined #river
yyp has quit [Remote host closed the connection]
leon-p has quit [Quit: leaving]
yyp has joined #river
<ifreund>
elshize: thanks for the kind words!
<ifreund>
aaay 666 stars
<ifreund>
hail satan
leon-p has joined #river
<leon-p>
yeah, nice to see river approved by the metal god :P
<ifreund>
leon-p: one last bit of bikeshedding on the input PR, otherwise everything looks good :)
<leon-p>
ifreund: all done!
<ifreund>
sweet, I'll just lest the CI run and then merge it
<leon-p>
is our CI un-broken again?
<leon-p>
I have gotten used to just ignoring it :P
<ifreund>
indeed
<leon-p>
nice
<ifreund>
I should probably make it either download a zig tarball or build zig from source
<ifreund>
we should be fine until zig 0.9.0 releases though
<ifreund>
well, wlroots might break it again for a bit
<leon-p>
I don't think there is a wlroots release planned right now, so we are fine for a while
<leon-p>
I really enjoyed working on this. Using @"" and @tagName to have a single source of truth instead of some sort of enumToString function is absolutely amazing
<ifreund>
yeah, it's that kind of thing that I now miss in every other language
yyp has quit [Ping timeout: 252 seconds]
yyp has joined #river
<elshize>
what problems do you have with CI? is it because github keeps updating images? I started using docker images within Actions in some of my projects. our C++ builds basically kept breaking with each PR, no kidding
<ifreund>
elshize: CI problems are purely due to my decision to build river using zig and wlroots with are both pre-1.0 and have breaking changes with every release
<ifreund>
so the distro I use for the CI lags behind the upstream releases we track
<ifreund>
building both zig and wlroots from source would make things a bit more reliable
waleee has joined #river
<elshize>
ifreund: got you. out of curiosity, what made you choose zig? is there something behind this decision, or do you just like the language?
<elshize>
it's pretty niche, isn't it?
<ifreund>
elshize: yeah it's pretty niche, but it's the only language I found that made me want to try using it instead of C
<ifreund>
river is my first zig project for reference
<ifreund>
since starting river I've gotten involved in working on the zig compiler though
<ifreund>
basically Zig offers significant upgrades in safety and power over C while remaining simple
leon-p has quit [Quit: leaving]
waleee has quit [Ping timeout: 268 seconds]
leon-p has joined #river
waleee has joined #river
novakane has joined #river
leon-p has quit [Quit: leaving]
yyp has quit [Remote host closed the connection]
priner[m] has quit [Remote host closed the connection]
sjtio has quit [Remote host closed the connection]
waleee-cl has joined #river
sjtio has joined #river
waleee has quit [Ping timeout: 245 seconds]
priner[m] has joined #river
ifreund has quit [Ping timeout: 264 seconds]
ifreund has joined #river
waleee-cl has quit [Ping timeout: 272 seconds]
waleee-cl has joined #river
novakane has quit [Quit: WeeChat 3.2]
aruhier has quit [Ping timeout: 265 seconds]
aruhier has joined #river
leon-p has joined #river
ifreund has quit [Ping timeout: 265 seconds]
ifreund has joined #river
leon-p has quit [Quit: leaving]
leon-p has joined #river
leon-p has quit [Quit: leaving]
leon-p has joined #river
leon-p has quit [Client Quit]
leon-p has joined #river
<elshize>
ifreund: I see. have you tried rust? not that i'm suggesting switching, just curious :) I haven't really tried zig myself, I'm curious to see what it offers, might give it a spin one day.
<leon-p>
elshize: rust and Wayland aren't exactly the greatest match. Wayland is dangling pointers everywhere. You can design abstractions to get around that, but it gets awkward.
<elshize>
leon-p: whoa, "dangling pointers everywhere" sounds like a nightmare :D but I hear you. I can imagine it being tricky, though I haven't done anything wayland, so no experience with it.
<leon-p>
realistically "dangling pointers everywhere" is just what you get when you do systems programming
<leon-p>
even with rust, if you go deep enough everything is unsafe
<ifreund>
I've got some ideas of how to make wayland code less pointer-soupy
<ifreund>
these ideas would not be very wlroots/libwayland compatible though
<ifreund>
rewriting *everything* in rust is theoritically possible, but that means reimplementing all of wlroots for (IMO) very little gain
<ifreund>
also I just don't like rust very much any more, I find it too complex for the benefit it provides, especially in single threaded programs
<leon-p>
ifreund: speaking of pointer soup, maybe we should make debug builds use zigs gpa to make it easier to catch leaks
<elshize>
ifreund: I'm familiar with way cooler story, though never looked into details. I very much like Rust, but I do agree that just simply rewriting everything in Rust is not necessarily the way to go. because Rust approach is so much different, it doesn't necessarily work well with some existing code or APIs, and rewriting everything from ground up is usually a way to nowhere
<leon-p>
huh, river does not like zigs gpa
<waleee-cl>
wouldn't wlroots need c's allocator?
<leon-p>
yeah, although I think wlroots stuff cleans itself up