1
0
mirror of https://github.com/Llewellynvdm/conky.git synced 2024-11-19 19:45:15 +00:00
Commit Graph

102 Commits

Author SHA1 Message Date
Arseny
e1a19b3093 Provide support to query the active port on PulseAudio's default sink (#405)
* Provide support to query the active port on PA's default sink

This commit exposes 2 objects:
- pa_sink_active_port_name
  (example value: "analog-output-headphones")
- pa_sink_active_port_description
  (example value: "Headphones")
that give respectively the name and description strings
for the active port on the default sink provided by PulseAudio.

* Reflect 9ed28f2a in the documentation
2018-01-19 09:03:06 -05:00
Guido Falsi
3a00680689 FreeBSD changes (#327)
* llabs() is included in FreeBSD since FreeBSD 5.0.

Oldest supported FreeBSD version is 9.3 now.

* stdio.h needs to be explicitly included here for FreeBSD.

I can wrap it in #ifdefs if needed, but I don't think it can hurt other OSes.

* addr config variable works fine on FreeBSD.

* FreeBSD 5.x is really an ancient version and long unsupported, so I think this check for it can be dropped.

* Fix and simplify code to get battery state and charge.

* Add required include on FreeBSD.

* Add needed include on FreeBSD.

* Also populate basename to avoid printing (null) process names.

Repored by fellow FreeBSD user Szabolcs Grof.
2016-10-04 09:47:57 +02:00
Matt Sturgeon
3753e2a95b Nvidia updates, docs and fixes (#278)
* nvidia: Update the docs and add more arguments

**Updated the docs in variables.xml to reflect the current nvidia object.**

Basically just copied the inline comments into the XML document

**Added the last of the compatible arguments**

The following arguments were added to `get_nvidia_barval`:

* memfree
* ambienttemp
* gpufreq
* memfreq
* mtrfreq
* imagequality

This should leave only incompatible arguments unsupported (e.g. min/max
values).

Decided to base percentages off of zero rather than the specified minimum
values.

Signed-off-by: Matt Sturgeon <matt@sturgeon.me.uk>

* nvidia: Better error/debug printing

* Merged `scan_nvidia_args` and `set_nvidia_type` into new
  `set_nvidia_query`
* Added a translation array for `nvidia`, `nvidiabar`, `nvidiagauge` and
  `nvidiagraph` commands (helps with error printing)
* Added some NORM_ERR prints to `get_nvidia_barval`, `get_nvidia_value` and
  `get_nvidia_string`
* Removed exess newlines in nvidia's core.cc error definitions

Signed-off-by: Matt Sturgeon <matt@sturgeon.me.uk>

* nvidia: Better sanity checks when running queries

Introduced a pair of functions that checks whether the target we are
querying exists and how many of the target there are.

If the target doesn't exist there probably isn't a nvidia card
installed, if the target count query fails then the propietary drivers
probably aren't installed.

Fixes #269

Signed-off-by: Matt Sturgeon <matt@sturgeon.me.uk>
2016-06-24 11:05:17 -07:00
Stephane Fontaine
587631a15b Add native support for pulseaudio. (#283)
* Add native support for pulseaudio.

This adds ability to get Pulseaudio current volume without calling an
external program. Also it provides a few other parameters like card's
current profile similarly to pavucontrol. Currently it only queries the
default sink (and associated card).

* Switch to pulse async API.

This us by far the most efficient as conky subscribe to a few pulseaudio
notifications. Whenever pulseaudio server changes (volume or default
sink or default card), conky's callback updates the results.
2016-06-24 07:17:20 -07:00
Toke Høiland-Jørgensen
0db823e56c Add systemd journal support. (#214)
This adds support for reading log entries from the Systemd journal. A
new command, called simply 'journal', is added which takes a number of
lines as a parameter and optionally which journal (user or system) to
read from.

Obviously, libsystemd is required to build journal support. Tested on
Arch Linux (Systemd v229).

Signed-off-by: Toke Høiland-Jørgensen <toke@toke.dk>
2016-05-06 07:25:30 -04:00
Jérôme Poulin
48122dcf82 Make conky resolve symlinks before using them. (#238)
* Make dev_name resolve symlinks before resolving the name.

- When symlinks are not resolved first, you will get an error on startup when
  using path in /dev/disk/by-id, for example, in diskiograph_*.

* Improve diskio device name resolution by always resolving symlinks.

- Any device path will be resolved of any symlinks before getting the usual
  checks for labels et device name.

* Check if diskio device is really a block device, not only if it exists.

- Current check would succeed in case the device is a path, like when using
  label: with an empty argument.
2016-05-03 08:04:14 -04:00
Matt Sturgeon
d8c659e7de nvidiabar, etc (#215)
* First experiment with $nvidiabar

Added nvidiabar, nvidiagraph and nvidiagauge. Using a dummy value of 50% for now until it is integrated with the nvidia value query functions.

* Implement get_nvidia_barval()

`get_nvidia_barval()` no longer returns a dummy "50%" but instead an actual value for supported arguments:

`gpuutil`, `memutil`, `membwutil`, `videoutil`,`pcieutil`, `fanlevel` and `gputemp`
2016-05-03 08:03:45 -04:00
Marc Payne
adae1f6293 Refactor the exec callback system
The main purpose of this commit is to ensure that exec callbacks are
registered at startup (or config reload), so that they have a chance to
run on the first update interval. Much of the code in exec.cc got
consolidated, making it easier to follow. Several checks for NULL
pointers should eliminate some obscure segfaults I noticed, as well.

During the refactoring, I implemented height and width arguments for
execbar and execgauge. The functionality was already there, but wasn't
being used. All this is accompanied by updates to the man page and
plenty of code comments.
2016-01-09 10:19:48 -07:00
rtoijala
f1a3542734 call get_cpu_count() when needed
get_cpu_count() is not called before trying to use cpus so conky exits with

conky: obj->data.i 1 info.cpu_count 0
conky: attempting to use more CPUs than you have!

Fixes issue #93.
2015-07-10 12:22:18 +03:00
eskerda
68263d4556 add support for $ibm_thinklight
Some IBM/Lenovo models come with a light on the top edge of the
display to illuminate the keyboard. This either reports 'on', 'off'
or 'unknown'.
2013-12-06 16:44:37 +01:00
Pavel Labath
5177c8d282 MPD: add mpd_albumartist (sf.net #3532376)
Adds mpd_albumartist support as an object since mpd_artist lists all participating artists of the
current song and not the main album artist.

patch by Sébastien Lavoie-Courchesne
2012-10-07 12:07:38 +02:00
Magliano Andrea
9268165d71 Usable state reached (use top.cc + minor changes)
* process* management left to top.cc
* compile with -Wall -Werror (lots of wasted time for stupid errors)
* unify find_process() and new_process(), as used always together

Signed-off-by: Pavel Labath <pavelo@centrum.sk>
2012-06-28 19:04:31 +02:00
Magliano Andrea
98196d0e6b Preliminary import from 2.8.1 git release
* 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>
2012-06-28 18:56:01 +02:00
Brenden Matthews
ddef05d4eb Update version, copyright. 2012-05-03 16:34:44 -07:00
Pavel Labath
be4854c6bb add mpd_date function that shows date for current track (sf.net #3440445)
patch submitted by Andrey Tikhonov
2012-01-29 21:14:19 +01:00
Christian Brabandt
354e577b15 Cmus support added to conky 2011-10-13 09:41:53 +02:00
Pavel Labath
f6b38df642 Remove SECRIT_MULTILINE_CHAR hack
Noone knows what it was supposed to do and removing it seems to fix sf.net #3411610 (and probably
a few others). If it turns out it was doing something useful, we will try to reintroduce it
without breaking other things.
2011-10-10 21:04:57 +02:00
Pavel Labath
17cf8517c3 Merge remote branch 'origin/master' into lua-config 2011-03-26 21:09:00 +01:00
Pavel Labath
f3dfb21859 Make mpd vars use the new update system 2011-03-26 19:35:11 +01:00
Pavel Labath
ba9be3fa18 Make moc vars use the new callback system 2011-03-26 19:35:11 +01:00
Pavel Labath
ad8dfc0853 Make audacious vars use the new update system 2011-03-26 19:35:03 +01:00
Pavel Labath
b96f112106 Make $exec et al. use the new callback system
I removed the code for automatic killing of stuck children, because (by admission of the person
who wrote it) it wasn't working. I also removed the $pre_exec variable, because one can use lua
to generate the config on the startup, if one wants to.
2011-02-27 22:43:32 +01:00
Pavel Labath
7cf37f7de0 Make $rss use the new callback system 2011-02-16 00:33:22 +01:00
Nikolas Garofil
6287b22a3d Add $v6addrs to increase IPv6 support
This is only the beginning of the ipv6 support,
This var isn't documented and only works on Linux.
It should also be patched to show the addresses in compressed format
Some other vars should also be added to see things like netmask, scope, routes, ...
2011-02-09 18:49:52 +01:00
Pavel Labath
fb81e3a9b3 Make $weather use the new callback system 2011-01-06 16:26:53 +01:00
Pavel Labath
b0deb283ec make $curl use the new callback system instead of timed_thread
ps: this breaks $rss and $weather, they need to be ported as well
2011-01-06 15:29:51 +01:00
Pavel Labath
87591f502e add a $memdirty variable
patch contributed by Piotr Karbowski (sf.net #3138195)
2011-01-04 14:48:33 +01:00
Pavel Labath
9d0932d711 Use the new callback system instead of add_update_callback() & co. 2010-12-31 13:39:54 +01:00
Nikolas Garofil
c93f9817cb Merge branch 'master' into lua-config 2010-11-23 18:50:48 +01:00
Nikolas Garofil
687407479f Make sure template_ in calc_cpu_total() can also be TMPL_LONGPROC 2010-11-23 18:50:40 +01:00
Nikolas Garofil
fcf318c6dd Fix bug with SF ID 3101185 (manual merge) 2010-11-20 17:18:34 +01:00
Nikolas Garofil
0ee557a4ee Fix bug with SF ID 3101185 2010-11-20 16:59:32 +01:00
Pavel Labath
ad79c87376 Merge remote branch 'origin/master' into lua-config
Conflicts:
	src/conky.cc
2010-11-16 22:55:33 +01:00
Nikolas Garofil
8123e447e2 Replace a CRIT_ERR in combine by trying,throwing and catching
PS: I want to replace all similar CRIT_ERR's like this, opinions ?
2010-11-16 13:41:44 +01:00
Nikolas Garofil
b5ff3eb411 Make lua required by cmake 2010-11-14 01:41:07 +01:00
Nikolas Garofil
e73da6b72e Fix compiling without X11 support 2010-11-13 23:59:31 +01:00
Pavel Labath
0852aa4fcd Merge remote branch 'origin/master' into lua-config
Conflicts:
	src/ccurl_thread.cc
	src/conky.cc
	src/llua.cc
	src/logging.h
	src/nvidia.cc
2010-11-13 20:05:59 +01:00
Nikolas Garofil
33db46cef1 Fix building without Imlib2 2010-10-30 17:44:33 +02:00
Pavel Labath
9f7e696a85 Remove the $include variable
the way it is implemented now just wont work with the new config file. And i don't think that
many people used it anyway. Maybe add a replacement later?
2010-09-15 23:34:47 +02:00
Pavel Labath
ef2b39a97f Make text_buffer_size a lua setting 2010-08-29 23:50:32 +02:00
Pavel Labath
a9893684ac Make max_user_text a lua setting 2010-08-29 20:01:05 +02:00
Pavel Labath
b5a4d899ab Make mysql_* lua settings 2010-06-22 01:34:55 +02:00
Pavel Labath
78ba5c2800 Merge remote branch 'origin/master' into lua-config
Conflicts:
	src/conky.cc
	src/conky.h
	src/top.cc
2010-06-20 19:09:13 +02:00
Nikolas Garofil
99fc975780 Add support for $wireless_freq 2010-06-07 10:50:02 +02:00
Nikolas Garofil
6ccde5e7e7 Add support for $wireless_channel (based on a patch by Timothy Ball) 2010-06-07 09:54:25 +02:00
Cesare Tirabassi
7a61fe8504 Fix battery_bar not parsing arguments correctly (sf: #2998034, lp: #569195) 2010-05-23 11:25:19 +02:00
Nikolas Garofil
40452c9712 Bugfix: $alignr only worked on the first line of $execp, $execpi, $lua and $lua_parse 2010-05-05 22:02:28 +02:00
Pavel Labath
f81c29a42d make out_to_ncurses a lua setting
this completes the porting of bool settings
2010-04-30 19:33:21 +02:00
Nikolas Garofil
3f7ecb3a26 Add support for $irc 2010-04-30 19:32:42 +02:00
Nikolas Garofil
a13c56a7a5 Add support for $ical 2010-04-27 16:42:21 +02:00