haideralipunjabi / polybar-kdeconnect

KDEConnect module for Polybar
https://blog.haideralipunjabi.com/posts/making-modules-for-polybar-shell-python/
164 stars 11 forks source link

error: Disabling module "kdeconnect" (reason: Missing parameter "module/kdeconnect.type") #12

Open aslmx opened 5 years ago

aslmx commented 5 years ago

Hey there, first of all, thanks for your efforts.

I have googled this issue and found a lot threads about different modules where people really forgot to configure the type and it was easy to solve.

However... i copied the snippet from this repos readme and it still doesn't seem to like it. I literally retyped the whole thing to make sure it is not some weird unicode characters copied from github...

I also copied the "kdeconnect" from [module/kdeconnect], so that these two names are really exactly the same.

Still i get error: Disabling module "kdeconnect" (reason: Missing parameter "module/kdeconnect.type") i ran polybar with -l trace, but it is no more specific than this line, apparently...

Relevant parts from my config: ` modules-left = info-pingrtt1 info-pingrtt2 network-traffic system-uptime-pretty kdeconnect modules-center = date modules-right = filesystem xbacklight pulseaudio memory cpu wlan eth1 eth battery temperature powermenu

[module/kdeconnect] type = custom/script exec = /home/sebastian/tools/polybar-kdeconnect/polybar-kdeconnect.sh -d tail = true

` Script it self seems to run fine when i manually start it...

Where should i look at? All the other scripts i added were nicely cooperating ;)

haideralipunjabi commented 5 years ago

I don't see a problem in your config. Can you post your complete config file? I will try running that.

aslmx commented 5 years ago

So.... apparently i don't have access to the computer that i had the problem with yesterday (i'll paste it's polybar config this evening, hopefully).

But i just tried to reproduce this at work and it is really becoming weird.

I know we should not mix defects, but as the way of reproducing this is almost equal to the above problem, i thought it might be okay, also the error still is about the module type parameter.

Reproduction: So i git-cloned your repo, copied the script to my polybar config folder and did the exact same steps as at home to configure it. That means, copy the snippet from readme.md, paste it somewhere between the other modules and add the module to the bar.

Here is what happens when i run polybar: ` Loading config: /home/sebastian/.config/polybar/config error: Duplicate key name "type" defined on line 138

Here the full config, notice the kdeconnect config in line ~138

`;========================================================== ; ; ; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ ; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ ; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ ; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ ; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ ; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ; ; ; To learn more about how to configure Polybar ; go to https://github.com/polybar/polybar ; ; The README contains a lot of information ; ;==========================================================

[colors] ;background = ${xrdb:color0:#222} background = #222 background-alt = #444 ;foreground = ${xrdb:color7:#222} foreground = #dfdfdf foreground-alt = #555 primary = #ffb52a secondary = #e60053 alert = #bd2c40

[bar/example] ;monitor = ${env:MONITOR:HDMI-1} width = 100% height = 27 ;offset-x = 1% ;offset-y = 1% radius = 4.0 fixed-center = false

background = ${colors.background} foreground = ${colors.foreground}

line-size = 5 line-color = #f00

border-size = 1 border-color = #00000000

padding-left = 0 padding-right = 0 padding-top = 0

module-margin-left = 1 module-margin-right = 2

font-0 = fixed:pixelsize=8;1 font-1 = unifont:fontformat=truetype:size=8:antialias=false;0 font-2 = siji:pixelsize=8;1 font-3 = FontAwesome:pixelsize=8;1 font-4 = 3270Medium Nerd Font ,font-5 = Noto Color Emoji:pixelsize=8;1 font-5 = Noto Color Emoji:scale=10;

modules-left = bspwm info-pingrtt1 info-pingrtt2 system-uptime-pretty kdeconnect modules-center = mpd modules-right = filesystem xbacklight alsa pulseaudio memory cpu wlan eth eth1 battery temperature date powermenu

tray-position = right tray-padding = 2 ;tray-background = #0063ff

;wm-restack = bspwm ;wm-restack = i3

;override-redirect = true

;scroll-up = bspwm-desknext ;scroll-down = bspwm-deskprev

;scroll-up = i3wm-wsnext ;scroll-down = i3wm-wsprev

cursor-click = pointer cursor-scroll = ns-resize

[module/xwindow] type = internal/xwindow label = %title:0:30:...%

[module/xkeyboard] type = internal/xkeyboard blacklist-0 = num lock

format-prefix = " " format-prefix-foreground = ${colors.foreground-alt} format-prefix-underline = ${colors.secondary}

label-layout = %layout% label-layout-underline = ${colors.secondary}

label-indicator-padding = 2 label-indicator-margin = 1 label-indicator-background = ${colors.secondary} label-indicator-underline = ${colors.secondary}

[module/filesystem] type = internal/fs interval = 25

mount-0 = /

label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%% used label-unmounted = %mountpoint% not mounted label-unmounted-foreground = ${colors.foreground-alt}

[module/bspwm] type = internal/bspwm

label-focused = %index% label-focused-background = ${colors.background-alt} label-focused-underline= ${colors.primary} label-focused-padding = 2

label-occupied = %index% label-occupied-padding = 2

label-urgent = %index%! label-urgent-background = ${colors.alert} label-urgent-padding = 2

label-empty = %index% label-empty-foreground = ${colors.foreground-alt} label-empty-padding = 2

; Separator in between workspaces ; label-separator = |

[module/kdeconnect]
type = custom/script exec = ~/.config/polybar/polybar-kdeconnect.sh -d tail = true

[module/info-pingrtt1] type = custom/script exec = ~/.config/polybar/info-pingrtt2.sh 192.168.2.1 interval = 3

[module/info-pingrtt2] type = custom/script exec = ~/.config/polybar/info-pingrtt2.sh google.com interval = 3

[module/system-uptime-pretty] type = custom/script exec = ~/.config/polybar/system-uptime-pretty.sh interval = 2

[module/i3] type = internal/i3 format = index-sort = true wrapping-scroll = false

; Only show workspaces on the same output as the bar ;pin-workspaces = true

label-mode-padding = 2 label-mode-foreground = #000 label-mode-background = ${colors.primary}

; focused = Active workspace on focused monitor label-focused = %index% label-focused-background = ${module/bspwm.label-focused-background} label-focused-underline = ${module/bspwm.label-focused-underline} label-focused-padding = ${module/bspwm.label-focused-padding}

; unfocused = Inactive workspace on any monitor label-unfocused = %index% label-unfocused-padding = ${module/bspwm.label-occupied-padding}

; visible = Active workspace on unfocused monitor label-visible = %index% label-visible-background = ${self.label-focused-background} label-visible-underline = ${self.label-focused-underline} label-visible-padding = ${self.label-focused-padding}

; urgent = Workspace with urgency hint set label-urgent = %index% label-urgent-background = ${module/bspwm.label-urgent-background} label-urgent-padding = ${module/bspwm.label-urgent-padding}

; Separator in between workspaces ; label-separator = |

[module/mpd] type = internal/mpd format-online =

icon-prev =  icon-stop =  icon-play =  icon-pause =  icon-next = 

label-song-maxlen = 25 label-song-ellipsis = true

[module/xbacklight] type = internal/xbacklight

format =

bar-width = 10 bar-indicator = | bar-indicator-foreground = #fff bar-indicator-font = 2 bar-fill = ─ bar-fill-font = 2 bar-fill-foreground = #9f78e1 bar-empty = ─ bar-empty-font = 2 bar-empty-foreground = ${colors.foreground-alt}

[module/backlight-acpi] inherit = module/xbacklight type = internal/backlight card = intel_backlight

[module/cpu] type = internal/cpu interval = 2 format-prefix = " " format-prefix-foreground = ${colors.foreground-alt} format-underline = #f90000 label = CPU %percentage:2%%

[module/memory] type = internal/memory interval = 2 format-prefix = " " format-prefix-foreground = ${colors.foreground-alt} format-underline = #4bffdc label = MEM %percentage_used%%

[module/wlan] type = internal/network interface = net1 interval = 3.0

format-connected = format-connected-underline = #9f78e1 label-connected = %essid%

format-disconnected = ;format-disconnected = ;format-disconnected-underline = ${self.format-connected-underline} ;label-disconnected = %ifname% disconnected ;label-disconnected-foreground = ${colors.foreground-alt}

ramp-signal-0 =  ramp-signal-1 =  ramp-signal-2 =  ramp-signal-3 =  ramp-signal-4 =  ramp-signal-foreground = ${colors.foreground-alt}

[module/eth] type = internal/network interface = enp0s8 interval = 3.0

format-connected-underline = #55aa55 format-connected-prefix = "enp0s8  " format-connected-prefix-foreground = ${colors.foreground-alt} label-connected = %local_ip%

format-disconnected = ;format-disconnected = ;format-disconnected-underline = ${self.format-connected-underline} ;label-disconnected = %ifname% disconnected ;label-disconnected-foreground = ${colors.foreground-alt}

[module/eth1] type = internal/network interface = enp0s9 interval = 3.0

format-connected-underline = #55aa55 format-connected-prefix = "enp0s9  " format-connected-prefix-foreground = ${colors.foreground-alt} label-connected = %local_ip%

;format-disconnected = format-disconnected = format-disconnected-underline = ${self.format-connected-underline} ;label-disconnected = %ifname% disconnected ;label-disconnected-foreground = ${colors.foreground-alt}

[module/date] type = internal/date interval = 1

date = "%Y-%m-%d" date-alt = " %Y-%m-%d"

time = %H:%M time-alt = %H:%M:%S

format-prefix =  format-prefix-foreground = ${colors.foreground-alt} format-underline = #0a6cf5

label = %date% %time%

[module/pulseaudio] type = internal/pulseaudio

format-volume = label-volume = VOL %percentage%% label-volume-foreground = ${root.foreground}

label-muted = 🔇 muted label-muted-foreground = #666

bar-volume-width = 10 bar-volume-foreground-0 = #55aa55 bar-volume-foreground-1 = #55aa55 bar-volume-foreground-2 = #55aa55 bar-volume-foreground-3 = #55aa55 bar-volume-foreground-4 = #55aa55 bar-volume-foreground-5 = #f5a70a bar-volume-foreground-6 = #ff5555 bar-volume-gradient = false bar-volume-indicator = | bar-volume-indicator-font = 2 bar-volume-fill = ─ bar-volume-fill-font = 2 bar-volume-empty = ─ bar-volume-empty-font = 2 bar-volume-empty-foreground = ${colors.foreground-alt}

[module/alsa] type = internal/alsa

format-volume = label-volume = VOL label-volume-foreground = ${root.foreground}

format-muted-prefix = " " format-muted-foreground = ${colors.foreground-alt} label-muted = sound muted

bar-volume-width = 10 bar-volume-foreground-0 = #55aa55 bar-volume-foreground-1 = #55aa55 bar-volume-foreground-2 = #55aa55 bar-volume-foreground-3 = #55aa55 bar-volume-foreground-4 = #55aa55 bar-volume-foreground-5 = #f5a70a bar-volume-foreground-6 = #ff5555 bar-volume-gradient = false bar-volume-indicator = | bar-volume-indicator-font = 2 bar-volume-fill = ─ bar-volume-fill-font = 2 bar-volume-empty = ─ bar-volume-empty-font = 2 bar-volume-empty-foreground = ${colors.foreground-alt}

[module/battery] type = internal/battery battery = BAT0 adapter = AC full-at = 98

format-charging = format-charging-underline = #ffb52a

format-discharging = format-discharging-underline = ${self.format-charging-underline}

format-full-prefix = " " format-full-prefix-foreground = ${colors.foreground-alt} format-full-underline = ${self.format-charging-underline}

ramp-capacity-0 =  ramp-capacity-1 =  ramp-capacity-2 =  ramp-capacity-foreground = ${colors.foreground-alt}

animation-charging-0 =  animation-charging-1 =  animation-charging-2 =  animation-charging-foreground = ${colors.foreground-alt} animation-charging-framerate = 750

animation-discharging-0 =  animation-discharging-1 =  animation-discharging-2 =  animation-discharging-foreground = ${colors.foreground-alt} animation-discharging-framerate = 750

[module/temperature] type = internal/temperature thermal-zone = 0 warn-temperature = 60

format =

label = %temperature-c% label-warn = %temperature-c% label-warn-foreground = ${colors.secondary}

ramp-0 =  ramp-1 =  ramp-2 =  ramp-foreground = ${colors.foreground-alt}

[module/powermenu] type = custom/menu

expand-right = true

format-spacing = 1

label-open =  label-open-foreground = ${colors.secondary} label-close =  cancel label-close-foreground = ${colors.secondary} label-separator = | label-separator-foreground = ${colors.foreground-alt}

menu-0-0 = reboot menu-0-0-exec = menu-open-1 menu-0-1 = power off menu-0-1-exec = menu-open-2

menu-1-0 = cancel menu-1-0-exec = menu-open-0 menu-1-1 = reboot menu-1-1-exec = sudo reboot

menu-2-0 = power off menu-2-0-exec = sudo poweroff menu-2-1 = cancel menu-2-1-exec = menu-open-0

[settings] screenchange-reload = true ;compositing-background = xor ;compositing-background = screen ;compositing-foreground = source ;compositing-border = over ;pseudo-transparency = false

[global/wm] margin-top = 0 margin-bottom = 0

; vim:ft=dosini`

I appreciate your offer to have a look. Would be really cool to have kdeconnect in polybar.

(I just want to mention i discovered polybar more yesterday and build everything around the example bar ;). I have changed the ping-rtt script from the scripts repo to allow to be passed the hostnames via parameter, so that i can have more than one host easily, the rest is pretty much standard I'd say)

haideralipunjabi commented 5 years ago

I tried the script and the module worked fine for me. I just needed to add the following line below the other fonts font-6 = "Iosevka Nerd Font:pixelsize=13;3"

Btw, I am running Polybar 3.3.0 , what version are you running?

aslmx commented 5 years ago

$ polybar --version polybar 3.3.0-92-g7724c4d
Features: +alsa +curl -i3 +mpd +network(wireless-tools) +pulseaudio +xkeyboard

haideralipunjabi commented 5 years ago

Can you try this script? This is the bare minimum from example with only my module.


[colors]
;background = ${xrdb:color0:#222}
background = #222
background-alt = #444
;foreground = ${xrdb:color7:#222}
foreground = #dfdfdf
foreground-alt = #555
primary = #ffb52a
secondary = #e60053
alert = #bd2c40

[bar/example]
;monitor = ${env:MONITOR:HDMI-1}
width = 100%
height = 27
;offset-x = 1%
;offset-y = 1%
radius = 6.0
fixed-center = false

background = ${colors.background}
foreground = ${colors.foreground}

line-size = 3
line-color = #f00

border-size = 4
border-color = #00000000

padding-left = 0
padding-right = 2

module-margin-left = 1
module-margin-right = 2

font-0 = "Iosevka Nerd Font:pixelsize=13;3"

modules-center = kdeconnect

[module/kdeconnect]
type = custom/script
exec =  ~/.config/polybar/polybar-kdeconnect.sh -d
label-font = 3
format-background=#fff
format-padding= 2
tail = true

This will tell if its my module or some other thing that is creating the issue. This script works fine for me.

aslmx commented 5 years ago

Hi,

well it loads fine now, without any error. Thanks so far...

So, I'm gonna spend some time gradually changing my config and see where it breaks...

But what is it actually supposed to do? it just shows a white rectangular area...

polybar output is:

warn: Dropping unmatched character  (U+f61f) and No matching input area found (btn=1) when i click it.

haideralipunjabi commented 5 years ago

You are missing the font Iosevka Nerd Font

aslmx commented 5 years ago

Thanks for the hint. Sorry to bother some more... I have installed a version i found and it is loaded and now shows the smartphone icon. But still no menu :(

haideralipunjabi commented 5 years ago

What color is the icon? Can you use KDE Connect with the KDE Connect Settings app?

aslmx commented 5 years ago

Can't remeber on the icon color, but kdeconnect itself was working fine at the same time.

haideralipunjabi commented 5 years ago

No menu indicated that the phone is paired but not reachable.

mahedi-p commented 1 year ago

~/.config/polybar/cuts/polybar-kdeconnect.sh: line 56: -1: substring expression < 0 i am faching the error

valkur5 commented 4 months ago

~/.config/polybar/cuts/polybar-kdeconnect.sh: line 56: -1: substring expression < 0 i am faching the error

I solved it installing qdbus-qt5 in debian 12

haideralipunjabi commented 4 months ago

I solved it installing qdbus-qt5 in debian 12

Yes, I have that as a requirement in README