Giter Site home page Giter Site logo

brndnmtthws / conky Goto Github PK

View Code? Open in Web Editor NEW
6.9K 170.0 597.0 20.92 MB

Light-weight system monitor for X, Wayland (sort of), and other things, too

Home Page: https://conky.cc

License: GNU General Public License v3.0

CMake 4.07% Python 1.17% Lua 0.24% C 4.96% C++ 84.74% Shell 0.22% Dockerfile 0.14% Objective-C++ 1.81% Vim Script 0.01% JavaScript 0.17% TypeScript 1.94% CSS 0.01% Jinja 0.10% Nix 0.10% MDX 0.33%
conky imlib2 cairo lua c-plus-plus system-monitoring linux wayland

conky's Introduction

Hello and welcome to my GitHub profile! ✨

I've been building open source software for quite some time, and here you'll find many of my projects. A copy of my résumé can be found here.

Code Like a Pro in Rust

My first Rust programming book, Code Like a Pro in Rust, is available for purchase from Manning.

Rust Design Patterns

My second Rust programming book, Rust Design Patterns, is also available for purchase from Manning's early access program:

DOTD_NewMEAP_Matthews

Business inquiries

If you'd like to contact me about business inquiries, such as investment opportunities, speaking engagements, or consulting, I can be reached from the contact details in my GitHub profile.

conky's People

Contributors

alexapps99 avatar bi4k8 avatar billie80 avatar brightkill avatar brndnmtthws avatar caellian avatar caiofreitaso avatar dependabot[bot] avatar hifi avatar isaacnugroho avatar jchnkl avatar labath avatar lasers avatar livanh avatar madpilot78 avatar marcpayne avatar mithil467 avatar mmuman avatar mxmlnkn avatar ncopa avatar ngaro avatar ntarmos avatar pghvlaans avatar randy1 avatar simotek avatar stdedos avatar su8 avatar tomunu avatar troxor avatar vincent-c avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

conky's Issues

Add option to escape variables for JSON

The specific use case is for output to i3bar, which accepts JSON objects for colour coding and item separation. i3bar will balk when presented with improper JSON strings.

My proposal is for an option to be added that would cause all printed variables to be piped through a JSON encoder for escaping. Something like escape_json yes, or use_json yes, perhaps.

can't build conky with --disable-ncurses

I get the following error, which gets fixed by using --enable-ncurses:

gcc -DHAVE_CONFIG_H -I. -DSYSTEM_CONFIG_FILE="/etc/conky/conky.conf" -DPACKAGE_LIBDIR="/usr/lib/conky" -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -I/usr/include/lua5.1 -I/usr/include/freetype2 -Wall -W -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -MT conky-conky.o -MD -MP -MF .deps/conky-conky.Tpo -c -o conky-conky.o test -f 'conky.c' || echo './'conky.c
conky.c: In function ‘generate_text_internal’:
conky.c:885:7: error: unknown type name ‘bool’
static bool warned = false;
^
conky.c:885:28: error: ‘false’ undeclared (first use in this function)
static bool warned = false;
^
conky.c:885:28: note: each undeclared identifier is reported only once for each function it appears in
conky.c:890:17: error: ‘true’ undeclared (first use in this function)
warned = true;
^
make[2]: *** [conky-conky.o] Error 1
make[2]: Leaving directory /home/wujek/Playground/src/conky-1.9.0/src' make[1]: *** [all] Error 2 make[1]: Leaving directory/home/wujek/Playground/src/conky-1.9.0/src'
make: *** [all-recursive] Error 1

Substitute for $pre_exec for 2.0.0pre and higher?

Well, I've just encountered by testing my fresh build with some old .conkyrc config files, that $pre_exec got removed at some point.
Why, actually?

$exec and friends do NOT do what I want, because I really only want to execute a certain shell command ONCE.
And $pre_exec was perfect for this task. So I wonder why the decision got made to remove a great feature that has been implemented since 2004.

Executing certain X applications causes '(null)' to be printed on screen

Hi, just found a bug in latest conky, which probably was there in previous versions as well.

Here's my .conkyrc, stripped down to the max:

double_buffer yes
own_window yes
own_window_class Conky
own_window_hints undecorated,sticky # ,skip_taskbar
own_window_transparent yes

background yes
total_run_times 0

use_xft yes
xftfont Bitstream Vera Sans:size=7
xftalpha 0.85
override_utf8_locale yes

minimum_size 150
maximum_width 480

border_width 1

uppercase no

TEXT

${texeci 6000 /usr/bin/xclock}

--other conky stuff goes here---

And it's not the interval that causes this. Happens with 600, 6k and 60k likewise.
xclock itself executes very well in threaded mode and (unlike with $pre_exec, $exec, $execi, $execp) it will not block conky from appearing.

Just this '(null)' is a bit disturbing, to put it mildly. Wish I knew what triggers this, and why.
Surely it is not any kind of stderr output (tried 2>/dev/null to no avail).

if_match compare fails if locale uses "," as decimal mark

From my log:

conky: Bad arguments: '0,0 ' and ' 10.0'
conky: compare failed for expression '0,0 < 10.0'

These compares are all similar to this one:

${if_match ${downspeedf enp2s0} < 100.0}

The compare still fails if the argument is written with ",". Explicitly setting conky's locale to en_US.UTF-8 works for now.

(This didn't happen in 1.9.0.)

Conky on dual screens, doesn't display properly

I'm running Ubuntu 13.10 with Kernel 3.12 (Linux zot 3.12.0-031200-generic #201311031935 SMP Mon Nov 4 00:36:54 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux)

The computer is a laptop, ASUS N550JV-DB72, quad core i7, intel 4th gen graphics (not using the on board nVidia chip). The computer has an HDMI out which the Intel graphics is driving just fine. I have an external 23in 1080p HDMI monitor hooked up and the main screen is also 1080p.

Sometimes when I fire up Conky it fails to display anything.

Other times, it will display properly and then the very next display the positioning will move (possibly a double buffering issue?).

I will attach configurations as other submissions later today.

execi timeout

If my device hibernated, some script will not exexuted after powerup.
May be every global update tick we need to check last update time?

Could not connect hddtemp host

I've had conky work properly with hddtemp before I reinstalled the OS (CrunchBang with Debian testing repos), and this time it doesn't work at all, even with the same settings.
I've tried with the default interface and port, also specifying custom values for those two (and I changed that in the conky config file too), made sure that I have the right permissions on /usr/sbin/hddtemp (I can see the temp values without any root privileges or a sudoer), and made sure that the daemon is running.
Here's the relevant part of conky:
HDD1:${alignr}${hddtemp /dev/sdb}°C
HDD2:${alignr}${hddtemp /dev/sda}°C

Any help would be appreciated

Crash when MPD is stopped

Conky segfaults when MPD is stopped.

To reproduce,

  1. Have conky configured with ${mpd_*} sections, and MPD started
  2. Stop the MPD service
  3. Conky crashes

Conky exit with "you don't need that many fonts" message

Depending of your configuration, sometimes Conky exit after a random time with the message "you don't need that many fonts, sorry". This occurs when Conky try to use more than 256 fonts (see fonts.c line 73).

Except if you really use more than 256 fonts, this is a bug occurs when you have fonts objects placed after a ${if} block.

Exemple :
${if_match ${upspeedf eth0} > 0}${color2}${endif} ${font PizzaDude Bullets:size=10}O${font}

In this case Conky will allocate too much fonts along the time. Each time the ${if} condition change (true -> false or false -> true) the index of the font object (stored in the "specials" array defined in specials.c) will change and conky will reallocate a new font object (specials.c, function new_font(), line 341). The reason is that s->font_added is set to zero because the font object has been shifted by -1 or +1 in the specials array.

There is a workaround to this issue, but really possible only if you have only a few objects in the ${if} block. The solution consist to add an ${else} block and pad it with dummy objects. Exactly the same number you have in the ${if} block !

${if_match ${upspeedf eth0} > 0}${color2}${else}${color1}${endif} ${font PizzaDude Bullets:size=10}O${font}

In this case Conky will not allocate extra fonts along the time.

I will try to work on a patch for this issue but help will be appreciate :)
And sorry for my English...

segv on missing mailfile

If a .conkyrc file uses

TEXT
${new_mails}

I get a segv with conky 1.9.0

*** Error in `/usr/bin/X11/conky': double free or corruption (fasttop): 0x00000000009bc9b0 ***

I also get the segv if I use

mail_spool /path/to/my/mail/file
TEXT
$new_mails

It works if I use

${new_mails /path/to/my/mail/file}

or

mail_spool /path/to/my/mail/file
TEXT
${new_mails}

Have a nice day

This issue is for brenden to have a nice day. When brenden has at least one nice day, he may mark this issue as resolved.

master branch fails when "border_inner_margin = 0, border_outer_margin = 0, and border_width = 0".

The master branch fails with

conky: desktop window (201) is root window
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  1 (X_CreateWindow)
  Value in failed request:  0x0
  Serial number of failed request:  1303
  Current serial number in output stream:  1308

when

border_width = 0 

is used in conky.config.

I believe this is because it is trying to create the initial window with dimensions of 0x0 which is not allowed by X.

iconv error causes docbook2x to fail when building docs from xml source

This is what I just got with the following line:
my@lubuntubox:~/test2/conky/doc$ docbook2x-man docs.xml

/usr/bin/iconv: illegal input sequence at position 7781
/usr/bin/db2x_manxml: program in pipeline exited with an error

I dunno why it complains.
FWIW, here's my version list:

docbook-xml 4-5-7.2
docbook-xsl 1.78.1+dfsg-1
docbook2x 0.8.8-9

[RFC] cycles for i in ...

Good time of day, i have a config with code:
Disk I/O sdc: ${diskio /dev/sdc}${hr 2}
${diskiograph /dev/sdc}
Disk I/O sdd: ${diskio /dev/sdd}${hr 2}
${diskiograph /dev/sdd}
Disk I/O sr0: ${diskio /dev/sr0}${hr 2}
${diskiograph /dev/sr0}

this is very similar code and i think if conky have cycles, like for, it can be written like:
${for i in /dev/sdb /dev/sdc /dev/sdd /dev/sr0}
Disk I/O $i: ${diskio $i}${hr 2}
${diskiograph $i}
$endfor

What you think about it?

Empty space in ${wireless_link_qual_perc}

Hi there,

I am using the following variables in my output:

Wifi: [${wireless_essid wls1}] [${wireless_link_qual_perc wls1}%] \

As you can see from the below screenshot, the above code is producing a space before the 44%.

screenshot

Any ideas where this empty space is coming from?

conky 1.9.0-4
Arch Linux 64-bit

Font's Don't Change/Render Correct In 1.9.0

I use Slackware64 and in 14.0 Conky 1.9.0 worked great. I just recently did a fresh install to upgrade to 14.1 and now Conky does not render the fonts correct, meaning if it's a LIGHT font it still appears as bold, I don't know why they always appear now bold...

Slackware 14.1 uses xorg-server-1.14.3

Here's the config I'm playing with you can download at Dropbox;

https://www.dropbox.com/s/5g05bgafmo48ph9/conkyrc-stats.dk.zegoe

In the config you'll notice the font 'Aller Light' which should appear as a 'Thin looking font', however if I wanted a more thick/bold looking font then I'd write it as 'Aller', but even though I'm using it as 'Aller Light' the output appears as Aller on the desktop, bold...

I've tried using several font names and they all appear now bold too...

Thanks...

Invalid value of type 'table' for setting 'double_buffer'. Expected value of type 'boolean'.

$ conky -DD --double-buffer
DEBUG(0) [/tmp/makepkg/conky-git/src/conky/src/conky.cc:2671]: reading contents from config file '/home/emacs/.conkyrc'
conky: desktop window (1200003) is subwindow of root window (2b7)
conky: window type - desktop
conky: drawing to created window (0x2a00001)
conky: Invalid value of type 'table' for setting 'double_buffer'. Expected value of type 'boolean'.
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:1913]: no templates to replace
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:1913]: no templates to replace
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:576]: Adding $cpu for CPU 0
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:588]: Adding $cpubar for CPU 0
^Cconky: received SIGINT or SIGTERM to terminate. bye!

but this works:
$ conky -DD
DEBUG(0) [/tmp/makepkg/conky-git/src/conky/src/conky.cc:2671]: reading contents from config file '/home/emacs/.conkyrc'
conky: desktop window (1200003) is subwindow of root window (2b7)
conky: window type - desktop
conky: drawing to created window (0x1c00001)
conky: drawing to double buffer
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:1913]: no templates to replace
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:1913]: no templates to replace
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:576]: Adding $cpu for CPU 0
DEBUG(1) [/tmp/makepkg/conky-git/src/conky/src/core.cc:588]: Adding $cpubar for CPU 0

Using this config ~/.conkyrc:

conky.config = {
    alignment = 'top_left',
    background = false,
    border_width = 1,
    cpu_avg_samples = 2,
  default_color = 'white',
    default_outline_color = 'white',
    default_shade_color = 'white',
    draw_borders = false,
    draw_graph_borders = true,
    draw_outline = false,
    draw_shades = false,
    use_xft = true,
    font = 'DejaVu Sans Mono:size=12',
    gap_x = 5,
    gap_y = 60,
    minimum_height = 5,
  minimum_width = 5,
    net_avg_samples = 2,
    no_buffers = true,
    double_buffer = true,
    out_to_console = false,
    out_to_stderr = false,
    extra_newline = false,
    own_window = true,
    own_window_class = 'Conky',
    own_window_type = 'desktop',
    stippled_borders = 0,
    update_interval = 1.0,
    uppercase = false,
    use_spacer = 'none',
    show_graph_scale = false,
    show_graph_range = false
}

conky.text = [[
${scroll 16 $nodename - $sysname $kernel on $machine | }
$hr
${color grey}Uptime:$color $uptime
${color grey}Frequency (in MHz):$color $freq
${color grey}Frequency (in GHz):$color $freq_g
${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4}
${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4}
${color grey}CPU Usage:$color $cpu% ${cpubar 4}
${color grey}Processes:$color $processes  ${color grey}Running:$color $running_processes
$hr
${color grey}File systems:
 / $color${fs_used /}/${fs_size /} ${fs_bar 6 /}
${color grey}Networking:
Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0}
$hr
${color grey}Name              PID   CPU%   MEM%
${color lightgrey} ${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 lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4}
]]

tested with commit c35c852 :

conky  -V
conky 2.0.0_pre compiled Wed Feb 18 00:54:36 CET 2015 for Linux 3.19.0-gbfa76d49 x86_64

Compiled in features:

System config file: /etc/conky/conky.conf
Package library path: /usr/lib/conky


 General:
  * math
  * hddtemp
  * portmon
  * Curl
  * RSS
  * Weather (METAR)
  * Weather (XOAP)
  * wireless
  * support for IBM/Lenovo notebooks
  * builtin default configuration
  * old configuration syntax
  * Imlib2
  * apcupsd
  * iostats
  * ncurses
  * Internationalization support
 X11:
  * Xdamage extension
  * Xft
  * ARGB visual
  * Own window

 Music detection:
  * MPD
  * MOC

 Default values:
  * Netdevice: eth0
  * Local configfile: $HOME/.conkyrc
  * Localedir: /usr/share/locale
  * Maximum netdevices: 64
  * Maximum text size: 16384
  * Size text buffer: 256

MPD: mpd_percent division by zero

When MPD plays a track with unknown length, it says, that track has a length of 0. This happens for example when playing back a radio icecast stream. This causes division by zero on this line as status->totalTime will be 0:

    if (status->state == MPD_STATUS_STATE_PLAY ||
        status->state == MPD_STATUS_STATE_PAUSE) {
        mpd_info.is_playing = 1;
        mpd_info.bitrate = status->bitRate;
        mpd_info.progress = (float) status->elapsedTime /
            status->totalTime; // <-- here
        mpd_info.elapsed = status->elapsedTime;
        mpd_info.length = status->totalTime;
    } else {
        mpd_info.progress = 0;
        mpd_info.is_playing = 0;
        mpd_info.elapsed = 0;
    }

Currently (tested with conky-1.9.0) when using the ${mpd_percent} variable, it will print 2147483648%.

I suggest to change the line to test whether totalTime is 0, like this:

mpd_info.progress = (float) (status->totalTime == 0) ? 0 : (status->elapsedTime / status->totalTime);

EDIT: Updated line link to refer to specific commit.

$scroll works strange with Cyrillic text

Version: Conky 1.9.0 compiled Fri May 10 23:14:47 UTC 2013 for Linux 3.2.0-37-generic (x86_64) on Linux Mint 16 MATE.

When I try put Cyrillic text in $scroll then every next letter become space on 1 second and move left. I looks really strange. When text come to left edge it starts to blink.

To see this, just add "${scroll 30 Кирилический текст}" in .conkyrs

No connection speeds with kernel 3.10

The same conky script which I've been using for years now only yields "0.0"/"0B" for down/upspeed[f].

It had still worked with kernel 3.9. Other than that kernel updated nothing relevant changed.

SIGABRT in generate_text_internal / check_mpd_playing

Getting this crash seemingly at random. Sometimes conky runs stable for hours, sometimes just minutes. I'm on Arch Linux x64, conky was compiled with gcc 4.9.2.

> Program received signal SIGABRT, Aborted.
> # 0  0x00007f77ffd80a97 in raise () from /usr/lib/libc.so.6
> # 1  0x00007f77ffd81e6a in abort () from /usr/lib/libc.so.6
> # 2  0x00007f77ffdc02b3 in __libc_message () from /usr/lib/libc.so.6
> # 3  0x00007f77ffdc572e in malloc_printerr () from /usr/lib/libc.so.6
> # 4  0x00007f77ffdc5eeb in _int_free () from /usr/lib/libc.so.6
> # 5  0x00000000004589b0 in _M_dispose (__a=..., this=<optimized out>) at /usr/include/c++/4.9.2/bits/basic_string.h:249
> # 6  ~basic_string (this=0x7fff9493bd88, __in_chrg=<optimized out>) at /usr/include/c++/4.9.2/bits/basic_string.h:547
> # 7  ~mpd_result (this=0x7fff9493bd60, __in_chrg=<optimized out>) at src/mpd.cc:122
> # 8  check_mpd_playing (obj=<optimized out>) at src/mpd.cc:389
> # 9  0x0000000000424959 in generate_text_internal (p=p@entry=0x1f4e690 "", p_max_size=16384, root=...) at src/conky.cc:845
> # 10 0x0000000000425e95 in generate_text () at src/conky.cc:912
> # 11 update_text () at src/conky.cc:2010
> # 12 main_loop () at src/conky.cc:2388
> # 13 0x000000000041ea58 in main (argc=3, argv=0x7fff9493c358) at src/conky.cc:3139

The relevant lines from my config:

> mpd_host localhost
> mpd_port 6600
> music_player_interval 4
> ${if_mpd_playing}[${mpd_elapsed}/${mpd_length}] ^fg(#F3F2DD)${mpd_smart 57}^fg()$endif

Worth noting that most of the time no instance of mpd is actually running.

FreeBSD $diskio memory fix

In FreeBSD, memory leak is caused by $diskio related variables.

function "update_diskio" in src/freebsd.c

"free(statinfo_cur.dinfo);" is wrong.

"free(statinfo_cur.dinfo->mem_ptr);" is right.

Conky on dual screens, doesn't display properly

I'm running Ubuntu 13.10 with Kernel 3.12 (Linux zot 3.12.0-031200-generic #201311031935 SMP Mon Nov 4 00:36:54 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux)

The computer is a laptop, ASUS N550JV-DB72, quad core i7, intel 4th gen graphics (not using the on board nVidia chip). The computer has an HDMI out which the Intel graphics is driving just fine. I have an external 23in 1080p HDMI monitor hooked up and the main screen is also 1080p.

Sometimes when I fire up Conky it fails to display anything.

Other times, it will display properly and then the very next display the positioning will move (possibly a double buffering issue?).

I will attach configurations as other submissions later today.

background not immediately updated to new desktop wallpaper

When starting conky in an environment without a composite manager, it will use "fake transparency" and just use the current desktop background. When changing the desktop background, conky does not immediately update its background. It would be nice if conky would update the background when a property notification event is fired for _XROOTPMAP_ID or _XROOTMAP_ID (tint2 also uses that approach).

I attached a patch against the 1.9.1 and the 1.9.0 branch, which can be applied using git am if desired.

conky-1.9.1+background-change-fix.patch

conky-1.9.0+background-change-fix.patch

argb and $image

I am surprised that to this day no one solved this problem. Are there any chances of it getting solved any time soon?

cmake cannot find freetype path on Ubuntu & flavors

Hi,

this "bug" (note the quotes) prevented git tree (master) from compiling here (Lubuntu), claiming I had no freetype installed, which was untrue. Anyways, the original path might still be correct for other distros after all.)

find_path(freetype_INCLUDE_PATH freetype/config/ftconfig.h ${INCLUDE_SEARCH_PATH}

(cmake/ConkyPlatformChecks.cmake, Line 208)

This had to be changed to
find_path(freetype_INCLUDE_PATH config/ftconfig.h ${INCLUDE_SEARCH_PATH}

and it compiled OOTB.
Thanks for this great piece of software.


P.S: I hope that I'll soon be able to save lots of time once 1.9.1 is finally officially available for 'Buntu. It's not even in the PPAs, and just this mere bunch of lines do make it necessary to update: https://github.com/brndnmtthws/conky/pull/16/files .
It's a fact that udev & static physical device names will never be friends, mainly due to udev's asynchronous behavior ;)

Conky doesn't display units in the International System of Units (SI)

It is known that units come in two flavors: SI units (powers of 10) and binary units (powers of 2). Is there a way so that Conky can select which one to use? like in a config setting? I know there's a method to convert bytes to the human readable form (format_human_readable), you can use this together with a setting like (possibly) use_si_units yes|no to use powers of 10 instead of 2 (that is, divide by 1000 instead of by 1024). I hope you can take this into account or else, how can I submit this as a patch? (I'm new to github).

painting images from imlib2 with cairo

I noticed there is some new functionality to paint images from imlib2 with cairo. I build conky today from master and it seems not to work properly, or I'm doing things wrong. When I scale an image down, the transparency in png or gif does not work and the background is black. If I scale a png up, I get quite a few funny artifacts.
Also, the new function as of now just allows to paint an image with full opacity, I think. It would be much better to allow users to set custom transparency as well. Actually, the best thing would be to allow the call:
local surface = cairo_image_surface_create_for_data(imlib_image_get_data_for_reading_only(), ..
to work fine. Currently I always get the errors that argument #1 is userdata but should be string - I guess that's because the cairo functions takes unsigned char* and tolua++ needs a string there? (I guess that's the main reason for the function, but I am not sure.) As I have little idea about c or c++, even less about lua and don't know nothing about tolua++, I am not sure if this is doable.

start with 'conky -b' crashed

conky: desktop window (26c) is root window
conky: window type - desktop
conky: drawing to created window (0x2200002)
conky: drawing to double buffer
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 62 (X_CopyArea)
Serial number of failed request: 448
Current serial number in output stream: 450

Double monitor - different sizes - gap_y incorrectly

Hi,

I have two monitors, one in vertical with height of 1280, one normal with height of 1024.

When I set conky to show in that monitor, gap_x works as expected, gap_y no.

It seems that gap_y takes care of the first one monitor (height 1024).. so the result is more padding than expected.

Here I set gap_y = 20
screenshot from 2015-06-18 08 14 16

The problem does not occur only if I run conky from a terminal that's placed in the 1024h.

If move terminal on the vertical one 1280h (where gap_x refers to), everything is right.

Enhancement request: Support for backslash in template definitions

This request can be worded in a brief summary:

Currently, you must squeeze everything into one SINGLE LINE in template defininitions for them to work. (feels a bit like ancient CBM BASIC times :))

This is why I'd like to request the support for the backslash, so templates can be defined multi-line and (in particular the complex ones) can be more easily expanded and, if necessary, debugged.
Thanks for considering.

Can't set more than one font with transparency

It would be great if we could use transparency for each font independently, something like this:

${font Bitstream Vera Sans Mono:size=40:xftalpha=0.3}${time %M}
${font Droid Sans Mono:size=10:xftalpha=0.5}${time %S}

Conky 2.0.0 own_window_argb_visual = true causes X Error

Output of conky -v

conky 2.0.0_pre compiled Wed Jul  2 18:53:50 BST 2014 for Linux 3.2.0-4-amd64 x86_64

Compiled in features:

System config file: /etc/conky/conky.conf
Package library path: /usr/local/lib/conky


 General:
  * math
  * hddtemp
  * portmon
  * IPv6
  * support for IBM/Lenovo notebooks
  * builtin default configuration
  * old configuration syntax
  * apcupsd
  * iostats
  * ncurses
  * Internationalization support
 X11:
  * Xdamage extension
  * Xft
  * ARGB visual
  * Own window

 Music detection:
  * MPD
  * MOC

 Default values:
  * Netdevice: eth0
  * Local configfile: $HOME/.conkyrc
  * Localedir: /usr/local/share/locale
  * Maximum netdevices: 64
  * Maximum text size: 16384
  * Size text buffer: 256

Conky config:-

conky.config = {
    alignment = 'top_right',
    --background = true,
    use_xft = true,
    font = 'LMMono10 Regular:size=10',
    xftalpha = 1,
    cpu_avg_samples = 2,
    default_color = 'ffffff',
    default_outline_color = 'white',
    default_shade_color = 'white',
    double_buffer = true,
    draw_borders = false,
    draw_graph_borders = true,
    draw_outline = false,
    draw_shades = false,
    gap_x = 12,
    gap_y = 35,
    minimum_height = 5,
    minimum_width = 5,
    net_avg_samples = 2,
    no_buffers = true,
    out_to_console = false,
    out_to_stderr = false,
    extra_newline = false,
    own_window = true,
    own_window_type = 'desktop',
    own_window_argb_visual = true,
    own_window_transparent = true,
    own_window_colour = 'ffffff',
    stippled_borders = 0,
    update_interval = 1.0,
    uppercase = false,
    use_spacer = 'none',
    show_graph_scale = false,
    show_graph_range = false
}

This set up causes the following output:-

X Error of failed request:  BadMatch (invalid parameter attributes)                                                  
  Major opcode of failed request:  62 (X_CopyArea)                                                                   
  Serial number of failed request:  1074                                                                             
  Current serial number in output stream:  1077

Commenting out the own_window_argb_visual = true, line causes conky to render properly, except that own_window_colour = 'ffffff', has no effect, it always shows with a black background.

How can I make the conky window transparent, or at least change its background colour?

keep horizontal position on multi line ${exec ...} output

Hi,

When I change the horizontal position with ${goto xyz} and do an ${exec} then which prints multiple lines, only the first line is on its horizontal position. All lines below it are on positon 0.

I think this is a bug and It would be great to see a fix for this.

Kind Regards,
Michael

Add option for selecting nVidia device

I have a few machines that have multiple GPU's, but conky only queries the first one (device 0). Running a lot of CUDA code and BOINC projects, being able to see the clock speeds and temperatures of both cards would be a lot more helpful.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.