You are not logged in.
Hello all,
Just started using Polybar and love the config but missed the icons that would show on ibar (Using i3WM)
Was looking at polydock, got it into the binary with all the dependencies (issue lies with Wnck) from the github page but had a little trouble running it due to "work in X11 only", was fairly certain I was not using Wayland so did an echo $XDG_SESSION_TYPE and it outputs X11.
Overall pretty stumped. Why would Wnck not recognize X11?
Full Terminal Output below
[user@UserArch bin]$ polydock
(gjs:2250): Wnck-WARNING **: 23:10:49.587: libwnck is designed to work in X11 only, no valid display found
Segmentation fault (core dumped)
[user@UserArch bin]$ echo $XDG_SESSION_TYPE
x11
Last edited by Ranon (2024-03-07 05:18:20)
Offline
All dependencies listed on https://github.com/folke/polydock are present in archlinux repos. Have you tried https://aur.archlinux.org/packages/polydock ?
Welcome to archlinux forums.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
echo $DISPALY
xdpyinfo | head -n 64
xauth
Online
Thanks a bunch for the replies.
@Lone_Wolf - I installed it manually by copying the binaries right into bin folder as the git page instructs. I tried installing the paru version from the AUR but the same issue happens. Also thanks for the welcome
@Seth - I installed xorg-xdpyinfo and xorg-xauth packages on my system via pacman since I did not previously have them and here is the output:
[user@UserArch ~]$ echo $DISPLAY
:0
[user@UserArch ~]$ xdpyinfo | head -n 64
name of display: :0
version number: 11.0
vendor string: The X.Org Foundation
vendor release number: 12101008
X.Org version: 21.1.8
maximum request size: 16777212 bytes
motion buffer size: 256
bitmap unit, bit order, padding: 32, LSBFirst, 32
image byte order: LSBFirst
number of supported pixmap formats: 7
supported pixmap formats:
depth 1, bits_per_pixel 1, scanline_pad 32
depth 4, bits_per_pixel 8, scanline_pad 32
depth 8, bits_per_pixel 8, scanline_pad 32
depth 15, bits_per_pixel 16, scanline_pad 32
depth 16, bits_per_pixel 16, scanline_pad 32
depth 24, bits_per_pixel 32, scanline_pad 32
depth 32, bits_per_pixel 32, scanline_pad 32
keycode range: minimum 8, maximum 255
focus: window 0x1e00002, revert to PointerRoot
number of extensions: 31
BIG-REQUESTS
Composite
DAMAGE
DOUBLE-BUFFER
DPMS
DRI2
DRI3
GLX
Generic Event Extension
MIT-SCREEN-SAVER
MIT-SHM
NV-CONTROL
NV-GLX
Present
RANDR
RECORD
RENDER
SECURITY
SHAPE
SYNC
X-Resource
XC-MISC
XFIXES
XFree86-DGA
XFree86-VidModeExtension
XINERAMA
XINERAMA
XInputExtension
XKEYBOARD
XTEST
XVideo
default screen number: 0
number of screens: 1
screen #0:
dimensions: 5120x1440 pixels (1204x342 millimeters)
resolution: 108x107 dots per inch
depths (7): 24, 1, 4, 8, 15, 16, 32
root window id: 0x1d9
depth of root window: 24 planes
number of colormaps: minimum 1, maximum 1
default colormap: 0x20
default number of colormap cells: 256
[user@UserArch ~]$ xauth
Using authority file /home/user/.Xauthority
xauth>
xauth> ^C[user@UserArch ~]
Last edited by Ranon (2023-09-21 09:45:18)
Offline
Note that the error is actually from libwnck which is a repo package. I'd strongly suggest testing another bit of software that uses libwnck such as lxpanel or alltray. If these give similar errors, it would greatly narrow down the problem ... alternatively, if these work fine, it'd also narrow down the problem, but to a less-easy to debug space.
"UNIX is simple and coherent" - Dennis Ritchie; "GNU's Not Unix" - Richard Stallman
Offline
Please use [code][/code] tags. Edit your post in this regard.
You're certainly running X11, but polybar doesn't even seem to rely on libwnck, so it's probably one of the widgetletthingies inside => post the polybar config.
Online
@Trillby - I downloaded lxpanel via pacman and ran it in the console. There was a bunch of critical errors (since I just ran it on its own) but the bar did display on the bottom on my screen so I think it worked? I have not read up on the lxpanel so not 100% sure. As far as I could see the lxpanel errors did not include the libwnck package
Here is some of the errors from when I run polybar in the console.
[user@UserArch polybar]$ polybar
notice: Parsing config file: /home/user/.config/polybar/config.ini
notice: Listening for IPC messages (PID: 2713)
warn: No monitor specified, using "HDMI-0"
error: Invalid value for "bar/bar.separator-foreground", using default value (reason: The reference ${colors.disabled} does not exist (no fallback set))
notice: Loading module 'xworkspaces' of type 'internal/xworkspaces'
error: Invalid value for "module/xworkspaces.label-empty-foreground", using default value (reason: The reference ${colors.disabled} does not exist (no fallback set))
notice: Loading module 'xwindow' of type 'internal/xwindow'
notice: Loading module 'filesystem' of type 'internal/fs'
error: Invalid value for "module/filesystem.label-unmounted-foreground", using default value (reason: The reference ${colors.disabled} does not exist (no fallback set))
notice: Loading module 'pulseaudio' of type 'internal/pulseaudio'
notice: pulseaudio: using default sink alsa_output.usb-SteelSeries_SteelSeries_Arctis_1_Wireless-00.analog-stereo
error: Invalid value for "module/pulseaudio.label-muted-foreground", using default value (reason: The reference ${colors.disabled} does not exist (no fallback set))
notice: Loading module 'memory' of type 'internal/memory'
notice: Loading module 'cpu' of type 'internal/cpu'
notice: Loading module 'temp' of type 'internal/temperature'
notice: Loading module 'date' of type 'internal/date'
notice: Loaded 8 modules
notice: Loaded font "monkey:size=20:" (name=Monkey, offset=5, file=/usr/local/share/fonts/monkey/monkey.ttf)
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
warn: Dropping unmatched character ° (U+00b0) in ' || 17°C'
notice: Received signal(2): Interrupt
notice: Termination signal received, shutting down...
@Seth - I will use the code tags thanks for the heads up. I believe the Polybar is working at intended it is the PolyDock I am having issues with (Trying to display icons on the side) Below is the polybar config
[user@UserArch polybar]$ cat config.ini
[colors]
background = #282A2E
background-alt = #373B41
foreground = #458588
primary = #83a598
secondary = #076678
alert = #d65d0e
[bar/bar]
width = 100%
height = 24pt
radius = 6
; dpi = 96
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 3pt
border-size = 4pt
border-color = #00000000
padding-left = 0
padding-right = 1
module-margin = 1
separator = ||
separator-foreground = ${colors.disabled}
font-0 = monkey:size=20:;5
modules-left = xworkspaces xwindow
modules-right = filesystem pulseaudio memory cpu temp date
cursor-click = pointer
cursor-scroll = ns-resize
enable-ipc = true
; tray-position = right
; wm-restack = i3
; override-redirect = true
[module/xworkspaces]
type = internal/xworkspaces
label-active = %name%
label-active-background = ${colors.background-alt}
label-active-underline= ${colors.primary}
label-active-padding = 1
label-occupied = %name%
label-occupied-padding = 1
label-urgent = %name%
label-urgent-background = ${colors.alert}
label-urgent-padding = 1
label-empty = %name%
label-empty-foreground = ${colors.disabled}
label-empty-padding = 1
[module/xwindow]
type = internal/xwindow
label = %title:0:60:...%
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.disabled}
[module/pulseaudio]
type = internal/pulseaudio
format-volume-prefix = "VOL "
format-volume-prefix-foreground = ${colors.primary}
format-volume = <label-volume>
label-volume = %percentage%%
label-muted = muted
label-muted-foreground = ${colors.disabled}
[module/memory]
type = internal/memory
interval = 2
format-prefix = "RAM "
format-prefix-foreground = ${colors.primary}
label = %percentage_used:2%%
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = "CPU "
format-prefix-foreground = ${colors.primary}
label = %percentage:1%%
[module/temp]
type = internal/temperature
interval = 0.5
thermal-zone = 0
hwmon-path = /sys/class/thermal/thermal_zone0/temp
base-temperature = 15
warn-temperature = 20
format-prefex = "TEMP "
format-prefix-foreground = ${colors.primary}
; label-active = %name%
; label = %temperature-c%
[module/date]
type = internal/date
interval = 1
date = %Y-%m-%d %H:%M:%S
label = %date%
label-foreground = ${colors.primary}
[settings]
screenchange-reload = true
pseudo-transparency = true
; vim:ft=dosini
After reading the errors from the PolyBar console run I am faily sure I have just messed up some values in the config file. The part I tried to do myself was the Temperature for the CPU.
It is not showing up with the label properly and it did require some tweaking. Pretty sure the error might be there.
This is how my Polybar looks currently
https://drive.google.com/file/d/1F4KAMh … sp=sharing
Last edited by Ranon (2023-09-21 10:10:48)
Offline
I believe the Polybar is working at intended it is the PolyDock I am having issues with
Sorry, missed that.
xininfo -int # click a window
wnckprop --window 123456789 # replace the window id from the xwininfo output
Don't just run wnckprop, it grabs the X11 server, but the picker doesn't seem to work properly…
Online
@Seth - No worries, I could not find "xininfo" on the repo so I assumed you mean the xwininfo package. Installed it and got the output below
[user@UserArch ~]$ xwininfo -int
xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.
xwininfo: Window id: 12582917 "xininfo arch linux at DuckDuckGo - Brave"
Absolute upper-left X: 1284
Absolute upper-left Y: 78
Relative upper-left X: 2
Relative upper-left Y: 26
Width: 1264
Height: 1350
Depth: 32
Visual: 0x82
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0xc00002 (not installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +1284+78 -2572+78 -2572-12 +1284-12
-geometry 1264x1350+1282-10
[user@UserArch ~]$ wnckprop --window 12582917
Name: Polydock Requires X11 - Using X11 - Computer is confused / Newbie Corner / Arch Linux Forums - Brave
Icon Name: <unset>
Icons: set
On Workspace: 1 ("1")
On Screen: 0 (Window Manager: i3)
Window Type: normal window
Geometry (x, y, width, height): 1284, 78, 1264, 1350
Class Group ID: Brave-browser
Class Instance: brave-browser
XID: 12582917
PID: 1030
Session ID: <unset>
Role: browser
State: normal
Possible Actions: move, resize, shade, unshade, stick, unstick, maximize horizontally, unmaximize horizontally, maximize vertically, unmaximize vertically, change workspace, pin, unpin, minimize, unminimize, maximize, unmaximize, change fullscreen mode, close, make above, unmake above, make below, unmake below
Offline
Yes, sorry. I typo
type polydock
pacman -Qikk polydock
Online
Seth - I did not install polydock via pacman. I used the instructions on the github page to manually put it into the bin folder.
https://github.com/folke/polydock
I do not believe that Polydock is on the original repo but it is in the AUR. I tried installing the AUR version (without touching the original binary) but it gave me the same result.
I am not sure if there are two versions (Paru + .local/bin).
Here is the output anyways...
[user@UserArch ~]$ type polydock
polydock is /home/robert/.local/bin/polydock
[user@UserArch ~]$ pacman -Qikk polydock
error: package 'polydock' was not found
I could try building from source or something but I think it is the dependency that is the issue not the polydock itself?
Or I have not been able to check the polydock since the dependency is giving me issues.
Last edited by Ranon (2023-09-23 14:51:30)
Offline
I tried installing the paru version from the AUR but the same issue happens
Thing is, if you installed the AUR package but still had the precompiled binary somehwehere higher in the path present (~/.local/bin) then the AUR package was likely inert unless you invoked it w/ an absolute path?
Online
Thats a fair point, I installed polydock via paru one more time.
Did a whereis on polydock and it came back with 3 locations.
I tried each location (/usr/bin/polydock /usr/share/polydock /home/$me$/.local/bin/polydock)
and It came back with the same error on each...
(gjs:2250): Wnck-WARNING **: 23:10:49.587: libwnck is designed to work in X11 only, no valid display found
Segmentation fault (core dumped)
Last edited by Ranon (2023-09-23 15:14:29)
Offline
/usr/share/polydock is rather not a binary?
How did you "try each location"?
Did you try to just move away ~/.local/bin/polydock ?
Online
/usr/share/polydock is rather not a binary?
How did you "try each location"?
Did you try to just move away ~/.local/bin/polydock ?
I just entered the location (cd command) and put in "polydock" and as I am writing this I just realized that I am just referencing the same .local binary and feel like a dumb dumb lol.
Got any suggestion how I can test each one?
To be fair, when I did the /usr/share/polydock it did repeat a whole bunch and took a bit of time to stop the operation
Last edited by Ranon (2023-09-23 15:17:51)
Offline
killall polydock
/usr/bin/polydock
Did you try to just move away ~/.local/bin/polydock ?
Online
@Seth - Sorry I do not understand what you mean by "Did you try to just move away ~/.local/bin/polydock".
Do you mean CD out of it or is there an extra configuration to use a different place to run the program?
Also Did the commands you asked with the output below.
[user@UserArch ~]$ killall polydock
polydock: no process found
[user@UserArch ~]$ /usr/bin/polydock
starting
(gjs:2598): Wnck-WARNING **: 18:05:01.318: libwnck is designed to work in X11 only, no valid display found
/usr/bin/polydock: line 13: 2598 Segmentation fault (core dumped) gjs "$dist/polydock.js" $@
[restarting]
(gjs:2619): Wnck-WARNING **: 18:05:01.486: libwnck is designed to work in X11 only, no valid display found
/usr/bin/polydock: line 13: 2619 Segmentation fault (core dumped) gjs "$dist/polydock.js" $@
[restarting]
And it just repeats from there.
It tries to restart repeatedly in an endless loop as far as I can tell. I do not have Polydock auto starting on my i3 config since I assume that would be a bad idea until I got it fixed.
Offline
@Seth - Sorry I do not understand what you mean by "Did you try to just move away ~/.local/bin/polydock".
Do you mean CD out of it or is there an extra configuration to use a different place to run the program?
just move that file to some temporary location so it's no longer on your $PATH and can't get in the way of the system installed polydock anymore .
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
type gjs
pacman -Qikk gjs
printenv
Edit: also https://wiki.archlinux.org/title/Core_d … _core_dump
Last edited by seth (2023-09-25 13:03:21)
Online
@Seth - Here is the output of everything you requested.
[user@UserArch ~]$ type gjs
gjs is /usr/bin/gjs
[user@UserArch ~]$ pacman -Qikk gjs
Name : gjs
Version : 2:1.76.2-1
Description : Javascript Bindings for GNOME
Architecture : x86_64
URL : https://wiki.gnome.org/Projects/Gjs
Licenses : GPL
Groups : None
Provides : libgjs.so=0-64
Depends On : cairo dconf gobject-introspection-runtime js102 libsysprof-capture readline libreadline.so=8-64
Optional Deps : None
Required By : polydock
Optional For : None
Conflicts With : None
Replaces : None
Installed Size : 1458.45 KiB
Packager : Jan Alexander Steffens (heftig) <heftig@archlinux.org>
Build Date : Thu 15 Jun 2023 09:39:15 AM AWST
Install Date : Mon 18 Sep 2023 10:51:25 PM AWST
Install Reason : Explicitly installed
Install Script : No
Validated By : Signature
gjs: 29 total files, 0 altered files
[user@UserArch ~]$ printenv
SHELL=/bin/bash
WINDOWID=37748738
COLORTERM=truecolor
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
I3SOCK=/run/user/1000/i3/ipc-socket.859
DESKTOP_SESSION=i3
GTK_MODULES=canberra-gtk-module
XDG_SEAT=seat0
PWD=/home/user
XDG_SESSION_DESKTOP=i3
LOGNAME=user
XDG_SESSION_TYPE=x11
XAUTHORITY=/home/user/.Xauthority
XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/robert
MOTD_SHOWN=pam
HOME=/home/user
LANG=en_US.UTF-8
XDG_CURRENT_DESKTOP=i3
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
ALACRITTY_SOCKET=/run/user/1000/Alacritty-:0-13462.sock
XDG_SESSION_CLASS=user
TERM=alacritty
USER=user
DISPLAY=:0
SHLVL=1
XDG_VTNR=7
XDG_SESSION_ID=2
XDG_RUNTIME_DIR=/run/user/1000
DEBUGINFOD_URLS=https://debuginfod.archlinux.org
GTK3_MODULES=xapp-gtk3-module
PATH=/home/user/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/usr/lib/rustup/bin
ALACRITTY_LOG=/tmp/Alacritty-13462.log
GDMSESSION=i3
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
MAIL=/var/spool/mail/user
ALACRITTY_WINDOW_ID=37748738
_=/usr/bin/printenv
@Lone_Wolf - Thanks for the clarification. I will do that next time, I will wait for Seth's response before doing anything too crazy like moving stuff
Last edited by Ranon (2023-09-26 12:19:29)
Offline
Explicitly calling /usr/bin/polydock should™ have dealt w/ the shadowing situation.
Your gjs is intact too and there's nothing in the environment that would make anything try to use wayland.
**grrrrrumpf***
Just as a sanity check
type gjs
should be /usr/bin/gjs and then we'll have to
strace -o /tmp/polydock.strace -f -tt /usr/bin/polydock
Post the resulting /tmp/polydock.strace - the only thing I can still come up with is that there's some bogus Wnck-3.0.gir in the way
Online
@Seth - Thanks again for the effort. I knew this was a little tricky but did not realize how much of a ballache this one is.
Output of the commands down below, it repeats endlessly and I had to input a cancel command to stop it. The only difference between each posting is a different (gjs:ID)
[user@UserArch ~]$ type gjs
gjs is /usr/bin/gjs
[user@UserArch ~]$ strace -o /tmp/polydock.strace -f -tt /usr/bin/polydock
starting
(gjs:1889): Wnck-WARNING **: 16:45:09.820: libwnck is designed to work in X11 only, no valid display found
/usr/bin/polydock: line 13: 1889 Segmentation fault (core dumped) gjs "$dist/polydock.js" $@
[restarting]
(gjs:1910): Wnck-WARNING **: 16:45:10.052: libwnck is designed to work in X11 only, no valid display found
/usr/bin/polydock: line 13: 1910 Segmentation fault (core dumped) gjs "$dist/polydock.js" $@
[restarting]
I then made a file using
cat /tmp/polydock.strace >> fle.txt
and its like 6.4MB... (72,137 lines of code) is there a specific part your looking for? I am hesitant to post so much info publicly without understanding exactly what it is... Doing a little reading now to understand what the strace command actually did.
Thanks again for the effort I really appreciate it
Last edited by Ranon (2023-09-27 09:03:57)
Offline
We want to know what files are accessed and how the process tries to connect the X11 server.
strace traces system calles (hence the name) and I do not expect it to contain any sensitive data.
You can post that to 0x0.st
Online
Sorry for the delay.
Here is the output file
https://drive.google.com/file/d/1DEs3OT … sp=sharing
Was not sure about the best way to get it on here.
Offline
You can post that to 0x0.st
You're using all binaries and libraries out of the system paths
This looks shady
1910 16:45:10.051916 getpeername(2, 0x7ffde8978280, [128]) = -1 ENOTSOCK (Socket operation on non-socket)
you'd expect getpeername on 3 and 3 being the X11 connection, but there's not even an attempt to open that socket, like eg.
connect(3, {sa_family=AF_UNIX, sun_path=@"/tmp/.X11-unix/X0"}, 20) = 0
getpeername(3, {sa_family=AF_UNIX, sun_path=@"/tmp/.X11-unix/X0"}, [124 => 20]) = 0
and we immeiately continue with the warning
1910 16:45:10.051935 futex(0x7f962009fff8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
1910 16:45:10.051951 ioctl(2, TCGETS, {c_iflag=ICRNL|IXON|IUTF8, c_oflag=NL0|CR0|TAB0|BS0|VT0|FF0|OPOST|ONLCR, c_cflag=B38400|CS8|CREAD, c_lflag=ISIG|ICANON|ECHO|ECHOE|ECHOK|IEXTEN|ECHOCTL|ECHOKE, ...}) = 0
1910 16:45:10.051987 getpid() = 1910
1910 16:45:10.052006 openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 4
1910 16:45:10.052027 newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=446, ...}, AT_EMPTY_PATH) = 0
1910 16:45:10.052046 newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=446, ...}, AT_EMPTY_PATH) = 0
1910 16:45:10.052066 read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0"..., 4096) = 446
1910 16:45:10.052084 lseek(4, -265, SEEK_CUR) = 181
1910 16:45:10.052101 read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\0"..., 4096) = 265
1910 16:45:10.052118 close(4) = 0
1910 16:45:10.052139 write(2, "\n(gjs:1910): Wnck-\33[1;33mWARNING"..., 128) = 128
1910 16:45:10.052170 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x968} ---
1910 16:45:10.052191 rt_sigaction(SIGSEGV, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7f961f63e710}, NULL, 8) = 0
1910 16:45:10.052210 rt_sigreturn({mask=[]}) = 0
1910 16:45:10.052230 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x968} ---
1919 16:45:10.220885 <... futex resumed>) = ?
=> https://github.com/folke/polydock/issues/54
Possibly https://gitlab.gnome.org/GNOME/libwnck/-/issues/151
Online