* Try to amend #31
* BUILD_WLAN should be available for all OS.
Keep BUILD_WLAN OFF by default for compatibility reasons.
* WLAN-related variables should be available for every OS.
There are some problems (probably null-dereference)
* Fix $wireless_essid crashing conky if no argument provided.
Conky wasn't parsing the argument of the variable as it should, thus wasn't allocating the `dev` member variable.
Also fix some documentation stuff.
* Improve `get_freq` #20
Using the Intel® Power Gadget API (https://software.intel.com/en-us/blogs/2012/12/13/using-the-intel-power-gadget-api-on-mac-os-x) we can now get actual Core frequency and not the constant factory one.
Though, for some weird reason the API gives the same freq for all Cores, thus the |cpu| arg becomes useless.
* Oops, this accidently slipped in
* Introduce BUILD_IPGFREQ build option
This build option has been introduced for one particular reason:
On macOS getting current core-frequency is not supported by the APIs. A solution is to install Intel's ® Power Gadget which comes with an .app, a Framework and a kernel-extension. Though, this may trouble some alot, thus introduce BUILD_IPGFREQ.
* Forgot static here.
* Some improvements for get_freq again.
Fix frequency not printing correctly (I wasn't using the divisor)
Add more guards.
* Setup cmake files and project code for Objective-C code #17
We want to use CoreWLAN framework.
* update_cpu_usage() now supports multiple cores
Also, some cleanup.
* Updated default conky config to monitor Mac Networking
* Made Mac Friendly BuildOptions and generic default conky configs
* Undid Xdamage config and cleaned up previous IF statements
* Re-Added XDamage fix
* Finish up the algorithm. I think its now correct. Closes: #33
* Cleanup macro and introduce a no-op free_cpu() function for ALL cpu-related variables
free_cpu() must be implemented for every OS and on all except macOS its a no-op function.
* Reformat, add empty comment.
* don't use kvm_* calls, just sysctl (so no suid perm necessary)
* sysctls calls in general aren't thread safe, collapse callbacks
using same sysctls (specifically total/running procs and proc list
ones).
Some sysctls need two calls (first to get size of obj returned,
second to get object self); if different threads use this schema
on same sysctl, weird values are returned (first/second calls
sequence should be serialized).
In general it makes not much sense too having more threads that use
the same sysctl; just get info once and populate all data.
* add DragonFly specific extended uname string ($version in conky.conf)
with git version and signature
Todo:
- top process list logic is old style, use top.cc funcs.
- find a solution for cpu freq
Signed-off-by: Pavel Labath <pavelo@centrum.sk>
Linux-specific code in top.cc was moved to linux.cc.
Redundant code (e.g. the parts sorting by CPU usage, CPU time or memory
usage) was removed. Sorting etc. happens in top.cc, whilst
platform-dependent code in linux.cc, freebsd.cc or openbsd.cc just
builds up the process table.
In the Linux code, some functions had a return value which was never
evaluated. They return void now.
I tested it on FreeBSD and Linux; The OpenBSD port does not compile
anyway. I changed the OpenBSD parts, too, so that it will be less
effort to get conky working under OpenBSD.
Signed-off-by: Alexander Graf <agraf@znc.in>
I've added $memwithbuffers to complement $mem, $memeasyfree, etc. This
variable indicates the used system memory, regardless of buffers/caches. If
the "no_buffers" option is set to "no", it will be the same as $mem. The
reason I find this change useful is that I like to display both the total
used system memory and the memory being used by applications.
I've also included a memwithbuffersbar, which is the same as membar except
that it uses $memwithbuffers as the size instead of $mem.
Signed-off-by: Pavel Labath <pavelo@centrum.sk>
- kill trailing whitespace (grep -n ' $' src/*.{c,cc,h})
- eliminate space before tab (grep -n ' ' src/*.{c,cc,h})
(insert tab by pressing CTRL-v first)
- little indenting fixup in configure.ac.in (we indent using tabs, not
spaces)
note: this should not change the actual code at all - if it does, feel
free to blame me personally ;)