Docket-lite is a Python script that makes a dynamic schedule for Conky.
It's a less powerful version of my Rainmeter skin.
Here's a demo of the vertical layout:
Here's a demo of the horizontal layout:
Of course, you're going to need Conky. If you don't already have it, you can check out its wiki.
The script itself is in Python, which is preinstalled on most distros.
If you're on an Ubuntu-based distro, like I am, they're both easy to install using apt:
sudo apt install conky
sudo apt install python3Download from the releases tab and unpack, or clone this repo:
git clone https://github.com/ChuseCubr/Docket-lite.git Modify schedule.csv to your needs. See the example schedule.csv for reference.
- Times must be in a 24-hour format.
- If you'd like to use the ISO format (Sunday as the first day of the week), please see the configuration section.
Then run the start_all.sh script that will run terminals for:
- Docket (script that will update the schedule conky)
- A conky instance for the schedule
- A conky instance for the weekday/week counter
Make sure to edit the path in the start_all.sh:
## start_all.sh
# change this to your install path
path_to_docket="$HOME/Docket-lite"You can also run the Docket script on its own through start.py.
Configuration is done mainly through the main conky config (conky-docket.conf by default)
Here, you can configure the script settings:
--- conky-docket.conf
-- how often to check time (in seconds)
refresh = 5
-- first day of the week is sunday
iso_week = falseThe schedule layout:
--- conky-docket.conf
-- stack subjects vertically
vertical_layout = true
-- spacing between subjects in vertical mode
vertical_spacing = 2
-- spacing between subjects in horizontal mode
horizontal_spacing = 200
-- only works in vertical mode
right_align = falseAnd the schedule styles:
--- conky-docket.conf
docket_styles = {
upcoming_color = '9999AA',
ongoing_color = 'DDEEFF',
completed_color = '555577',
upcoming_font = 'Fira Sans:size=20',
ongoing_font = 'Fira Sans Bold:size=20',
completed_font = 'Fira Sans:size=20',
time_color = '777799',
time_font = 'Fira Sans:size=12',
-- for positioning
time_voffset = -15,
time_offset = 3,
}You can also configure the file paths and toggle logging through start.py using kwargs:
# start.py
docket = Docket(
conky_path = "conky-docket.conf",
schedule_path = "schedule.csv",
log_to_file = True,
log_path = "docket.log")The week counter can be configured in the week counter config (conky-day.conf by default):
--- conky-day.conf
-- change `-11` in `${execi 60 expr $(date +%V) + -11}` to suit your needs ---↴
conky.text = [[
${alignr}${color}${font Fira Sans:size=40}Week ${execi 60 expr $(date +%V) + -11}
${alignr}${voffset -30}${font Fira Sans:size=20}${time %A}
]]