{ config, pkgs-unstable, lib, ... }: let luaMain = builtins.readFile ./main.lua; in { services.conky = { enable = true; package = (pkgs-unstable.conky.override { curlSupport = true; journalSupport = true; luaCairoSupport = true; luaSupport = true; pulseSupport = true; waylandSupport = true; x11Support = true; }).overrideAttrs (old: { buildInputs = old.buildInputs ++ [ pkgs-unstable.cairo pkgs-unstable.wayland pkgs-unstable.libGL pkgs-unstable.expat pkgs-unstable.xorg.libXfixes ]; }); # https://conky.cc/config_settings extraConfig = '' conky.config = { -- wayland out_to_wayland = false, out_to_x = true, own_window_class = 'conky', own_window_type ='override', own_window = true, own_window_transparent = true, own_window_hints = 'undecorated,sticky,below,skip_taskbar,skip_pager', double_buffer = true, alignment = "top_right", gap_x = 60, gap_y = 60, minimum_width = 400, minimum_height = 200, maximum_width = 400, -- Colors and fonts draw_shades = false, draw_outline = false, draw_borders = false, default_color = "white", default_shade_color = "black", default_outline_color = "black", color1 = "lightblue", -- Text use_xft = yes, font = "Liberation Mono:size=10", uppercase = false, -- Lua configuration lua_load = '${config.home.homeDirectory}/.config/conky/main.lua', lua_draw_hook_post = "conky_main" }; conky.text = [[ ]] ''; }; xdg.configFile."conky/main.lua".text = luaMain; }