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/
mon_aaraj has quit [Ping timeout: 252 seconds]
mon_aaraj has joined #river
gbrlsnchs has quit [Quit: gbrlsnchs]
talismanick has quit [Ping timeout: 245 seconds]
hwfcnewjencwqe has joined #river
hwfcnewjencwqe has quit [Client Quit]
talismanick has joined #river
<leon-p> is the CI broken again?
<leon-p> false alarm, forgot to commit recent changed before pushing
notzmv has joined #river
waleee has quit [Ping timeout: 260 seconds]
eShaev9z_ has joined #river
eShaev9z has quit [Ping timeout: 272 seconds]
tsraoien has quit [Ping timeout: 252 seconds]
<leon-p> 654 is ready for review now
aryak has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
aryak has joined #river
aryak has quit [Quit: ZNC 1.8.2+deb2+b1 - https://znc.in]
aryak has joined #river
Pound_Hash has joined #river
Pound_Hash has quit [Ping timeout: 244 seconds]
Pound_Hash has joined #river
<Pound_Hash> The `spawn` command would help
<leon-p> help with what? I think there is some context missing here :D
<leon-p> (or is the matrix bridge messed up again?)
<Pound_Hash> I was being sarcastic
<Pound_Hash> I forgot to use the `spawn` command
<Pound_Hash> My `XF86MonBrightnessDown` mapping isn't working
<Pound_Hash> If I run the command `brightnessctl --min-value=500 set 500-` in the terminal, it works
<Pound_Hash> I remember, it's `none`
<Pound_Hash> The docs say, "There are two special modes: "normal"
<Pound_Hash> and "locked".
<Pound_Hash> Normal mode is a special mode?
<leon-p> yep, it's the default
<leon-p> however the only special thing about it is that it is created and entered automatically
<Pound_Hash> If something is special, then it's not normal, normally?
<leon-p> it's normal in one context and special in another
<Pound_Hash> I'm confused how something special can be both special and normal
<Pound_Hash> This project is great, by the way!
<Pound_Hash> I love it
<Pound_Hash> Everything is neat and clean
<leon-p> it's normal in the sense that it is the mode that is entered by default and that you will use 99% of the time (the name is taken from vim / kakoune). It's special in that unlike modes you declare yourself, river creates it on its own.
<Pound_Hash> oh
<Pound_Hash> That's a good explanation
<Pound_Hash> Thanks!
<Pound_Hash> But, to be honest, I would like to offer an emendation
<leon-p> sure
<Pound_Hash> Due to the oxymoron of a normal special object
<Pound_Hash> It's like a square circle
<Pound_Hash> Something logicians toy with
<Pound_Hash> Anyhow, I love this thing. Thanks to the team!
<leon-p> glad you like it
<Pound_Hash> I'll submit some PRs about the docs
<Pound_Hash> Maybe you'll agree with my suggestions
<leon-p> names aren't up to me, you'll have to ask ifreund about that :D
<Pound_Hash> Names can stay the same
<Pound_Hash> Can simply rephrase
<Pound_Hash> I understand `normal` now; I use kakoune
<Pound_Hash> And I know vim
<Pound_Hash> Can you see the docs now? (riverctl)
<Pound_Hash> It says, "Mappings are modal in river. Each mapping is associated with a mode and is only active while in that mode. There are two special modes: "normal""
<leon-p> Sure, or "two modes are created automatically by river" or something like that
<Pound_Hash> The concept of modality is first introduced with "modal", then followed with two mentions of "mode"
<Pound_Hash> So, why then introduce the idea that there are special modes?
<Pound_Hash> Why not just refer to them as just "modes" as before?
<Pound_Hash> A normal and locked mode.
<leon-p> You'll have to ask the person who wrote that part of the docs :)
<Pound_Hash> Saying that they're special makes it contrast with what was already said, which wasn't that they are special.
<n0r> Pound_Hash: Did you get your brightness mapping working?
<Pound_Hash> yeah, thanks
<Pound_Hash> I'm just staring at my screen thinking
<Pound_Hash> Because I'm a madman
<Pound_Hash> I went from windows to river on linux, doing everything at the command line, within less than year
<Pound_Hash> So much of a better way to use a computer
<Pound_Hash> And it runs the gtk and qt without those abominable close and minimize buttons
<Pound_Hash> Maximize
<leon-p> careful, in another six months you'll be knee-deep in your init configs, wondering if computers might have been a mistake
<Pound_Hash> Good lord
<Pound_Hash> No client side decorations. It feels so refreshing.
<Pound_Hash> I just want to bask in this neatness.
<Pound_Hash> I won't ever learn too much programming. I
<Pound_Hash> I'm a reader
<Pound_Hash> I want to write
<Pound_Hash> So, I often help with documentation. I can do that.
<n0r> 95% of the time, my only open apps are foot and qutebrowser (the latter stripped of tabbar and status bar), whenever I go back from that to a machine full of taskbars, titlebars and menubars, everything feels horribly crammed (is that the right word?)
<Pound_Hash> Sure
<leon-p> menu-bars are evil. worst UI mistake ever that somehow has been cargo-culted literally from the 80s all the way to now.
<Pound_Hash> Or, claustrophobic
<Pound_Hash> I use qute also
<Pound_Hash> And foot
<Pound_Hash> This is badass
<Pound_Hash> I was using sway before. That was my first tiling wm/compositor thingy
<Pound_Hash> Thingy is a terrible word
<Pound_Hash> Anyhow, this way of tiling is better I think
<Pound_Hash> I never used dwm or something else
mon_aaraj has quit [Ping timeout: 268 seconds]
mon_aaraj has joined #river
<Pound_Hash> Moving and snapping windows aren't such common commands, right?
<Pound_Hash> I feel I only need to resize, if anything.
<Pound_Hash> And fullscreen.
<Pound_Hash> By "resize" I mean, the main-ratio
<leon-p> they are mostly meant for floating views. snap is practical to just get a floating view out of the way
<Pound_Hash> Thanks
<Pound_Hash> The setting `set-view-tags` says, "Assign the currently focused view the tags corresponding to the set bits of tags."
<Pound_Hash> The word "view", this is a window?
<Pound_Hash> Must be
<Pound_Hash> Sweet
<leon-p> yep
<leon-p> view and toplevel are wayland-speak for what well-adjusted people probably call window
<Pound_Hash> Can I tag windows alphabetically?
<Pound_Hash> Let's leave those well-adjusted people alone. We have other things to do.
<Pound_Hash> Sorry, I mean, "views"
<leon-p> depends on what you mean by "alphabetically"
<Pound_Hash> a-z
<Pound_Hash> [a-z] regex
<Pound_Hash> I had to brag a bit there
<Pound_Hash> Look everyone, I know regex
<leon-p> well, views aren't tagged by the numbers you use to access them either. Tags are bit-sets. The numbers are just labels, you can easiely exchange them for anything else.
<Pound_Hash> The bit-set part is a bit over my head
<Pound_Hash> I know I know, bits
<Pound_Hash> But, it takes take getting used to think about this stuff
<Pound_Hash> takes time
<Pound_Hash> Okay, so I'll figure how to use letters than.
<leon-p> luckily I have an article on my blog where tags are explained: https://leon_plickat.srht.site/blog/setting-up-river-010/article.html
<Pound_Hash> I can figure it out myself, I think
<Pound_Hash> And all I had to do was Ctrl+Shift+u
<Pound_Hash> There it is
<Pound_Hash> I'll have a read on that tomorrow, when I'm sober
<Pound_Hash> Thansk
<Pound_Hash> I guess my main goal has been satisfied
<Pound_Hash> I can easily switch views among all tags.
<Pound_Hash> With sway, I had to run a seperate app. Now I don't think I need one.
<Pound_Hash> "every proprietary byte must be purged"
<Pound_Hash> Okay, but I have to get a sandwich first
<Pound_Hash> I should probably learn how to write a shell script as well
Pound_Hash has quit [Ping timeout: 255 seconds]
icp has joined #river
<n0r> What "is" fullscreen actually? It something different then a "maximized" (in floating terms) window without borders and gaps? I mean, I notice some differences (transparancy doesn't work, can't focus windows showing them above the fullscreen one). Fullscreen sticks out as a wierd exception to how windows usually behave.
<leon-p> that's because it definitely is an exception. Basically it means only rendering the surfaces of one specific toplevel over a black background as per spec. Clients are also told to resize their views to the entire available space on the output and that they are fullscreened.
<n0r> At least it's been a lot less annoying since I found out I can set qb to not fullscreen the window but just the website within the normal window size.
Pound_Hash has joined #river
<Pound_Hash> I conclude then that I can write scripts.
<Pound_Hash> How do I autostart a program?
<Pound_Hash> Just write it on it's own line?
<Pound_Hash> Use `exec`?
<icp> I do "riverctl spawn ...."
<Pound_Hash> Oh, I see
<Pound_Hash> Thanks
<Pound_Hash> How do we identify app_ids or titles of running apps?
<icp> If you haven't already, I recommend reading https://leon_plickat.srht.site/blog/setting-up-river-010/article.html
<icp> It answered many of my questions I had during the initial setting up phase
<Pound_Hash> I see
<Pound_Hash> It says that goal is not to become a Windows 95 clone
<Pound_Hash> I guess I'll have to go back to Windows then
snakedye has quit [Ping timeout: 245 seconds]
icp has quit [Quit: Client closed]
<Pound_Hash> That article seems to have everything I need.
Pound_Hash has quit [Quit: Pound_Hash]
mon_aaraj has quit [Ping timeout: 245 seconds]
mon_aaraj has joined #river
talismanick has quit [Ping timeout: 272 seconds]
snakedye has joined #river
<n0r> The article says "Swapping is disabled for floating views ... because the action would not have any visible effect on them." However, I can indeed swap floating views. The effect is not immediatly visible, since focused floating views are always on top, but when switching focus, there is a visible effect in the order the unfocused views are shown on top of each other.
polykernel[m] has quit [Quit: You have been kicked for being idle]
notzmv has quit [Ping timeout: 272 seconds]
fhiquwhdiuqwh has joined #river
notzmv has joined #river
fhiquwhdiuqwh has quit [Quit: Client closed]
<leon-p> n0r: there is a difference between floating views and "technically tiled but right now floating because no layout generator is running" views
<n0r> Does this mean when I have no layout generator but run "riverctl toggle-float" something does still change? Might explain odd behaviour I had with a few views...
<leon-p> pretty sure toggle-float is disabled when no generator is running
<n0r> Hm, ok, let me put it this way: Is there a difference between windows which would (not) be spawned in tiling if there was a layout generator?
<n0r> My example is hyperrogue which oddly always is above all other windows even when unfocused.
<leon-p> can't really remember the details, it's been a while.
mon_aaraj has quit [Ping timeout: 245 seconds]
mon_aaraj has joined #river
ashiucwdhchqwdc has joined #river
ashiucwdhchqwdc has quit [Quit: Client closed]
ashiucwdhchqwdc has joined #river
ashiucwdhchqwdc has quit [Client Quit]
user26 has joined #river
<user26> How can i have two or more scratchpad tags? If i follow the instructions on the wiki i end up with a single tag where all scratchpad windows reside
<leon-p> the scratchpad wiki entry has comments explaining how it works. Should be easy to follow those to setup an additional scratch tag
<leon-p> basically, just do the same thing again, just choose a different tag and different keybind
<leon-p> and add it to the mask as well
mon_aaraj has quit [Ping timeout: 244 seconds]
mon_aaraj has joined #river
<user26> I tried doing so, i can't understand what i'm doing wrong
<leon-p> show the code, maybe someone else sees it
<user26> scratch_term_tag=$((1 << 20 + 1 ))
<user26> riverctl map normal Super+Alt T toggle-focused-tags ${scratch_term_tag}
<user26> riverctl map normal Super+Alt+Shift T set-views-tags ${scratch_term_tag}
<user26> # Set spawn tagmask to ensure new windows don't have the scratchpad tag unless
<user26> # explicitly set.
<user26> all_but_scratch_tag=$(( ((1 << 32) - 1) ^ $scratch_tag $scratch_term_tag))
<user26> riverctl spawn-tagmask ${all_but_scratch_tag}
<n0r> user26: not 20 + 1, just 21
<user26> Sorry about the typo in set-views-tags, should be view and not views
user26 has quit [Quit: Client closed]
user26 has joined #river
<user26> Just found out that i needed another "^" between $scratch_tag and $scratch_term_tag in spawn-tagmask argument. Now it works! Sorry for the dumb question
<leon-p> it's ok, we all miss the small things sometimes
user26 has quit [Quit: Client closed]
mon_aaraj has quit [Ping timeout: 268 seconds]
mon_aaraj has joined #river
gbrlsnchs has joined #river
Guest5935 has joined #river
Guest5935 has quit [Client Quit]
simejo has joined #river
simejo has quit [Client Quit]
gbrlsnchs has quit [Remote host closed the connection]
gbrlsnchs has joined #river
cabal704 has joined #river
cabal704 has quit [Quit: WeeChat 3.5]
aryak has quit [Ping timeout: 245 seconds]
gbrlsnchs has quit [Quit: gbrlsnchs]
gbrlsnchs has joined #river
gbrlsnchs has quit [Client Quit]
gbrlsnchs has joined #river
gbrlsnchs has quit [Client Quit]
gbrlsnchs has joined #river
gbrlsnchs has quit [Client Quit]
mon_aaraj has quit [Ping timeout: 245 seconds]
gbrlsnchs has joined #river
cabal704 has joined #river
gbrlsnchs has quit [Client Quit]
gbrlsnchs_ has joined #river
mon_aaraj has joined #river
gbrlsnchs_ has quit [Client Quit]
gbrlsnchs has joined #river
snakedye has quit [Ping timeout: 272 seconds]
snakedye has joined #river
cabal704 has quit [Quit: WeeChat 3.5]
gbrlsnchs has quit [Quit: nyaa~]
gbrlsnchs has joined #river
gbrlsnchs has quit [Client Quit]
gbrlsnchs has joined #river
gbrlsnchs has quit [Quit: nyaa~]
gbrlsnchs has joined #river
gbrlsnchs has quit [Quit: nyaa~]
mon_aaraj has quit [Ping timeout: 245 seconds]
mon_aaraj has joined #river
snakedye has quit [Ping timeout: 272 seconds]
snakedye has joined #river
mon_aaraj has quit [Ping timeout: 240 seconds]
mon_aaraj has joined #river
snakedye has quit [Read error: Connection reset by peer]
snakedye has joined #river
notzmv has quit [Read error: Connection reset by peer]
notzmv has joined #river
talismanick has joined #river
talismanick has quit [Ping timeout: 245 seconds]
mon_aaraj has quit [Ping timeout: 268 seconds]
mon_aaraj has joined #river
Nulo_ has joined #river
Nulo has quit [Ping timeout: 268 seconds]
Nulo_ is now known as Nulo
aryak has joined #river
snakedye has quit [Read error: Connection reset by peer]
snakedye has joined #river
tsraoien has joined #river
gbrlsnchs has joined #river
gbrlsnchs has quit [Client Quit]
gbrlsnchs has joined #river
<gbrlsnchs> hey folks, newbie question: at some point when using rivertile (I think after changing 'main-location'), I can no longer resize windows, layout is fixed either horizontally or vertically, so not dynamic anymore... how to prevent/revert this behavior?
<gbrlsnchs> doing some tests, I have two monitors, on one of them the windows are fixed, so I can't resize them, whilst on the other one I can still resize them even after messing with 'main-localtion'... am I missing something? :-(
snakedye has quit [Read error: Connection reset by peer]
snakedye has joined #river
<gbrlsnchs> ok, just found out about my issue... I think I don't quite understand main-count and what views are... the count was high thus making the layout fixed...
snakedye has quit [Read error: Connection reset by peer]
snakedye has joined #river
<ifreund> Honestly I don't think I should have included main-count as a feature in rivertile, it's not something I ever uses and usually just confuses people
<ifreund> just copied from dwm in the early days and it's stuck around since then
<gbrlsnchs> if I keep incrementing it then it will just lock resizing
<gbrlsnchs> but on the other hand I have no clue what it does, so I also don't know how to use it :-P
<gbrlsnchs> is that for purposely locking the layout if I have less windows open than the main-count?
<gbrlsnchs> I think what's most confusing is that it affects all tags in a monitor
norkki_ has quit [Remote host closed the connection]
<ifreund> it determines how many windows are in the main stack vs the secondary stack. for example here is one window in the main stack and 4 in the secondary stack: https://0x0.st/ojIJ.png
<ifreund> and the same layout with main-count incremented to 2: https://0x0.st/ojIt.png
<ifreund> which now has two windows in the main stack and 3 in the secondary stack
<ifreund> I personally don't have any use for having more than one window in the main stack however
norkki has joined #river
<gbrlsnchs> oh I see now... by stack do you literally mean the sequence of windows, be it vertical or horizontal depending on main-location?
<ifreund> yeah exactly
<ifreund> this example is with main-location left
<gbrlsnchs> I think I never opened that many windows before in order to notice the main/secondary stack thing
<gbrlsnchs> I never used dwm so I didn't even know it was a thing
<gbrlsnchs> thanks for explaining this to me, now I understand it :-P
<gbrlsnchs> does main-count only control number of windows in the main stack? and does main stack automatically pulls windows if they fit its count?
<gbrlsnchs> yep, now I think I understand it, it can be useful but is confusing for newbies like me... maybe don't remove it from rivertile but don't include it in the sample config maybe? that's where I got that from lol
<gbrlsnchs> now that I know how it works I might start using it haha x-D
<gbrlsnchs> the secret is to have a keybind to reset the count :-P
<ifreund> that's not a bad idea, I don't like how it's impossible to see what the current count is you don't have enough windows open
<gbrlsnchs> knowing about the main stack and how it is dominant helps a little to not get surprised, I wish I knew about it previously :-S
<gbrlsnchs> but since the count can go higher than the number of windows available, then a keybind to set it back to 1 helps a lot
<tleydxdy[m]> I do use main-count, but it might be good to cap it to window-1
talismanick has joined #river
snakedye has quit [Ping timeout: 252 seconds]
snakedye has joined #river
Pound_Hash has joined #river
<Pound_Hash> Hello
<Pound_Hash> I'm reading the "Setting Up River 0.1.0" article
<Pound_Hash> In the init, I've seen `exec` sometimes used and sometimes not
<Pound_Hash> How do I know if I need to use `exec`?
<Pound_Hash> For example, on `rivercarro`'s wiki, the example init ends with `exec rivercarro`
<Pound_Hash> On Sway, I have `exec gsettings set $gnome-schema gtk-theme 'Adwaita'`
<Pound_Hash> But on the aforementioned article it just has `gsettings set org.gnome.desktop.interface gtk-theme Adwaita`
<gbrlsnchs> river config is just a shell script, so it will do exactly what's described by 'man exec'
<gbrlsnchs> whilst on Sway exec is an internal Sway command for spawning a command
<Pound_Hash> Oh, okay
<gbrlsnchs> since River's config is just a shell script, you can run commands directly, like the gsettings one you mentioned
<Pound_Hash> Thanks
<Pound_Hash> Is there any reason to run a command with `riverctl spawn` instead?
<Pound_Hash> Any reason a noob like myself should be concerned about?
<gbrlsnchs> I think that's mainly for keybinds
<Pound_Hash> Okay, thanks again
<gbrlsnchs> that spawns a process and I think it attaches it to River instead of attaching it to the script process
<gbrlsnchs> not gonna line I start firefox by running 'riverctl spawn firefox' in my terminal, so it doesn't get attached to the terminal
<gbrlsnchs> in the past I used to have a wrapper Python script that detached the subprocess from whoever launched it, now I use River for that, still I don't know the consequences :-P