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/
travankor has quit [Remote host closed the connection]
<Nulo> So, river support for multiple outputs isn't very good, is it?
<Nulo> Ah, there's commands for sending stuff to outputs..
<leon-p> Nulo: it's totally usable, it's just not very ergonomic
<Nulo> Yeah, that's what I figured
waleee has quit [Ping timeout: 250 seconds]
notzmv has quit [Ping timeout: 268 seconds]
snakedye has quit [Ping timeout: 240 seconds]
FollieHiyuki has joined #river
ifreund has quit [Killed (NickServ (GHOST command used by ifreund_!2940d10f8b@user/ifreund))]
ifreund has joined #river
FollieHiyuki has quit [Quit: WeeChat 3.4]
notzmv has joined #river
<novakane> ifreund: so what header do I need to replace rundird with dumb_runtime_dir, I got this error https://0x0.st/orM0.log
notzmv has quit [Ping timeout: 268 seconds]
noopdecoder has joined #river
travankor has joined #river
travankor has quit [Remote host closed the connection]
travankor has joined #river
notzmv has joined #river
snakedye has joined #river
noopdecoder has quit [Quit: noopdecoder]
noopdecoder has joined #river
pkap has joined #river
noopdecoder has quit [Quit: noopdecoder]
noopdecoder has joined #river
noopdecoder has quit [Quit: noopdecoder]
waleee has joined #river
mon_aaraj has joined #river
<mon_aaraj> Hello, I've been looking at a script - mainly https://github.com/druskus20/eugh/blob/master/polybar-replacement/modules/workspaces.sh and I've seen that it uses a bspwm feature: `bspc subscribe`, which when I look into it, doesn't seem to exist within river. Are there any plans to implement it? Thank you. Oh, by the way, I think something like ristate or anything that implements river-status might
<mon_aaraj> help, but i havent found something that allows it to integrate with shellscript well enough, but I'm not very sure.
<leon-p> mon_aaraj: riverctl is unlikely to gain any radically new features in the near-ish future
<leon-p> and wrt scripts, the idea is that we'd generally rather see people use the Wayland protocols provided by river directly instead of hot-glueing multiple helper binaries together with shell scripts
<leon-p> that said, if you tell us what your script is supposed to do, we might be able to help you turning the idea into something that works
noopdecoder has joined #river
<mon_aaraj> Ah, I see. Thank you very much for answering!
noopdecoder has quit [Client Quit]
<mon_aaraj> The script is just meant as a way to get eww to display workspaces in a dynamic way, I mainly wish to use it simply to highlight which workspace is the one being viewed right now.
Guest2 has joined #river
Guest2 has quit [Client Quit]
<leon-p> I see. In what way it ristate lacking? Unless I am mistaken, it was written with eww in mind
mon_aaraj has quit [Ping timeout: 256 seconds]
mon_aaraj has joined #river
mon_aaraj has quit [Ping timeout: 245 seconds]
mon_aaraj has joined #river
<snakedye> mon_aaraj: you don't need a shell script. Run ristate with the flags you want and use eww to interpret the json string
mon_aaraj has quit [Ping timeout: 240 seconds]
mon_aaraj has joined #river
sleepbg[m] has quit [Quit: You have been kicked for being idle]
<ifreund> novakane: hmm, assuming you're on glibc. I've only tested building on musl so far
<ifreund> ah, I think it's sys/types.h
hill has joined #river
<ifreund> novakane: pushed a commit adding the include, let me know if it works for you
mon_aaraj has quit [Ping timeout: 240 seconds]
mon_aaraj has joined #river
Phyrric_ has joined #river
Phyrric has quit [Ping timeout: 268 seconds]
ifreund has quit [Remote host closed the connection]
ifreund has joined #river
hill has quit [Quit: Lost terminal]
<novakane> ifreund: build it, rebooted, everything working fine now, thanks
<ifreund> :)
pkap has quit [Quit: Client closed]
<novakane> so you stop maintaining rundird I guess? What was the reason to rewrite it?
<ifreund> I realized it was more complex than what I actually needed
<novakane> fair, just when it was accepted in void-packages :P
<ifreund> also I don't feel like needing to update it every zig release, C is fine for ~50 lines of code that will never need to change
<ifreund> I'll probably get it dropped from void-packages soon when llvm and zig get updated
pkap has joined #river
<novakane> true, that's one of the problem to use a language early in developement
<novakane> not sure if that gonna happen soon llvm13 on void, I hope so tho
<ifreund> If nobody's done it when I get back to aachen and my beefy PC I'll probably do it
<novakane> yeah I wouldn't mind doing it but no way I build it on my pc, tried one time to use with zig master, no more xD
<ifreund> llvm's not as bad as chromium or firefox, had to build those to get screenshare working ~1.5 years ago when pipewire was just making its way into webrtc
pkap46 has joined #river
<pkap46> \nick pkap
pkap has quit [Ping timeout: 256 seconds]
mon_aaraj has quit [Ping timeout: 245 seconds]
mon_aaraj has joined #river
chipps has joined #river
mon_aaraj has quit [Ping timeout: 252 seconds]
mon_aaraj has joined #river
Guest43 has joined #river
Guest43 has quit [Client Quit]
pkap46 is now known as pkap
<chipps> what bars do you guys use? I need a minimal statusbar thingy to just display some workspace info, and the date/time
<ifreund> chipps: on my laptop I just use river-tag-overlay currently
<pkap> chipps: You should check out this: https://github.com/riverwm/river/wiki/Recommended-Software
MatrixTravelerbo has joined #river
<pkap> Waybar and Yambar both work really nice.
<chipps> pkap: nice, I've looked at them for a bit. I would have preferred something simpler, but I guess I'll mess around with yambar for now.
<chipps> ifreund: river-tag-overlay seems really nice!! Now I wanna learn more and make something like that :)
<pkap> There is another bar for river I think
<pkap> This one: https://git.sr.ht/~andreafeletto/levee But i never tried it
<ifreund> looks to be somewhat unmaintained :/
<ifreund> neither waybar nor yambar are particularly simple/minimal, though yambar is certainly simpler than waybar
<chipps> Can anyone give me a roadmap to how to make something like river-tag-overlay? I have some time, and I want to make some sort of overlay which dis
<chipps> displays* time in a corner
<pkap> What do you guys mean by simple?
<pkap> chipps: I made a overlay-like program a few days ago. I started with this https://git.sr.ht/~novakane/agertu as a base.
<chipps> pkap: I meant simple as in a simple architecture. I remember loving lemonbar, which you sort of pipe text into, to use it.
<chipps> I don't have anything against more sophisticated options like waybar, but it's just _too_ sophisticated for my use case
<ifreund> chipps: you'll want to look into the the wlr-layer-shell protocol for displaying desktop shell components like bars
<pkap> Ah yeah I understand.
<ifreund> reading river-tag-overlay's code would be a good starting point probably
<ifreund> chipps: this might be an even better example program: https://git.sr.ht/~leon_plickat/wlclock
<ifreund> someone should totally make a lemonbar port for wayland
<chipps> a man can dream...
<ifreund> I'll probably end up writing something like that eventually if nobody else has gotten to it by the time I've knocked out the higher priority things on my todo list
<ifreund> funnily enough the author of lemonbar has been a quite prolific contributor to Zig
* chipps has a question
<pkap> ifreund: You should wait then for him to port lemonbar to wayland and zig probably :D
<chipps> Is it possible to highlight a window when it gains focus for a few milliseconds? that would mean I don't have to use borders anymore
<ifreund> chipps: nope, not currently. That and many other things will be made possible by my future plans but those will take a while to be realized
<chipps> ifreund: Then I want to he
<chipps> help
<chipps> if possible
<chipps> I have some experience in C, but willing to learn other stuff
<ifreund> right now things are mostly blocked on large scale design questions not implementation, feel free to hack away at the river codebase to get familiar with things though
<ifreund> you could pretty easily implement what you want in river itself, but I wouldn't merge that upstream
<ifreund> and river is written in Zig of course, but Zig should be pretty quick to pick up coming from C
<chipps> okay so I am looking at the code for river-tag-overlay, but I'm a bit confused regarding the whole structure. Is this a good place to ask questions about it?
<ifreund> sure
<novakane> FWIW I did add a clock to agertu with zig-datetime just for testing on day, and it's fairly easy to add with fcft and wlr-layer-shell already implemented
<novakane> s/on day/one day
<chipps> so I was
<ifreund> nice, does the clock pop up with the tag overlay as well?
<ifreund> novakane: what does the name 'agertu' mean by the way?
<chipps> looking at the Makefile, and I see that we generate a bunch of c code using something called 'wayland-scanner'. I looked up the definition of 'wayland-scanner' on the wayland protocol doc pages, and there are a lot of things that I don't understand. How can I make sense of it?
<novakane> it does, though I removed the code because it was when I had some problem with the timeout so I wanted to make it work but I'll probably add back
<pkap> this is a good start for the wayland-scanner stuff, chipps
<novakane> ifreund: it kinda mean 'popup' or more 'appear quickly' in Basque
<ifreund> pkap: wayland-scanner generates code based on the .xml files specifying the protocol
<chipps> ifreund, pkap: thanks for the pointer. I will try to go through it myself
<ifreund> for zig I wrote an alternative scanner that generates zig code with a bit more type safety: https://github.com/ifreund/zig-wayland
mon_aaraj has quit [Ping timeout: 268 seconds]
<ifreund> novakane: ah neat
mon_aaraj has joined #river
<novakane> most of my projects use a basic english word translated to basque as a name tbh :D
<novakane> works great to be original lol
<pkap> novakane: Is it pronounced in a french-like way?
<novakane> pkap: yeah
<pkap> Ok cool, I adapt the pronounciation in head :)
<novakane> no worries I can't check if you missprononce it in your head :P
<novakane> s/missprononce/mispronounce
<pkap> Ah I think it's to late for me. I tried it, but I'm already accustomed to the german-like way I first read in my mind '=D
<pkap> Speaking about naming: Is there a reason for the name 'river', ifreund?
<ifreund> I like rivers, spent a few months working as a canoe guide on the lower Mississippi a while back
<ifreund> also rivers are dynamic
<ifreund> and rivers flow like workflow
<ifreund> you can come up with your own reasons too though of course
<leon-p> chipps: if you have questions regarding the codebase of wlclock or river-tag-overlay, you can ask me. They are both about 75% the same, the difference is mainly some glue-logic and how I chose to structure the code based on my experience with Wayland at the time of writing. Oh, and one uses cairo, the other pixman, which also introduces slight differences, but nothing major
<leon-p> although you better ask tomorrow, today is getting a bit late for me
<novakane> ugly but really quick to show with like 5 lines of code in agertu https://0x0.st/or2r.png
mon_aaraj has quit [Ping timeout: 268 seconds]
mon_aaraj has joined #river
<pkap> ifreund: I see :)
<novakane> hmm openning the screenshot I see imv segfault with the new wayland version and I can't build the new release with a void template for whatever reason
<ifreund> another broken client exposed by wl_output version 4 I assume xD
<novakane> yup :/
<ifreund> (not that I didn't learn the hard way about that myself)
<novakane> I didn't have this error in my projects \o/
<novakane> wtf now opening the imv template cause a segfault in kakoune???
elshize has quit [Quit: WeeChat 3.3]
elshize has joined #river
pkap has quit [Ping timeout: 256 seconds]
mon_aaraj has quit [Ping timeout: 256 seconds]
mon_aaraj has joined #river
<chipps> leon-p: sure, thanks
mon_aaraj has quit [Ping timeout: 260 seconds]
<Nulo> How do y'all run river to capture output?
mon_aaraj has joined #river
<Nulo> And debug logs
<mon_aaraj> Hello! Sorry for the late response but I just rembered my question here. Thank you very much leon-p and sanekdy for helping me!
<mon_aaraj> after looking at ristate, it looks like it does have the feature i want - and sorry for asking so much, but just another thing - on BSPWM i have this feature i can do to windows called "monocole" mode which just almost full-screens a window except it shows the bar (disabling gaps) and allows to quickly switch between full-screened windows, is there an equivalent on river?
<novakane> Nulo: `river -log-level debug >river.log 2>&1`
<Nulo> Tanks
<Nulo> Is there a way to get debugish builds with release-safe? I often stumble upon things that I don't know how to reproduce
<novakane> mon_aaraj: yes but not builtin in river, you need to use an other layout generator https://github.com/riverwm/river/wiki/Community-Layouts
<novakane> in rivercarro it is called monocle too and in stacktile it's full IIRC
<novakane> Nulo: well you still can use the log-level flag but it not gonna be as good than with a debug build
<mon_aaraj> Ah, thank you so much!
<Nulo> novakane: okay, I can't recall if core dumps gave proper backtraces when I got crashes last time
<chipps> I was
<elshize> mon_aaraj: afaik stacktile doesn't have explicit monocle, but it can be simulated with all_primary command (see man pages)
<mon_aaraj> I'm a big fan of lisp so I'm planning to use kile or rivercarro if possible, haha
<chipps> what's the file /dev/dri/renderXXX that I have here? I know this isn't relevant to river probably, but I figured you guys would know
<Nulo> I use 'all_primary toggle' in stacktile for something that's kind of like monocle view
mon_aaraj has quit [Ping timeout: 240 seconds]
<novakane> chipps: I think it's a driver for hardware acceleration but don't quote me on that
<chipps> novakane: I think everything in /dev/dri/ is created by the gpu drivers, I'm just curious as to those things are. The kernel documentation says it's a "render node", but wth is that?
<novakane> chipps: AFAIK, each one is a different device that can render different thing, but that kinda all my knowledge about this