Conky (Русский)
From ArchWiki
Article summary |
---|
Содержи информацию по конфигурированию и решению проблемных вопросов системного монитора conky. |
Доступные языки |
English |
简体中文 |
Italiano |
Русский |
Türkçe |
Введение
Conky системный монитор для X Window System. Он доступен для Linux и FreeBSD. Это свободное программное обеспечение выпущенное на условиях лицензии BSD. Conky может производить мониторинг большинства количества системных переменных, включая CPU, memory, swap, disk space, temperature, top, upload, download, system messages, и многого другого. Он предельно конфигурируем, однако, конфигурирование может быть слегка сложным для понимания. Conky это ответвление от проекта torsmo.
Установка и конфигурирование
- Conky можно найти в репозитории Extra
# pacman -S conky
- Отредактируйте конфигурационный файл используя пример конфигурации с homeproject-screenshot
$ nano ~/.conkyrc
- Либо используйте файл стандартной конфигурации /etc/conky/conky.conf:
$ cp /etc/conky/conky.conf ~/.conkyrc
Советы и рекомендации
Как предотвратить мерцание
Чтобы предотвратить мерцание, Conky требует поддержку Double Buffer Extension (DBE) со стороны X-сервера, потому что он не может достаточно быстро обновлять окно без этого. Поддержка DBE может быть включена в /etc/X11/xorg.conf добавлением строки Load "dbe" в Section "Module". Для включения double-buffer проверте наличие в ~/.conkyrc строки:
double_buffer yes
Интеграция с Kdesktop
Conky с конфигурацией из примеров на странице со скриншотами создаёт проблему с отображением иконок. Итак следуйте следующим шагам.
- Добавьте эти строки в ~/.conkyrc:
own_window yes own_window_type normal own_window_transparent yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
- Если данная строка есть, закомментируйте или удаалите её
minimum_size
- Для автозапуска conky создайте следующий симилинк
$ ln -s /usr/bin/conky ~/.kde/share/autostart/conkylink
- Установите feh
# pacman -S feh
- Создайте скрипт для разрешения прозрачности с рабочим столом
Для пользователей KDE3
$ nano -w ~/.kde/share/autostart/fehconky
#!/bin/bash feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`
Для пользователей KDE4
$ nano -w ~/.kde4/share/autostart/fehconky
#!/bin/bash feh --bg-scale "`grep 'wallpaper=' ~/.kde4/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'`"
используйте --bg-center, чтобы расположить фоновый рисунок по ценру.
- Сделайте его исполняемым
$ chmod +x ~/.kde/share/autostart/fehconky
- По желанию, вместо использования скрипта, вы можете добавить подобную строку в самый низ .conkyrc
$ nano ~/.conkyrc
Для KDE3
${exec feh --bg-scale `dcop kdesktop KBackgroundIface currentWallpaper 1`}
Для KDE4
${exec feh --bg-scale "`grep 'wallpaper=' ~/.kde4/share/config/plasma-appletsrc | tail --lines=1 | sed 's/wallpaper=//'`"}
Как отображать информацию о доступных обновлениях пакетов в Conky
Взгляните на следующие темы о скриптах отображения информации о доступных обновлениях пакетов в conky:
- Script to display the number of packages waiting for update.
- Update notifier in python
- Scrolling package update notifier
- bash script for users that have enabled ShowSize
Как отображать прогноз погоды в Conky
Смотрите this thread.
Как отображать RSS-ленты в Conky
Conky имеет возможность отображать RSS-ленты самостоятельно, без необходимости применения внешних скриптов. Например, чтобы отображать заголовки десяти последних обновлений Planet Arch и обновлять ленту каждую минуту вы должны поместить это в ваш .conkyrc:
${rss http://planet.archlinux.org/rss20.xml 1 item_titles 10 }
Как отображать состояние rtorrent в Conky
Смотрите эту тему.
Как отображать количество новых писем (Gmail) в Conky
Создайте файл с именем gmail.py
в удобном месте (в этом примере используется ~/.scripts/
) со следующим кодом Python:
import os import string #Введите ващи имя_пользователя и пароль в двойных кавычках ниже # напр. username="имя_пользователя" и password="пароль" username="****" password="****" com="wget -O - https://"+username+":"+password+"@mail.google.com/mail/feed/atom --no-check-certificate" temp=os.popen(com) msg=temp.read() index=string.find(msg,"<fullcount>") index2=string.find(msg,"</fullcount>") fc=int(msg[index+11:index2]) if fc==0: print "0 new" else: print str(fc)+" new"
Добавьте следующую строку к вашему .conkyrc
чтобы проверять вашу почтовый ящик gmail на новые письма каждые 5 минут (300 секунд) и отображать: # new
${execi 300 python ~/.scripts/gmail.py}
Внешние ссылки
- Conky Configs on arch forums
- Official website
- Conky on Freshmeat
- Conky on SourceForge
- #conky IRC chat channel on freenode
- FAQ
Предоставленные пользователями файлы .conkyrc
Graysky's .conkyrc
[Скриншот]
Измените в соответствии вашей системе. Optimized for a quad core chip w/ three hdds (although two of them aren't connected for this screenshot) and an nvidia graphics card. You can easily modify this to a dual or single core system with one or whatever number of hdds.
# for this to work you need both lm-sensors and hddtemp # get both from main repos # set to yes if you want Conky to be forked in the background background no own_window yes own_window_type override own_window_transparent yes own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager out_to_console no # X font when Xft is disabled, you can pick one with program xfontsel #font 7x12 #font 6x10 #font 7x13 #font 8x13 #font 7x12 #font *mintsmild.se* #font -*-*-*-*-*-*-34-*-*-*-*-*-*-* #font -artwiz-snap-normal-r-normal-*-*-100-*-*-p-*-iso8859-1 # Use Xft? use_xft yes # Xft font when Xft is enabled xftfont Bitstream Vera Sans Mono:size=8 # # #own_window_transparent no #own_window_colour hotpink # Text alpha when using Xft xftalpha 0.8 #on_bottom yes # Update interval in seconds update_interval 2 # Create own window instead of using desktop (required in nautilus) #own_window no # Use double buffering (reduces flicker, may not work for everyone) double_buffer yes # Minimum size of text area #minimum_size 250 5 maximum_width 258 # Draw shades? draw_shades no # Draw outlines? draw_outline no # Draw borders around text draw_borders no # Stippled borders? stippled_borders 10 # border margins border_margin 4 # border width border_width 1 # Default colors and also border colors default_color white default_shade_color white default_outline_color white # Text alignment, other possible values are commented #alignment top_left #minimum_size 10 10 #alignment top_right alignment bottom_left #alignment bottom_right # Gap between borders of screen and text gap_x 12 gap_y 37 # Add spaces to keep things from moving about? This only affects certain objects. use_spacer no # Subtract file system buffers from used memory? no_buffers yes # set to yes if you want all text to be in uppercase uppercase no TEXT ${color #ddaa00}$nodename$color $sysname $kernel on $machine ${color lightgrey}Uptime:$color $uptime ${color lightgrey}- Load:$color $loadavg${color lightgrey} RAM Usage:$color $memperc% or $mem of $memmax${color lightgrey} Swap Usage:$color $swapperc%${color lightgrey} $color$stippled_hr${color lightgrey} Intel Xeon X3360 @ $color${freq_g} GHz${color lightgrey} (Vcc: ${execi 8 sensors | grep in0 | cut -c15-19} V) ${color black}${cpugraph 000000 5000a0}${color lightgrey} ${color lightgrey}Core0:$color ${execi 8 sensors | grep -A 1 'Core 0' | cut -c15-16 | sed '/^$/d'} °C${color grey} @$color ${cpu cpu1}% ${alignr}${cpubar cpu1 6,120} ${color lightgrey}Core1:$color ${execi 8 sensors | grep -A 1 'Core 1' | cut -c15-16 | sed '/^$/d'} °C${color grey} @$color ${cpu cpu2}% ${alignr}${cpubar cpu2 6,120} ${color lightgrey}Core2:$color ${execi 8 sensors | grep -A 1 'Core 2' | cut -c15-16 | sed '/^$/d'} °C${color grey} @$color ${cpu cpu3}% ${alignr}${cpubar cpu3 6,120} ${color lightgrey}Core3:$color ${execi 8 sensors | grep -A 1 'Core 3' | cut -c15-16 | sed '/^$/d'} °C${color grey} @$color ${cpu cpu4}% ${alignr}${cpubar cpu4 6,120}${color grey} $color$stippled_hr${color lightgrey} ${color grey} sda:$color ${execi 300 sudo hddtemp /dev/sda | cut -c25-26} °C ${color grey} sdb:$color ${execi 300 sudo hddtemp /dev/sdb | cut -c24-25} °C ${color grey} sdc:$color ${execi 300 sudo hddtemp /dev/sdc | cut -c34-35} °C ${color grey} GPU:$color ${execi 8 nvclock -T | grep 'GPU t' | cut -c21-22} °C ${color grey} M/B:$color ${execi 8 sensors | grep temp2 | cut -c15-16} °C ${color grey} NB:$color ${execi 8 sensors | grep temp3 | cut -c15-16} °C $color$stippled_hr${color lightgrey} ${color slate grey} /dev/shm: ${color }${fs_used_perc /dev/shm} % ${fs_bar /dev/shm} ${color grey}$stippled_hr${color light grey} ${color lightgrey}Processes:$color $processes ${color grey}Running:$color $running_processes ${color}Name PID CPU% MEM% ${color #ddaa00} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1} ${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2} ${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3} ${color}Mem usage ${color #ddaa00} ${top_mem name 1} ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1} ${color lightgrey} ${top_mem name 2} ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2} ${color lightgrey} ${top_mem name 3} ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}