a poor man's clock
This is a simple analog clock for Linux/UNIX based on xlib and cairo.
and as root:
Some basic options to
configure are provided. Run
You will have to manually move
$HOME/.config for it to be recognised.
pmck from the command line, it needs no options. It will read an rc file
~/.config/pmckrc to set different features. There is an example rc file
provided. This should be self explanatory. You can set the size, background
and foreground colours and the style, 4 to choose from, including plain numbers(0 and default),
Roman numerals (1), markings only (2) or even the classic Swiss SBB face (3).
New "deco" 0 to 3, for modern, fancy, classic and SBB hand styles.
You can autostart it if you wish. See your distro's documentation for this feature.
On some window managers the root window is not the desktop window. In the case
of ROX-Filer pinboard this is easily overcome by finding the child window which
is "ROX-Pinboard", which in most cases is the very first child. To address this
limitation I have added code to find the true desktop.
pmck now comes
with a header file
pmdesktop.h with the funtion in
pmdesktop.c. In the future
a shared library named
libpmdesktop.so with it's static counterpart
will become available. As time permits I will utilise this library for other projects.
So far this is tested with JWM, JWM + ROX-Filer, Fluxbox, XFCE,
WindowMaker, Blackbox, TWM, LXDE, MATE and KDE.
It works, with issues, in Cinnamon and Gnome.
If finding the desktop fails it can be overcome by 1 single option to the
command line; the desktop window ID which can be found by running
clicking on a blank part of the desktop. The string will be a hex value something
0x400066. Just type (or script)
pmck $hex_value_here. This should work
with any other WM/DE also as it overrides the internal algorithm.
pmck now comes with an optional library. It is built
statically by default, all extra code is included in
The library, pmdesktop is available, with the intent of future desktop programs to be developed.
- disclaimer: statically only refers to
libpmdesktop. All other depends are dynamically linked
- can flicker at times of heavy load or on slow machines
- may have jagged edges which may or may not be improved with an antialias setting in pmckrc.
- may be slow to refresh after being uncovered by another window (less than 1 second)
Please report all bugs here for now.