Conky - Hämta färger från Xresources?

Permalänk
Medlem

Conky - Hämta färger från Xresources?

Hej!

Idag använder jag pywal för att genererar färger till i3wm genom Xresources. Någon som vet om man även kan hämta färger till conky från Xresources? Ställde frågan i conky på freenode men ingen svarade.

Tack på förhand.

Permalänk
Avstängd
Skrivet av llxt:

Hej!

Idag använder jag pywal för att genererar färger till i3wm genom Xresources. Någon som vet om man även kan hämta färger till conky från Xresources? Ställde frågan i conky på freenode men ingen svarade.

Tack på förhand.

Självklart kan du parsa in färgerna från Xresources i din Conky. Det beror mer på hur din Conky-kod ser ut. Men det krävs nån form av script utöver Conky och om du använder lua Cairo graphics eller inte.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Du har inte lust att försöka leda mig i rätt riktning? Jag har ingen some helst aning om hur ett sådant scrips skulle se ut.

Permalänk
Avstängd
Skrivet av llxt:

@eXpander_: Du har inte lust att försöka leda mig i rätt riktning? Jag har ingen some helst aning om hur ett sådant scrips skulle se ut.

Absolut, undrar bara vilken Conky du syftar på, vad är det för Conky du är intresserad av?

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem
Skrivet av eXpander_:

Absolut, undrar bara vilken Conky du syftar på, vad är det för Conky du är intresserad av?

Jag använder conky på skrivbordet om det är det du syftar på? Eller missuppfattar jag?

Permalänk
Avstängd
Skrivet av llxt:

Jag använder conky på skrivbordet om det är det du syftar på? Eller missuppfattar jag?

Jag undrar hur din conky-konfiguration ser ut :). Då kan man utgå från det.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem
Skrivet av eXpander_:

Jag undrar hur din conky-konfiguration ser ut :). Då kan man utgå från det.

Ptja, Vi kan väl utgå från något enkelt som denna?

Permalänk
Avstängd

Ok, ponera att du har en templat conky (template_conky.conf) som ser ut såhär:

#!/usr/bin/conky -d -c ## .conkyrc configuration alignment top_left background yes cpu_avg_samples 2 double_buffer yes draw_borders no draw_graph_borders no draw_outline no draw_shades no gap_x 20 gap_y 60 max_specials 1024 max_user_text 10000 #maximum_width 180 #minimum_size 850 net_avg_samples 2 no_buffers yes override_utf8_locale yes own_window yes own_window_colour 000000 own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager own_window_transparent yes own_window_type override pad_percents 2 short_units yes stippled_borders 3 text_buffer_size 8000 total_run_times 0 update_interval 1.0 uppercase no use_spacer right use_xft yes xftalpha 0.75 xftfont sans:size=10 COLORFIELD TEXT ${color1}test

Då skulle jag ha startat conkyn via denna script (start_conky.sh):

#!/bin/sh colors=`cat $HOME/.cache/wal/colors.Xresources | grep "*color" | tr -d "*:#"` cat template_conky.conf | awk -v srch="COLORFIELD" -v repl="$colors" '{ sub(srch,repl,$0); print $0 }' > conky_wal.conf conky -c conky_wal.conf

Så, tanken är att du catar colors.Xresourses, ersätter strängen "COLORFIELD" i din template_conky.conf, skapar en ny konfigurationsfil conky_wal.conf, och startar denna konfiguration som ska vara anpassad efter din pywal.

Denna kod knackade jag på 5 min, så , kanske kan förbättras avesvärt bättre, men du kanske förstår min poäng.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Fantastiskt! Tack så mycket. Det fungerade. Synd bara att den inte updateras av sig själv när man kör pywal eller laddar om i3.

Permalänk
Avstängd
Skrivet av llxt:

@eXpander_: Fantastiskt! Tack så mycket. Det fungerade. Synd bara att den inte updateras av sig själv när man kör pywal eller laddar om i3.

Det går fixa till det också, är inte hemma nu, men kan knacka ihop ett hack.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem
Skrivet av eXpander_:

Det går fixa till det också, är inte hemma nu, men kan knacka ihop ett hack.

Skulle uppskattas extremt mycket Tack.

Permalänk
Avstängd

Ok, då har jag fått lite tid över att fundera över hur Conky ska refreshas när du uppdaterar pywal. Jag tänkte mig att en simpel kommando med inotifywait borde göra susen.

Vi kan skapa ett script till (conky_background_process.sh), som körs i bakgrunden hela tiden. Den skulle kunna se ut såhär;

#!/bin/sh while inotifywait -qqe modify $HOME/.cache/wal/colors.Xresources; do killall conky ; PATH_TO_YOUR/start_conky.sh ; done

Simple as that... du kör alltså ett script i bakgrunden som startar om conkyn så fort en modifikation av colors.Xresources sker. Tyvärr, kan jag inte komma på ett annat sätt att refresha Conkyn än att döda den nuvarande processen och starta om. Jag har ej testat conky_background_process.sh, men borde fungera. Obsevera i scriptet, att du bör modifiera scriptet så att pathway till start_conky.sh stämmer överens med ditt eget.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Tack!

Får dock detta när jag kör background_process.sh:

conky_background_process.sh: line 3: inotifywait: command not found

Något paket jag behöver installera?

Permalänk
Avstängd
Skrivet av llxt:

@eXpander_: Tack!

Får dock detta när jag kör background_process.sh:

conky_background_process.sh: line 3: inotifywait: command not found

Något paket jag behöver installera?

Just ja, du behöver paketet inotify-tools:

sudo apt-get install inotify-tools

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Nu fungerar det. Tack så oerhört mycket !

Dock så dödas conky när jag kör pywal. Så jag måste starta om skriptet manuelt. Någon lösning på det?

Permalänk
Avstängd
Skrivet av llxt:

@eXpander_: Nu fungerar det. Tack så oerhört mycket !

Dock så dödas conky när jag kör pywal. Så jag måste starta om skriptet manuelt. Någon lösning på det?

conky_background_process.sh ska alltså köras i bakgrunden;

conky_background_process.sh &

Bör fungera...

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Nu dödas inte conky. Men färgen uppdateras inte. När jag refreshar i3 så byter den inte färg heller.

Permalänk
Avstängd
Skrivet av llxt:

@eXpander_: Nu dödas inte conky. Men färgen uppdateras inte. När jag refreshar i3 så byter den inte färg heller.

Haha, känns som att jag måste testa live själv.

Men se till att ha absoult pathways till dina script samt i scripten... återkommer när jag testat själv.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem
Skrivet av eXpander_:

Men se till att ha absoult pathways till dina script samt i scripten... återkommer när jag testat själv.

Det har jag
Såhär ser det ut:

#!/bin/sh while inotifywait -qqe modify $HOME/.cache/wal/colors.Xresources; do killall conky ; /home/master/conky/test2/start_conky.sh ; done

Permalänk
Avstängd
Skrivet av llxt:

Det har jag
Såhär ser det ut:

#!/bin/sh while inotifywait -qqe modify $HOME/.cache/wal/colors.Xresources; do killall conky ; /home/master/conky/test2/start_conky.sh ; done

Samma sak i din start_conky.sh? Alla filer med full pahtways såsom konfigurationsfilen?
Ganska triviala saker men lätt hänt att detta är orsaken.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Avstängd

Observera också att Conky refreshas enbart när du ändrar färgerna i pywal, inte i3.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem
Skrivet av eXpander_:

Observera också att Conky refreshas enbart när du ändrar färgerna i pywal, inte i3.

Precis! Jag körde pywal. Inget hände.

Ser detta bra ut?

conky_background_process.sh

#!/bin/sh while inotifywait -qqe modify $HOME/.cache/wal/colors.Xresources; do killall conky ; /home/master/conky/test2/start_conky.sh ; done

start_conky.sh

#!/bin/sh colors=`cat $HOME/.cache/wal/colors.Xresources | grep "*color" | tr -d "*:#"` cat template_conky.conf | awk -v srch="COLORFIELD" -v repl="$colors" '{ sub(srch,repl,$0); print $0 }' > /home/master/conky/test2/conky_wal.conf conky -c /home/master/conky/test2/conky_wal.conf

Sedan kör jag :

/home/master/conky/test2/conky_background_process.sh &

Och sedan :

sh /home/master/conky/test2/start_conky.sh

Permalänk
Avstängd
Skrivet av llxt:

Precis! Jag körde pywal. Inget hände.

Ser detta bra ut?

conky_background_process.sh

#!/bin/sh while inotifywait -qqe modify $HOME/.cache/wal/colors.Xresources; do killall conky ; /home/master/conky/test2/start_conky.sh ; done

start_conky.sh

#!/bin/sh colors=`cat $HOME/.cache/wal/colors.Xresources | grep "*color" | tr -d "*:#"` cat template_conky.conf | awk -v srch="COLORFIELD" -v repl="$colors" '{ sub(srch,repl,$0); print $0 }' > /home/master/conky/test2/conky_wal.conf conky -c /home/master/conky/test2/conky_wal.conf

Sedan kör jag :

/home/master/conky/test2/conky_background_process.sh &

Och sedan :

sh /home/master/conky/test2/start_conky.sh

Lägg till full pathway till template_conky.conf ; "cat template_conky.conf" i din start_conky.sh. Starta också start_conky.sh i bakgrunden genom att lägga till en ampersand (&).

Är inte hemma, men kommer testa själv när jag väl får tillfälle. Jag gissar på att det är något väldigt enkelt som spökar som vi inte ser...

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem
Skrivet av eXpander_:

Lägg till full pathway till template_conky.conf ; "cat template_conky.conf" i din start_conky.sh. Starta också start_conky.sh i bakgrunden genom att lägga till en ampersand (&).

Är inte hemma, men kommer testa själv när jag väl får tillfälle. Jag gissar på att det är något väldigt enkelt som spökar som vi inte ser...

Blev ingen skillnad. Känn ingen stress. Du har varit en fantastisk människa. Mycket tacksam.

Permalänk
Avstängd
Skrivet av llxt:

Blev ingen skillnad. Känn ingen stress. Du har varit en fantastisk människa. Mycket tacksam.

Attans, jag får det att funka ju :(. Lägger upp en demonstrationsvideo.

Länk: https://vimeo.com/xexpanderx/review/394676370/4bd0eb99d7

Filerna jag kör med:

template_conky.conf

#!/usr/bin/conky -d -c ## .conkyrc configuration alignment top_left background yes cpu_avg_samples 2 double_buffer yes draw_borders no draw_graph_borders no draw_outline no draw_shades no gap_x 20 gap_y 60 max_specials 1024 max_user_text 10000 #maximum_width 180 #minimum_size 850 net_avg_samples 2 no_buffers yes override_utf8_locale yes own_window yes own_window_colour 000000 own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager own_window_transparent yes own_window_type override pad_percents 2 short_units yes stippled_borders 3 text_buffer_size 8000 total_run_times 0 update_interval 1.0 uppercase no use_spacer right use_xft yes xftalpha 0.75 xftfont sans:size=10 COLORFIELD TEXT ${font size=12,weight:bold}${color0}AAAA ${color1}AAAA ${color2}AAAA ${color3}AAAA ${color4}AAAA ${color5}AAAA ${color6}AAAA ${color7}AAAA ${color8}AAAA ${color9}AAAA

start_conky.sh

#!/bin/sh colors=`cat $HOME/.cache/wal/colors.Xresources | grep "*color" | tr -d "*:#"` cat /home/alexsson/Downloads/Conky/template_conky.conf | awk -v srch="COLORFIELD" -v repl="$colors" '{ sub(srch,repl,$0); print $0 }' > /home/alexsson/Downloads/Conky/conky_wal.conf conky -c /home/alexsson/Downloads/Conky/conky_wal.conf

conky_background_process.sh

#!/bin/sh while inotifywait -qqe modify $HOME/.cache/wal/colors.Xresources; do killall conky ; /home/alexsson/Downloads/Conky/start_conky.sh ; done

Jag vet inte riktigt varför det inte skulle fungera för dig

PS: Jag tycker sånt här är kul, alltid kul att hjälpa till :), men tack!

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Märkligt. Kan inte hitta något fel. Sökvägarna stämmer helt.

Permalänk
Medlem

@eXpander_: När jag kör start_conky.sh får jag detta:

[master@laptop test2]$ conky: Syntax error (/home/master/conky/test2/conky_wal.conf:2: unexpected symbol near '#') while reading config file. conky: Assuming it's in old syntax and attempting conversion. conky: desktop window (1bf) is root window conky: window type - override conky: drawing to created window (0x3000001) conky: drawing to double buffer conky: Unknown setting 'color13' conky: Unknown setting 'color15' conky: Unknown setting 'color14' conky: Unknown setting 'color12' conky: Unknown setting 'color66' conky: Unknown setting 'color10' conky: Unknown setting 'max_specials' conky: Unknown setting 'color11' conky: forked to background, pid is 1119120

Men det kanske inte ska göra någon skillnad, eller?

Permalänk
Avstängd
Skrivet av llxt:

@eXpander_: När jag kör start_conky.sh får jag detta:

[master@laptop test2]$ conky: Syntax error (/home/master/conky/test2/conky_wal.conf:2: unexpected symbol near '#') while reading config file. conky: Assuming it's in old syntax and attempting conversion. conky: desktop window (1bf) is root window conky: window type - override conky: drawing to created window (0x3000001) conky: drawing to double buffer conky: Unknown setting 'color13' conky: Unknown setting 'color15' conky: Unknown setting 'color14' conky: Unknown setting 'color12' conky: Unknown setting 'color66' conky: Unknown setting 'color10' conky: Unknown setting 'max_specials' conky: Unknown setting 'color11' conky: forked to background, pid is 1119120

Men det kanske inte ska göra någon skillnad, eller?

Nope, får exakt samma fel-output. Men det borde inte spela någon roll.

Dessutom, så kör vi med en gammal version av conky-config. Men återigen, märkligt att det fungerar hos mig.

Visa signatur

Dator: i7 4960x | 32GB RAM | Asus Rampage IV Formula | GTX 1080
OS: Slackware 64-bit current + multilib

Laptop: HP Elitebook 6930p | 8GB RAM | 211GB SSD RAID 0 | 256MB AMD Radeon HD 3450/3470 | Intel Duo T9900 @ 3.06GHz
OS: Slackware 64-bit 14.2

Permalänk
Medlem

@eXpander_: Nu fungerar det
Visade sig att jag körde

sudo /home/master/conky/test2/conky_background_process.sh &

när jag igentligen skulle kört

home/master/conky/test2/conky_background_process.sh &

haha my bad

Tack så hemskt mycket för alla hjälp
Du borde slänga upp den på github. Finns nog fler som vill köra med något liknande

Permalänk
Medlem

@llxt: Dock så märkte jag att den dödar alla andra conky skript som jag kör med när jag kör pywal.

edit: men det kanske inte har att göra med dessa skript