J'ai besoin de vos lumières.
Je vais essayer d'expliquer le (petit) problème que je rencontre avec mon conky.
Tout abord le conky qui sert uniquement à afficher l'IP, le Pays et la ville de connexion (VPN ou pas) :
background yes
double_buffer yes
alignment bottom
border_width 1
cpu_avg_samples 2
default_color white
default_outline_color white
default_shade_color white
draw_borders no
draw_graph_borders yes
draw_outline no
draw_shades no
gap_x 665
gap_y 20
net_avg_samples 2
no_buffers yes
out_to_console no
out_to_stderr no
extra_newline no
own_window yes
own_window_type normal
own_window_transparent yes
own_window_colour 000000
own_window_argb_visual no
own_window_argb_value 0
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
minimum_size 270 0
stippled_borders 0
update_interval 10
uppercase no
use_spacer none
show_graph_scale no
show_graph_range no
use_xft yes
xftalpha 0.1
xftfont Droid Sans:size=10
color0 ED7B21
color1 16A086
TEXT
${color0}Country ${alignr}${color1}${exec cat ipinfo | grep country | cut -d \" -f 4}
${color0}City ${alignr}${color1}${exec cat ipinfo | grep city | cut -d \" -f 4}
${color0}IP ${alignr}${color1}${exec cat ipinfo | grep ip | cut -d \" -f 4}
Le fichier ipinfo ci-dessus est le résultat du script :
#!/bin/bash
curl ipinfo.io > ipinfo
Le problème est que, si le contenu d'ipinfo change, alors les commandes cat du conky affiche toujours l'ancien contenu.
Mieux : en supprimant ipinfo, le conky affiche tjs les mêmes valeurs -- qui n'existent plus.
Et je n'ai absolument aucunes idées d'où ça peut venir ni où chercher.
Qu'en pensez-vous ?
edit : À noter que les mêmes commandes cat prennent en compte les changements dans un terminal
Dernière modification par Blueil y a 6 ans, modifié au total 1 fois.
"Il semble que la perfection soit atteinte non quand il n'y a plus rien à ajouter, mais quand il n'y a plus rien à retrancher"
Antoine de Saint-Exupéry
Salut,
Le fonctionnement est normal, le script lance la commande curl ipinfo.io et met le retour de commande dans le fichier ipinfo. Conky récupère les données du fichier pour les afficher, mais tant que le script n'est pas relancé régulièrement, le fichier ipinfo garde les mêmes données.
Je ne sais pas comment est lancé le script, mais je pense qu'il faudrait passer par cron ou un timer systemd pour voir les infos rafraîchies régulièrement.
Attention, ton script crée le fichier ipinfo à l'endroit où tu l'as lancé, il ne faudrait pas que le fichier ipinfo soit bon à un endroit, et que conky grep un ancien fichier ailleurs.
et oui linux recherche les programmes UNIQUEMENT dans le $PATH et même pas dans le répertoire courant
cette restriction (existe pas sous win) est pour notre sécurité : être sur d'appeler le bon programme système et non un virus qui traine dans notre home.
restriction levée dès que l'on donne un chemin avec notre programme
Je pense qu'il faudrait aussi modifier le script pour qu'il envoie ses données au bon endroit et le copier dans /usr/local/bin, tu n'aurais plus à le lancer obligatoirement de ton $home.