You are not logged in.
Mouse pointer disappears during freeze. It is basically frozen display. Audio keeps playing, I am able to switch tty, and start another wayland compositor.
I thought about RAM as after freeze I ran htop on another tty to see that RAM usage was around 90%. However as I am able to use another tty and load another compositor, RAM may not be issue or during that time RAM may have been freed, so I am not sure. Also I have not noticed such freezes using hikari or cwm, where weaver is still my main browser.
Where do I put that code, in tabby config ?
Arch is home!
https://github.com/Docbroke
Online
Yes, there's a line a lot like that already commented out in the default config (I just added seconds to the date format and switched the sleep to 1s rather than 60).
But if you can switch tty's, tabby is still responding. There is no system-wide mechanism to change to another tty from within a wayland compositor - this wasn't possible to do until I made a "chvt" action in tabby which is bound in the default config to Alt+F1/F2/F3. Without these bindings being functional, you'd not be able to change vts at all.
Last edited by Trilby (2021-09-11 16:32:06)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Yes indeed, as I have mentioned in previous post, display is frozen, but tabby works. I can kill browser or mpv using tabby shortcuts ( confirmed by stopped audio ).
Arch is home!
https://github.com/Docbroke
Online
I took some inspiration and focused on the bar, so now I am able to add date/time/battery and volume with below code
status right while :; do echo "$(date '+{bg=5}{fg=8} D:%d/%m/%Y {bg=4} T:%H:%M %S '; echo {bg=2} B:$(< /sys/class/power_supply/BAT0/capacity) {bg=3} V:$(pulsemixer --get-volume | awk '{print $1}') )" | xargs; sleep 5; done
but, if I add backlight brightness, as below, code fails in tabby but works in terminal, so what is wrong ?
status right while :; do echo "$(date '+{bg=4}{fg=8} T:%H:%M %S '; echo {bg=2} B:$(< /sys/class/power_supply/BAT0/capacity); echo {bg=3} V:$(pulsemixer --get-volume | awk '{print $1}'); echo {bg=5} B:$(< /sys/class/backlight/intel_backlight/brightness))" | xargs; sleep 5; done
EDIT: I just moved all this out of the tabby config, as per example you have shown on tabby webpage, and it works. Still I don't understand why it doesn't work from within tabby config.
Last edited by Docbroke (2021-09-12 11:25:28)
Arch is home!
https://github.com/Docbroke
Online
I found something interesting in journal, when there is input failure in tabby, along with screen hang
Sep 12 12:41:06 asusarch dbus-daemon[841]: [session uid=1000 pid=841] Activating service name='org.freedesktop.portal.IBus' requested by ':1.295' (uid=1000 pid=29050 com
m="ibus-daemon -drx ")
Sep 12 12:41:07 asusarch org.freedesktop.portal.IBus[29075]: Not connected to the ibus bus
Sep 12 12:41:07 asusarch dbus-daemon[841]: [session uid=1000 pid=841] Activated service 'org.freedesktop.portal.IBus' failed: Process org.freedesktop.portal.IBus exited
with status 1
EDIT: I have seen another input failure with similar lines in journal again, so now I have removed ibus from startup to see if this stops failures.
Last edited by Docbroke (2021-09-12 12:42:45)
Arch is home!
https://github.com/Docbroke
Online
Ah, the reason that status line likely failed in the config is due to a not-yet-documented limit on the acceptable line length in the config. No other config line should get even close to that long*, and perhaps I wrongly assumed that anyone using longer scripts for a status input would put it in an external script file. This should / will be documented in the near future.
(*I suppose bind lines with long 'exec' parameters could get long too ...)
Thanks for tracking down a connection with ibus/dbus. I'm mostly ignorant of dbus, and completely ignorant about ibus - it's possible that part of the input configuration bits that I've not yet gotten to in Tabby would relate to this (given that ibus is an input .... thing). Though it seems unlikely to me that this could result in a rendering freeze while still allowing Tabby to accept input.
Testing without ibus/dbus would be great, as would the check for seconds ticking in the status bar during a freeze.
Last edited by Trilby (2021-09-12 12:57:48)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Some parts of tabby config doesn't seem to work.
When I change font in tabby config, still fonts in tabby bar remains same. Similarly changing 1 3 to 2 4 in tiling algo doesn't seem to have any effect.
EDIT: another screen freeze today with clock stopped at 14:08:53, there is nothing in journal but tabby log has some interesting entries, full log at https://termbin.com/2bhi
2021-09-14T14:08:19: debug: src/settings.cpp (74) Settings::cookieFilter: "https://api.github.com/_private/browser/stats"
00:13:04.836 [ERROR] [backend/drm/atomic.c:35] connector eDP-1: Atomic commit failed (pageflip): Device or resource busy
00:13:39.190 [INFO] [libseat] [libseat/backend/logind.c:316] Disabling seat
00:13:39.692 [INFO] [backend/drm/backend.c:134] DRM fd paused
The sink doesn't exit
00:13:40.272 [INFO] [libseat] [libseat/backend/logind.c:313] Enabling seat
00:13:40.733 [INFO] [backend/drm/backend.c:116] DRM fd resumed
NOTE: screen recovered after changing tty ( I moved to tty2, copied log, returned to tty ). I have noticed that everytime screen freezes, tabby recovers after changing tty.
EDIT2: Another unexpected finding.
when display is in tiling mode, mouse input doesn't work in weaver window, but it works fine if mode is changed to monocle. This seems to affect weaver only, terminator/telegram has no such problem.
Last edited by Docbroke (2021-09-14 09:02:22)
Arch is home!
https://github.com/Docbroke
Online
Thanks for the logs - those are all messages from wlroots that I'll have to look into to understand. EDIT: can you describe your hardware: do you have multiple monitors? Are any monitors "high" resolution (or just what are the default resolutions)?
I'm not able to replicate issues with changing font or tiling. While you can change the values in /usr/share/tabby/tiling.algo, it'd be best to copy that file elsewhere (e.g., to ~/.config/tabby/) and make modifications to your own copy - and point the config file to the copy. But I tried both approaches changing the "1 3" on the second line of numbers to "2 4" resulted in the two-window mode being a top/bottom split. This worked when I modified /usr/share/tabby/tiling.algo and when I copied it to ~/.config/tabby/my.algo, changed it again, and listed that full path and file in my config.
This does, however, require a restart of tabby (there is no live reconfigure).
I'm also not able to replicate any issues with mouse input.
What version do you have? If not at least 1.2r66 please update and double check the mouse input at config issues.
edit: wait, maybe I can replicate the font issue. Font size is read from the config, but font name / family seems to not be applied. Is that what you are seeing too?
edit 2: the font issue should be fixed. There was an issue in reading the font string from the config file so the first character of the font name got chomped off - this would result in font-config being given gibberish for which it fell back on it's default font (DejaVu Sans on my system).
Last edited by Trilby (2021-09-14 13:15:06)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
I updated tabby. Now font issue is solved. I am now looking to try some unicode symbols in bar using nerd fonts.
EDIT: If I try to use unicode symbols in tabbybar, they appear as squares, ( I tried using nerd font). Can I use font name with spaces as it is in tabby config or I have to escape space or quote font names ?
My system is asus vivobook14 with core i3 (10th gen), i915 graphics, 1920x1080 monitor.
One update about mouse input issues is, when I use tiling mode with two window, mouse doesn't work in first window. It is not specific to weaver. Whichever window is in first position, mouse doesn't work there. However mouse works if I am having 3 window in tiling mode or I am using monocle mode.
Last edited by Docbroke (2021-09-14 14:14:58)
Arch is home!
https://github.com/Docbroke
Online
Ah, thanks for the details on the mouse input issue. It turns out I *can* replicate that and I know the cause now. I made recent changes to get mouse input working properly for "floating" dialogs, and the present issue would be a result of those changes - apparently I missed a bit in that update. I should have that working shortly.
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Please see my edit regarding fonts in above post too, you may have missed it as we posted almost at same time.
Arch is home!
https://github.com/Docbroke
Online
The mouse input on the first client should be fixed: thanks for the good descriptions of the issues - that really helps pin them down quickly.
For the new font questions, spaces are fine and should not be escaped. The whole line from the config file after the word "font" is passed as-is to fontconfig. So you should be able to test what *should* result by taking this string (the line from your config minus "font ") and passing it to `fc-match`.
I've never used nerd-font. Can you give me steps to replicate the issue? Is this the ttf-nerd-font-symbols package from community? What / which symbols are you putting in the status and how (do you have a simple script that outputs them)?
EDIT: I gather that's not the font as it *only* has symbols. That font doesn't provide "normal" latin glyphs. So if that is specified as the font in your config, you *might* get the symbols it provides, but everything else will show up as sqaures. Currently there is no way to alternate between fonts for different glyphs in the bar - a single font is used throughout.
Last edited by Trilby (2021-09-14 14:32:50)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Here is the script, I have used only one unicode symbol for battery (to test)
#!/bin/sh
while :; do
battery=$(< /sys/class/power_supply/BAT0/capacity)
# volume=$(pulsemixer --get-volume | awk '{print $1}')
volume=$(pamixer --get-volume)
memory=$(awk '/MemAvailable/ { printf "%.1f \n", $2/1024/1024 }' /proc/meminfo)
# cpu=$(awk '/cpu MHz/ { printf "%.f ", $4 }' /proc/cpuinfo)
base=/sys/class/backlight/intel_backlight
cur=$(<$base/brightness)
max=$(<$base/max_brightness)
per=$(( $cur*100/$max ))
date "+{bg=1}{fg=8} %d/%m/%Y {bg=5} M:${memory}G {bg=4} S:$per% {bg=3} V:$volume% {bg=2} :$battery% {bg=1} %H:%M %S"
# date "+{bg=1}{fg=8} %d/%m/%Y {bg=5} M:${memory}G {bg=4} S:$per% {bg=3} V:$volume% {bg=2} B:$battery% {bg=1} %H:%M %S"
sleep 1
done
This is output I am getting
{bg=1}{fg=8} 14/09/2021 {bg=5} M:1.8 G {bg=4} S:12% {bg=3} V:50% {bg=2} :100% {bg=1} 19:58 05
Font I am using is nerd patched notosansmono, you can get from https://github.com/ryanoasis/nerd-fonts … o/complete
Is this normal
[ins]└───▶ fc-match "NotoSansMono Nerd Font Medium"
verdana.ttf: "Verdana" "Regular"
I am not sure what is happening here, is notosansmono is replaced by verdana before display ?
EDIT: The point of nerd patched font is to get all regulay latin glyphs along with all unicode symbols, like all symbols of font-awesome and few more in single font.
Last edited by Docbroke (2021-09-14 14:41:47)
Arch is home!
https://github.com/Docbroke
Online
Is this normal
[ins]└───▶ fc-match "NotoSansMono Nerd Font Medium" verdana.ttf: "Verdana" "Regular"
I am not sure what is happening here, is notosansmono is replaced by verdana before display ?
Yes, when you ask fontcontig for "NotoSansMono Nerd Font Medium" it will provide verdana. So your status bar text would all be drawn using verdana. I am not well suited to help understand fonctonfig - but I can say that Tabby will just use whatever font(s) fontconfig provides for the given font string. You can try checking what that font string should be with variants of the following:
fc-match -a | grep -i nerd
How did you install that font? Are you able to use it in other programs that use fontconfig?
Last edited by Trilby (2021-09-14 14:46:54)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Alright, I got it, I need to use "NotoSansMono Nerd Font", without specifying medium or regular. (had to do few trials using fc-match). Now I can see battery symbol on tabby bar.
I installed font by simply copying font to /usr/share/fonts from link I shared above.
Arch is home!
https://github.com/Docbroke
Online
Ah, yes, if "Regular" is the variant and not part of the font name, it goes after a colon (though that is the default anyways). So if you ever wanted to switch to another variant you'd use "NotoSansMono Nerd Font:Thin:size=..."
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Now my tabbybar looks beautiful, and I would like to share a screenshot, but how do I take it ? grim/slurp/wf-recorder etc. doesn't seem to work.
EDIT: tiling algo works now. I used $HOME/.config/tabby/tiling.algo in pathname, but it was not read, so now I have updated to .config/tabby/tiling.algo which works.
Last edited by Docbroke (2021-09-14 17:26:13)
Arch is home!
https://github.com/Docbroke
Online
Screenshot software (at least grim) requires two additional protocols that I had not implemented yet. One is trivial - and I just added it and pushed the update. But on it's own that one doesn't really do anything (though it changes the error message you'll get from grim). The other protocol is for managing output layouts which I had planned for post v1.6 goals. As I've learned more about what's required though, I think I'll be swapping multimonitor (and output layout) support with LayerShell ... in which case, this output layout management is the next new-feature goal on my todo list.
As for the path for the tiling file, $HOME would not work as the config file is not run through a shell interpreter (`exec` line arguments are explicitly passed to a shell though, so environment variables can be used there). The path to the tiling file should be a full path. Using .config/tabby/... will work, but only so long as your home directory is the current working directory that tabby is launched from. That should ideally be /home/<username>/.config/tabby/...
EDIT: I've added the other protocol needed by grim and similar screenshot protocols. This has also enabled wl-randr to *almost* work with Tabby - there are a few details to polish up for that, but that's likely how all monitor configuration will be done (rather than having options in the config file for it). But while grim is working, slurp requires the LayerShell protocol, so that will not run.
Last edited by Trilby (2021-09-14 20:24:34)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
? mechanism to maximize/change size of a floating window
Some floating windows are of inappropriate size, esp. when I open a image in telegram it opens in a floating window which displays image in even smaller size compared to thumbnail in main window.
Arch is home!
https://github.com/Docbroke
Online
Do these floating windows have an entry in the list of titles in the bar? If so, they are top-level surfaces (windows) with a parent surface assigned and Tabby can override their size and position. If not, they are purely client controlled.
In the former case, mechanisms for the user to change their size would be a maybe - but not for a while.
It's odd that such a surface is not a good size as Tabby doesn't touch the size in any way - that's entirely up to the client. So if a telegram popup is too small, telegram made it that small. Is there any way to configure that on the client (telegram) end? If the telegram client uses one of the major toolkits, there are a range of environment variables that might impact the size (DPI related settings perhaps).
Last edited by Trilby (2021-09-15 12:48:39)
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
wf-recorder and grim works. thanks.
telegram window appears in tabbybar as "media viewer", so there is hope !
Arch is home!
https://github.com/Docbroke
Online
I'm curious whether the same window is initially small in other wayland compositors. Most (if not all) others would provide a means to resize the window - but do you need to, or does it start at a larger size?
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
That window starts small in other compositors also, but it can be maximized/fullscreened with single keypress.
Arch is home!
https://github.com/Docbroke
Online
Online
Another error log when tabby froze https://termbin.com/l4cr
Arch is home!
https://github.com/Docbroke
Online